19 "includes all terms NOT dependent on chemical potential.");
23 "Phase concentrations. The order must match Fa, Fb, and global_cs, for example, c1, " 26 "fb_name",
"Free energy function Fb (fa_name is in the KKSACBulkBase).");
27 params.
addParam<MaterialPropertyName>(
28 "g_name",
"g",
"Base name for the double well function g(eta)");
35 _c_map(getParameterJvarMap(
"global_cs")),
36 _num_c(coupledComponents(
"global_cs")),
37 _c_names(coupledNames(
"global_cs")),
38 _ci_names(getParam<
std::vector<MaterialPropertyName>>(
"ci_names")),
39 _Fa_name(getParam<MaterialPropertyName>(
"fa_name")),
41 _Fb_name(getParam<MaterialPropertyName>(
"fb_name")),
43 _prop_dg(getMaterialPropertyDerivative<
Real>(
"g_name", _eta_name)),
44 _prop_d2g(getMaterialPropertyDerivative<
Real>(
"g_name", _eta_name, _eta_name)),
45 _w(getParam<
Real>(
"w")),
48 _dcidb(_num_c * _num_c * 2),
63 _dcideta[m][n] = &getMaterialPropertyDerivative<Real>(
_ci_names[m * 2 + n], _var.name());
113 auto compvar = mapJvarToCvar(jvar,
_c_map);
122 res -=
_L[_qp] *
_prop_dh[_qp] * sum * _phi[_j][_qp] * _test[_i][_qp];
126 const unsigned int cvar = mapJvarToCvar(jvar);
129 _phi[_j][_qp] * _test[_i][_qp];
const MaterialProperty< Real > & _prop_d2g
Second derivative of barrier function g.
const MaterialProperty< Real > & _L
Mobility.
std::vector< const MaterialProperty< Real > * > _dFadarg
Partial derivative of the free energy function Fa wrt coupled variables .
void mooseError(Args &&... args)
std::vector< std::vector< const MaterialProperty< Real > * > > _dcideta
Derivative of phase concentration wrt eta .
std::vector< std::vector< std::vector< const MaterialProperty< Real > * > > > _dcidb
Derivative of phase concentration wrt global concentration .
std::vector< const MaterialProperty< Real > * > _dFbdarg
Partial derivative of the free energy function Fb wrt coupled variables .
const MaterialPropertyName _Fb_name
Free energy of phase b.
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
registerMooseObject("PhaseFieldApp", NestedKKSACBulkF)
const Real _w
Double well height parameter.
static InputParameters validParams()
virtual Real computeDFDOP(PFFunctionType type)
const MaterialProperty< Real > & _prop_dg
Derivative of barrier function g.
ACBulk child class that takes all the necessary data from a KKSBaseMaterial and sets up the Allen-Cah...
static InputParameters validParams()
const std::vector< MaterialPropertyName > _ci_names
Phase concentrations.
const MaterialPropertyName _Fa_name
Free energy of phase a.
KKSACBulkBase child class for the free energy difference term in the the Allen-Cahn bulk residual...
std::vector< const MaterialProperty< Real > * > _prop_Fi
Free energy properties.
std::vector< const MaterialProperty< Real > * > _dFbdcb
Derivative of the free energy function .
const MaterialProperty< Real > & _prop_dh
Derivative of the switching function .
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
const std::vector< VariableName > _c_names
Global concentrations.
IntRange< T > make_range(T beg, T end)
std::vector< const MaterialProperty< Real > * > _dFadca
Derivative of the free energy function .
const MaterialProperty< Real > & _prop_d2h
Second derivative of the switching function .
const unsigned int _num_c
Number of global concentrations.
NestedKKSACBulkF(const InputParameters ¶meters)