18 params.
addClassDescription(
"Multi-phase KKS model kernel (part 2 of 2) for the Bulk Allen-Cahn. " 19 "This includes all terms dependent on chemical potential.");
21 "cj_names",
"Array of phase concentrations cj. Place in same order as Fj_names!");
28 _c1_name(coupledName(
"cj_names", 0)),
29 _cjs(coupledValues(
"cj_names")),
30 _cjs_var(coupledIndices(
"cj_names")),
31 _prop_dF1dc1(getMaterialPropertyDerivative<
Real>(_Fj_names[0],
33 _prop_d2F1dc12(getMaterialPropertyDerivative<
Real>(_Fj_names[0], _c1_name, _c1_name)),
34 _prop_d2F1dc1darg(_n_args)
36 if (
_num_j != coupledComponents(
"cj_names"))
37 paramError(
"cj_names",
"Need to pass in as many cj_names as Fj_names");
40 for (
unsigned int i = 0; i < _n_args; ++i)
52 for (
unsigned int n = 0; n <
_num_j; ++n)
64 for (
unsigned int n = 0; n <
_num_j; ++n)
85 for (
unsigned int n = 0; n <
_num_j; ++n)
89 _phi[_j][_qp] * _test[_i][_qp];
93 for (
unsigned int i = 1; i <
_num_j; ++i)
104 const unsigned int cvar = mapJvarToCvar(jvar);
106 for (
unsigned int n = 0; n <
_num_j; ++n)
110 res -=
_L[_qp] * sum * _phi[_j][_qp] * _test[_i][_qp];
const MaterialProperty< Real > & _L
Mobility.
static InputParameters validParams()
ACBulk child class that sets up necessary variables and materials for calculation of residual contrib...
void mooseError(Args &&... args)
KKSMultiACBulkC(const InputParameters ¶meters)
std::vector< const MaterialProperty< Real > * > _prop_d2F1dc1darg
Mixed partial derivatives of the free energy function wrt c1 and any other coupled variables ...
std::vector< MaterialPropertyName > _Fj_names
Names of free energy functions for each phase .
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
const std::vector< unsigned int > _cjs_var
MaterialPropertyName _c1_name
Names of phase concentration variables.
std::vector< std::vector< const MaterialProperty< Real > * > > _prop_d2hjdetaidarg
Second derivatives of the switching functions (needed for off-diagonal Jacobians) ...
virtual Real computeDFDOP(PFFunctionType type)
std::vector< const MaterialProperty< Real > * > _prop_dhjdetai
Derivatives of the switching functions wrt the order parameter for this kernel.
static InputParameters validParams()
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const MaterialProperty< Real > & _prop_d2F1dc12
Second derivative of the free energy function .
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
std::vector< const MaterialProperty< Real > * > _prop_d2hjdetai2
Second derivatives of the switching functions wrt the order parameter for this kernel.
const MaterialProperty< Real > & _prop_dF1dc1
Derivative of the free energy function .
unsigned int _etai_var
index of order parameter that derivatives are taken wrt
const std::vector< const VariableValue * > _cjs
registerMooseObject("PhaseFieldApp", KKSMultiACBulkC)
KKSACBulkBase child class for the phase concentration term in the the Allen-Cahn bulk residual...