18 InputParameters params = validParams<DerivativeParsedMaterialHelper>();
19 params.addClassDescription(
"Material for switching function that prevents formation of a third "
20 "phase at a two-phase interface: h_i = eta_i^2/4 * [15 (1-eta_i) [1 + "
21 "eta_i - (eta_k - eta_j)^2] + eta_i * (9eta_i^2 - 5)]");
22 params.addRequiredCoupledVar(
"eta_i",
"Order parameter i");
23 params.addRequiredCoupledVar(
"eta_j",
"Order parameter j");
24 params.addRequiredCoupledVar(
"eta_k",
"Order parameter k");
25 params.addParam<
bool>(
28 "Use a formulation that constrains the switching function values to [0:1]. This requires the "
29 "Lagrange multiplier to constrain the sum of the switching function, rather than the etas.");
34 : DerivativeParsedMaterialHelper(parameters), _eta_i(
"eta_i"), _eta_j(
"eta_j"), _eta_k(
"eta_k")
38 if (getParam<bool>(
"constrain_range"))
44 conditional(eta < 0, 0, conditional(eta > 1, 1, 3.0 *
pow(eta, 2) - 2.0 *
pow(eta, 3)));