17 params.addClassDescription(
"KKS model kernel for the Bulk Allen-Cahn. This operates on the order "
18 "parameter 'eta' as the non-linear variable");
19 params.addRequiredParam<MaterialPropertyName>(
21 "Base name of the free energy function F (f_base in the corresponding KKSBaseMaterial)");
22 params.addParam<MaterialPropertyName>(
23 "h_name",
"h",
"Base name for the switching function h(eta)");
28 :
ACBulk<Real>(parameters),
30 _nvar(_coupled_moose_vars.size()),
31 _eta_name(_var.
name()),
32 _prop_Fa(getMaterialProperty<Real>(
"fa_name")),
33 _prop_dFa(getMaterialPropertyDerivative<Real>(
"fa_name", _eta_name)),
34 _prop_dh(getMaterialPropertyDerivative<Real>(
"h_name", _eta_name)),
35 _prop_d2h(getMaterialPropertyDerivative<Real>(
"h_name", _eta_name, _eta_name))
43 for (
unsigned int i = 0; i <
_nvar; ++i)
45 MooseVariable * cvar = _coupled_standard_moose_vars[i];
48 _derivatives_Fa[i] = &getMaterialPropertyDerivative<Real>(
"fa_name", cvar->name());
49 _derivatives_Fb[i] = &getMaterialPropertyDerivative<Real>(
"fb_name", cvar->name());
60 validateNonlinearCoupling<Real>(
"fa_name");
61 validateNonlinearCoupling<Real>(
"fb_name");