20 params.
addRequiredParam<MaterialPropertyName>(
"normal_tensor_name",
"Name of normal tensor");
26 _grad_u(coupledGradient(
"phase")),
28 declareProperty<
RankTwoTensor>(getParam<MaterialPropertyName>(
"normal_tensor_name")))
41 const Real magnitude =
_grad_u[_qp].norm();
45 const RealVectorValue vector =
_grad_u[_qp] / magnitude;
registerMooseObject("PhaseFieldApp", PhaseNormalTensor)
static InputParameters validParams()
Calculate phase normal tensor based on gradient.
virtual void initQpStatefulProperties()
static InputParameters validParams()
MaterialProperty< RankTwoTensor > & _normal_tensor
virtual void computeQpProperties()
PhaseNormalTensor(const InputParameters ¶meters)
const VariableGradient & _grad_u
static RankTwoTensorTempl< T > selfOuterProduct(const libMesh::TypeVector< T > &)