19 "Gradient energy Allen-Cahn Kernel where the derivative of interface parameter kappa "
20 "wrt the gradient of order parameter is considered.");
21 params.
addParam<MaterialPropertyName>(
"dkappadgrad_etaa_name",
23 "The derivative of the kappa with respect to grad_etaa");
24 params.
addParam<MaterialPropertyName>(
25 "d2kappadgrad_etaa_name",
27 "The second derivative of the kappa with respect to grad_etaa");
29 "etas",
"All other coupled order parameters eta_i of the multiphase problem");
35 _dkappadgrad_etaa(getMaterialProperty<RealGradient>(
"dkappadgrad_etaa_name")),
36 _d2kappadgrad_etaa(getMaterialProperty<RealTensorValue>(
"d2kappadgrad_etaa_name")),
37 _num_etas(coupledComponents(
"etas")),
47 Real SumSquareGradOp = _grad_u[_qp] * _grad_u[_qp];
48 for (
unsigned int i = 0; i <
_num_etas; ++i)
50 _grad_eta[i] = &coupledGradient(
"etas", i);
53 return SumSquareGradOp;
66 RealGradient dsum =
_dLdop[_qp] * _phi[_j][_qp] * _grad_test[_i][_qp];
72 _grad_phi[_j][_qp] *
_dLdop[_qp] + _grad_u[_qp] * _phi[_j][_qp] *
_d2Ldop2[_qp];
74 for (
unsigned int i = 0; i < _n_args; ++i)
77 dsum += dgradL * _test[_i][_qp];
83 return jac1 + jac2 + jac3;
90 const unsigned int cvar = mapJvarToCvar(jvar);
93 RealGradient dsum = (*
_dLdarg[cvar])[_qp] * _phi[_j][_qp] * _grad_test[_i][_qp];
98 RealGradient dgradL = _grad_phi[_j][_qp] * (*
_dLdarg[cvar])[_qp] +
99 _grad_u[_qp] * _phi[_j][_qp] * (*
_d2Ldargdop[cvar])[_qp];
101 for (
unsigned int i = 0; i < _n_args; ++i)
104 dsum += dgradL * _test[_i][_qp];
108 _grad_eta[0] = &coupledGradient(
"etas", 0);
114 return jac1 + jac2 + jac3;
registerMooseObject("PhaseFieldApp", ACInterface2DMultiPhase1)
Compute the Allen-Cahn interface term with the weak form residual .
ACInterface2DMultiPhase1(const InputParameters ¶meters)
unsigned int _num_etas
Order parameters.
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
const MaterialProperty< RealTensorValue > & _d2kappadgrad_etaa
virtual Real computeQpResidual()
static InputParameters validParams()
std::vector< const VariableGradient * > _grad_eta
const MaterialProperty< RealGradient > & _dkappadgrad_etaa
Interfacial parameter.
virtual Real computeQpJacobian()
Compute the Allen-Cahn interface term with the weak form residual .
const bool _variable_L
flag set if L is a function of non-linear variables in args
std::vector< const VariableGradient * > _gradarg
Gradients for all coupled variables.
const MaterialProperty< Real > & _dLdop
Mobility derivatives w.r.t. order parameter.
const MaterialProperty< Real > & _d2Ldop2
std::vector< const MaterialProperty< Real > * > _dLdarg
Mobility derivative w.r.t. other coupled variables.
static InputParameters validParams()
std::vector< const MaterialProperty< Real > * > _d2Ldargdop
RealGradient nablaLPsi()
the term
std::vector< std::vector< const MaterialProperty< Real > * > > _d2Ldarg2