www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PhaseNormalTensor Class Reference

Calculate phase normal tensor based on gradient. More...

#include <PhaseNormalTensor.h>

Inheritance diagram for PhaseNormalTensor:
[legend]

Public Member Functions

 PhaseNormalTensor (const InputParameters &parameters)
 

Protected Member Functions

virtual void initQpStatefulProperties ()
 
virtual void computeQpProperties ()
 

Protected Attributes

const VariableGradient & _grad_u
 
MaterialProperty< RankTwoTensor > & _normal_tensor
 

Detailed Description

Calculate phase normal tensor based on gradient.

Definition at line 25 of file PhaseNormalTensor.h.

Constructor & Destructor Documentation

◆ PhaseNormalTensor()

PhaseNormalTensor::PhaseNormalTensor ( const InputParameters &  parameters)

Definition at line 25 of file PhaseNormalTensor.C.

26  : DerivativeMaterialInterface<Material>(parameters),
27  _grad_u(coupledGradient("phase")),
29  declareProperty<RankTwoTensor>(getParam<MaterialPropertyName>("normal_tensor_name")))
30 {
31 }
const VariableGradient & _grad_u
MaterialProperty< RankTwoTensor > & _normal_tensor

Member Function Documentation

◆ computeQpProperties()

void PhaseNormalTensor::computeQpProperties ( )
protectedvirtual

Definition at line 40 of file PhaseNormalTensor.C.

41 {
42  const Real magnitude = _grad_u[_qp].norm();
43 
44  if (magnitude > 0.0)
45  {
46  RealVectorValue vector = _grad_u[_qp] / magnitude;
47  _normal_tensor[_qp].vectorOuterProduct(vector, vector);
48  }
49  else
50  _normal_tensor[_qp].zero();
51 }
const VariableGradient & _grad_u
MaterialProperty< RankTwoTensor > & _normal_tensor

◆ initQpStatefulProperties()

void PhaseNormalTensor::initQpStatefulProperties ( )
protectedvirtual

Definition at line 34 of file PhaseNormalTensor.C.

35 {
36  _normal_tensor[_qp].zero();
37 }
MaterialProperty< RankTwoTensor > & _normal_tensor

Member Data Documentation

◆ _grad_u

const VariableGradient& PhaseNormalTensor::_grad_u
protected

Definition at line 34 of file PhaseNormalTensor.h.

Referenced by computeQpProperties().

◆ _normal_tensor

MaterialProperty<RankTwoTensor>& PhaseNormalTensor::_normal_tensor
protected

Definition at line 35 of file PhaseNormalTensor.h.

Referenced by computeQpProperties(), and initQpStatefulProperties().


The documentation for this class was generated from the following files: