https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
ComputeCrackTipEnrichmentSmallStrain Class Reference

ComputeCrackTipEnrichmentSmallStrain calculates the sum of standard strain and enrichement strain. More...

#include <ComputeCrackTipEnrichmentSmallStrain.h>

Inheritance diagram for ComputeCrackTipEnrichmentSmallStrain:
[legend]

Public Types

typedef DerivativeMaterialPropertyNameInterface::SymbolName SymbolName
 

Public Member Functions

 ComputeCrackTipEnrichmentSmallStrain (const InputParameters &parameters)
 
virtual ~ComputeCrackTipEnrichmentSmallStrain ()
 
void initialSetup () override
 
const GenericMaterialProperty< U, is_ad > & getDefaultMaterialProperty (const std::string &name)
 
const GenericMaterialProperty< U, is_ad > & getDefaultMaterialPropertyByName (const std::string &name)
 
void validateDerivativeMaterialPropertyBase (const std::string &base)
 
const MaterialPropertyName derivativePropertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName derivativePropertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName derivativePropertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName derivativePropertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
GenericMaterialProperty< U, is_ad > & declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c)
 
const GenericMaterialProperty< U, is_ad > & getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="")
 
void validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true)
 
void validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true)
 
void validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
void validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="")
 
const MaterialPropertyName propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const
 
const MaterialPropertyName propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const
 
const MaterialPropertyName propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const
 
const MaterialPropertyName propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 
const MaterialPropertyName propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const
 
virtual unsigned int crackTipEnrichementFunctionAtPoint (const Point &point, std::vector< Real > &B)
 calculate the enrichment function values at point
 
virtual unsigned int crackTipEnrichementFunctionDerivativeAtPoint (const Point &point, std::vector< RealVectorValue > &dB)
 calculate the enrichment function derivatives at point
 
void rotateFromCrackFrontCoordsToGlobal (const RealVectorValue &vector, RealVectorValue &rotated_vector, const unsigned int point_index)
 rotate a vector from crack front coordinate to global cooridate
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual void computeProperties () override
 
virtual void computeQpProperties () override
 
virtual void initQpStatefulProperties () override
 
virtual void displacementIntegrityCheck ()
 

Protected Attributes

std::vector< Real > _enrich_disp
 enrichment displacement
 
std::vector< RealVectorValue > _grad_enrich_disp
 gradient of enrichment displacement
 
std::vector< std::vector< MooseVariableFEBase * > > _enrich_variable
 enrichment displacement variables
 
const VariablePhiValue_phi
 the current shape functions
 
const VariablePhiGradient_grad_phi
 gradient of the shape function
 
unsigned int _ndisp
 Coupled displacement variables.
 
std::vector< const VariableValue * > _disp
 Displacement variables.
 
std::vector< const VariableGradient * > _grad_disp
 Gradient of displacements.
 
const std::string _base_name
 Base name of the material system.
 
MaterialProperty< RankTwoTensor > & _mechanical_strain
 
MaterialProperty< RankTwoTensor > & _total_strain
 
std::vector< MaterialPropertyName > _eigenstrain_names
 
std::vector< const MaterialProperty< RankTwoTensor > * > _eigenstrains
 
const MaterialProperty< RankTwoTensor > *const _global_strain
 
const bool _volumetric_locking_correction
 
const Real & _current_elem_volume
 

Private Member Functions

bool haveMaterialProperty (const std::string &prop_name)
 
std::vector< VariableName > buildVariableVector (const VariableName &c1, const VariableName &c2, const VariableName &c3)
 
void validateCouplingHelper (const MaterialPropertyName &base, const std::vector< VariableName > &c, const System &system, std::vector< VariableName > &missing)
 
bool isNotObjectVariable (const VariableName &name)
 

Private Attributes

std::vector< Real > _B
 enrichment function value
 
std::vector< RealVectorValue > _dBX
 derivatives of enrichment function respect to global cooridnate
 
std::vector< RealVectorValue > _dBx
 derivatives of enrichment function respect to crack front cooridnate
 
std::vector< std::vector< Real > > _BI
 enrichment function at node I
 
const std::vector< std::vector< Real > > * _fe_phi
 shape function
 
const std::vector< std::vector< RealGradient > > * _fe_dphi
 gradient of shape function
 
NonlinearSystem_nl
 
const NumericVector< Number > * _sln
 
FEProblemBase_dmi_fe_problem
 
const CrackFrontDefinition_crack_front_definition
 
Real _r
 
Real _theta
 

Detailed Description

ComputeCrackTipEnrichmentSmallStrain calculates the sum of standard strain and enrichement strain.

Definition at line 24 of file ComputeCrackTipEnrichmentSmallStrain.h.

Constructor & Destructor Documentation

◆ ComputeCrackTipEnrichmentSmallStrain()

ComputeCrackTipEnrichmentSmallStrain::ComputeCrackTipEnrichmentSmallStrain ( const InputParameters parameters)

Definition at line 32 of file ComputeCrackTipEnrichmentSmallStrain.C.

34 : ComputeStrainBase(parameters),
35 EnrichmentFunctionCalculation(&getUserObject<CrackFrontDefinition>("crack_front_definition")),
36 _enrich_disp(3),
39 _phi(_assembly.phi()),
40 _grad_phi(_assembly.gradPhi()),
41 _B(4),
42 _dBX(4),
43 _dBx(4)
44{
45 for (unsigned int i = 0; i < _enrich_variable.size(); ++i)
46 _enrich_variable[i].resize(_ndisp);
47
48 const std::vector<NonlinearVariableName> & nl_vnames =
49 getParam<std::vector<NonlinearVariableName>>("enrichment_displacements");
50
51 if (_ndisp == 2 && nl_vnames.size() != 8)
52 mooseError("The number of enrichment displacements should be total 8 for 2D.");
53 else if (_ndisp == 3 && nl_vnames.size() != 12)
54 mooseError("The number of enrichment displacements should be total 12 for 3D.");
55
56 _nl = &(_fe_problem.getNonlinearSystem(/*nl_sys_num=*/0));
57
58 for (unsigned int j = 0; j < _ndisp; ++j)
59 for (unsigned int i = 0; i < 4; ++i)
60 _enrich_variable[i][j] = &(_nl->getVariable(0, nl_vnames[j * 4 + i]));
61
62 if (_ndisp == 2)
63 _BI.resize(4); // QUAD4
64 else if (_ndisp == 3)
65 _BI.resize(8); // HEX8
66
67 for (unsigned int i = 0; i < _BI.size(); ++i)
68 _BI[i].resize(4);
69}
void mooseError(Args &&... args)
std::vector< RealVectorValue > _dBX
derivatives of enrichment function respect to global cooridnate
std::vector< RealVectorValue > _grad_enrich_disp
gradient of enrichment displacement
std::vector< std::vector< MooseVariableFEBase * > > _enrich_variable
enrichment displacement variables
std::vector< Real > _enrich_disp
enrichment displacement
std::vector< Real > _B
enrichment function value
const VariablePhiGradient & _grad_phi
gradient of the shape function
std::vector< std::vector< Real > > _BI
enrichment function at node I
std::vector< RealVectorValue > _dBx
derivatives of enrichment function respect to crack front cooridnate
const VariablePhiValue & _phi
the current shape functions
ComputeStrainBase is the base class for strain tensors.
unsigned int _ndisp
Coupled displacement variables.
Perform calculation of enrichment function values and derivatives.
MooseVariableFieldBase & getVariable(THREAD_ID tid, const std::string &var_name) const

◆ ~ComputeCrackTipEnrichmentSmallStrain()

virtual ComputeCrackTipEnrichmentSmallStrain::~ComputeCrackTipEnrichmentSmallStrain ( )
inlinevirtual

Definition at line 31 of file ComputeCrackTipEnrichmentSmallStrain.h.

31{}

Member Function Documentation

◆ computeProperties()

void ComputeCrackTipEnrichmentSmallStrain::computeProperties ( )
overrideprotectedvirtual

Definition at line 122 of file ComputeCrackTipEnrichmentSmallStrain.C.

123{
124 FEType fe_type(Utility::string_to_enum<Order>("first"),
125 Utility::string_to_enum<FEFamily>("lagrange"));
126 const unsigned int dim = _current_elem->dim();
127 std::unique_ptr<FEBase> fe(FEBase::build(dim, fe_type));
128 fe->attach_quadrature_rule(const_cast<QBase *>(_qrule));
129 _fe_phi = &(fe->get_phi());
130 _fe_dphi = &(fe->get_dphi());
131
132 if (isBoundaryMaterial())
133 fe->reinit(_current_elem, _current_side);
134 else
135 fe->reinit(_current_elem);
136
137 for (unsigned int i = 0; i < _BI.size(); ++i)
138 crackTipEnrichementFunctionAtPoint(*(_current_elem->node_ptr(i)), _BI[i]);
139
140 ComputeStrainBase::computeProperties();
141}
unsigned int dim
const std::vector< std::vector< Real > > * _fe_phi
shape function
const std::vector< std::vector< RealGradient > > * _fe_dphi
gradient of shape function
virtual unsigned int crackTipEnrichementFunctionAtPoint(const Point &point, std::vector< Real > &B)
calculate the enrichment function values at point

◆ computeQpProperties()

void ComputeCrackTipEnrichmentSmallStrain::computeQpProperties ( )
overrideprotectedvirtual

Definition at line 72 of file ComputeCrackTipEnrichmentSmallStrain.C.

73{
75 unsigned int crack_front_point_index =
77
78 for (unsigned int i = 0; i < 4; ++i)
79 rotateFromCrackFrontCoordsToGlobal(_dBx[i], _dBX[i], crack_front_point_index);
80
82
83 for (unsigned int m = 0; m < _ndisp; ++m)
84 {
85 _enrich_disp[m] = 0.0;
87 for (unsigned int i = 0; i < _current_elem->n_nodes(); ++i)
88 {
89 const Node * node_i = _current_elem->node_ptr(i);
90 for (unsigned int j = 0; j < 4; ++j)
91 {
92 dof_id_type dof = node_i->dof_number(_nl->number(), _enrich_variable[j][m]->number(), 0);
93 Real soln = (*_sln)(dof);
94 _enrich_disp[m] += (*_fe_phi)[i][_qp] * (_B[j] - _BI[i][j]) * soln;
95 RealVectorValue grad_B(_dBX[j]);
97 ((*_fe_dphi)[i][_qp] * (_B[j] - _BI[i][j]) + (*_fe_phi)[i][_qp] * grad_B) * soln;
98 }
99 }
100 }
101
102 auto grad_tensor_enrich = RankTwoTensor::initializeFromRows(
104
105 RankTwoTensor enrich_strain = (grad_tensor_enrich + grad_tensor_enrich.transpose()) / 2.0;
106
107 auto grad_tensor = RankTwoTensor::initializeFromRows(
108 (*_grad_disp[0])[_qp], (*_grad_disp[1])[_qp], (*_grad_disp[2])[_qp]);
109
110 _total_strain[_qp] = (grad_tensor + grad_tensor.transpose()) / 2.0;
111
112 _total_strain[_qp] += enrich_strain;
113
115
116 // Remove the Eigen strain
117 for (auto es : _eigenstrains)
118 _mechanical_strain[_qp] -= (*es)[_qp];
119}
std::vector< const VariableGradient * > _grad_disp
Gradient of displacements.
MaterialProperty< RankTwoTensor > & _mechanical_strain
std::vector< const MaterialProperty< RankTwoTensor > * > _eigenstrains
MaterialProperty< RankTwoTensor > & _total_strain
void rotateFromCrackFrontCoordsToGlobal(const RealVectorValue &vector, RealVectorValue &rotated_vector, const unsigned int point_index)
rotate a vector from crack front coordinate to global cooridate
virtual unsigned int crackTipEnrichementFunctionDerivativeAtPoint(const Point &point, std::vector< RealVectorValue > &dB)
calculate the enrichment function derivatives at point
static RankTwoTensorTempl initializeFromRows(const libMesh::TypeVector< T > &row0, const libMesh::TypeVector< T > &row1, const libMesh::TypeVector< T > &row2)
virtual const NumericVector< Number > *const & currentSolution() const override final
unsigned int number() const
virtual void zero()=0
VectorValue< Real > RealVectorValue
uint8_t dof_id_type
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

◆ crackTipEnrichementFunctionAtPoint()

unsigned int EnrichmentFunctionCalculation::crackTipEnrichementFunctionAtPoint ( const Point &  point,
std::vector< Real > &  B 
)
virtualinherited

calculate the enrichment function values at point

Returns
the closest crack front index

Definition at line 19 of file EnrichmentFunctionCalculation.C.

21{
22 unsigned int crack_front_point_index =
24
25 if (MooseUtils::absoluteFuzzyEqual(_r, 0.0))
26 mooseError("EnrichmentFunctionCalculation: the distance between a point and the crack "
27 "tip/front is zero.");
28
29 Real st = std::sin(_theta);
30 Real st2 = std::sin(_theta / 2.0);
31 Real ct2 = std::cos(_theta / 2.0);
32 Real sr = std::sqrt(_r);
33
34 B[0] = sr * st2;
35 B[1] = sr * ct2;
36 B[2] = sr * st2 * st;
37 B[3] = sr * ct2 * st;
38
39 return crack_front_point_index;
40}
void calculateRThetaToCrackFront(const Point qp, const std::size_t point_index, Real &r, Real &theta) const
Calculate r and theta of a point in the crack front polar coordinates for a given crack point index.
const CrackFrontDefinition & _crack_front_definition

Referenced by computeProperties(), CrackTipEnrichmentStressDivergenceTensors::computeQpJacobian(), CrackTipEnrichmentStressDivergenceTensors::computeQpOffDiagJacobian(), computeQpProperties(), and CrackTipEnrichmentStressDivergenceTensors::computeQpResidual().

◆ crackTipEnrichementFunctionDerivativeAtPoint()

unsigned int EnrichmentFunctionCalculation::crackTipEnrichementFunctionDerivativeAtPoint ( const Point &  point,
std::vector< RealVectorValue > &  dB 
)
virtualinherited

calculate the enrichment function derivatives at point

Returns
the closest crack front index

Definition at line 43 of file EnrichmentFunctionCalculation.C.

45{
46 unsigned int crack_front_point_index =
48
49 if (MooseUtils::absoluteFuzzyEqual(_r, 0.0))
50 mooseError("EnrichmentFunctionCalculation: the distance between a point and the crack "
51 "tip/front is zero.");
52
53 Real st = std::sin(_theta);
54 Real ct = std::cos(_theta);
55 Real st2 = std::sin(_theta / 2.0);
56 Real ct2 = std::cos(_theta / 2.0);
57 Real st15 = std::sin(1.5 * _theta);
58 Real ct15 = std::cos(1.5 * _theta);
59 Real sr = std::sqrt(_r);
60
61 dB[0](0) = -0.5 / sr * st2;
62 dB[0](1) = 0.5 / sr * ct2;
63 dB[0](2) = 0.0;
64 dB[1](0) = 0.5 / sr * ct2;
65 dB[1](1) = 0.5 / sr * st2;
66 dB[1](2) = 0.0;
67 dB[2](0) = -0.5 / sr * st15 * st;
68 dB[2](1) = 0.5 / sr * (st2 + st15 * ct);
69 dB[2](2) = 0.0;
70 dB[3](0) = -0.5 / sr * ct15 * st;
71 dB[3](1) = 0.5 / sr * (ct2 + ct15 * ct);
72 dB[3](2) = 0.0;
73
74 return crack_front_point_index;
75}

Referenced by CrackTipEnrichmentStressDivergenceTensors::computeQpJacobian(), CrackTipEnrichmentStressDivergenceTensors::computeQpOffDiagJacobian(), computeQpProperties(), and CrackTipEnrichmentStressDivergenceTensors::computeQpResidual().

◆ displacementIntegrityCheck()

void ComputeStrainBase::displacementIntegrityCheck ( )
protectedvirtualinherited

Reimplemented in Compute2DFiniteStrain, Compute2DIncrementalStrain, and Compute2DSmallStrain.

Definition at line 83 of file ComputeStrainBase.C.

84{
85 // Checking for consistency between mesh size and length of the provided displacements vector
86 if (_ndisp != _mesh.dimension())
87 paramError(
88 "displacements",
89 "The number of variables supplied in 'displacements' must match the mesh dimension.");
90}

Referenced by ComputeStrainBase::initialSetup().

◆ initialSetup()

void ComputeStrainBase::initialSetup ( )
overrideinherited

◆ initQpStatefulProperties()

void ComputeStrainBase::initQpStatefulProperties ( )
overrideprotectedvirtualinherited

Reimplemented in ComputeCosseratIncrementalSmallStrain, and ComputeIncrementalStrainBase.

Definition at line 93 of file ComputeStrainBase.C.

94{
95 _mechanical_strain[_qp].zero();
96 _total_strain[_qp].zero();
97}

◆ rotateFromCrackFrontCoordsToGlobal()

void EnrichmentFunctionCalculation::rotateFromCrackFrontCoordsToGlobal ( const RealVectorValue &  vector,
RealVectorValue &  rotated_vector,
const unsigned int  point_index 
)
inherited

rotate a vector from crack front coordinate to global cooridate

Parameters
rotated_vectorrotated vector

Definition at line 78 of file EnrichmentFunctionCalculation.C.

81{
82 rotated_vector = _crack_front_definition.rotateFromCrackFrontCoordsToGlobal(vector, point_index);
83}
RealVectorValue rotateFromCrackFrontCoordsToGlobal(const RealVectorValue vector, const std::size_t point_index) const
Rotate a vector from crack front cartesian coordinate to global cartesian coordinate.

Referenced by CrackTipEnrichmentStressDivergenceTensors::computeQpJacobian(), CrackTipEnrichmentStressDivergenceTensors::computeQpOffDiagJacobian(), computeQpProperties(), and CrackTipEnrichmentStressDivergenceTensors::computeQpResidual().

◆ validParams()

InputParameters ComputeCrackTipEnrichmentSmallStrain::validParams ( )
static

Definition at line 20 of file ComputeCrackTipEnrichmentSmallStrain.C.

21{
24 "Computes the crack tip enrichment at a point within a small strain formulation.");
25 params.addRequiredParam<std::vector<NonlinearVariableName>>("enrichment_displacements",
26 "The enrichment displacement");
27 params.addRequiredParam<UserObjectName>("crack_front_definition",
28 "The CrackFrontDefinition user object name");
29 return params;
30}
static InputParameters validParams()
void addRequiredParam(const std::string &name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)

Member Data Documentation

◆ _B

std::vector<Real> ComputeCrackTipEnrichmentSmallStrain::_B
private

enrichment function value

Definition at line 55 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _base_name

const std::string ComputeStrainBase::_base_name
protectedinherited

Base name of the material system.

Definition at line 44 of file ComputeStrainBase.h.

Referenced by ComputeStrainBase::ComputeStrainBase().

◆ _BI

std::vector<std::vector<Real> > ComputeCrackTipEnrichmentSmallStrain::_BI
private

enrichment function at node I

Definition at line 61 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by ComputeCrackTipEnrichmentSmallStrain(), computeProperties(), and computeQpProperties().

◆ _crack_front_definition

const CrackFrontDefinition& EnrichmentFunctionCalculation::_crack_front_definition
privateinherited

◆ _current_elem_volume

const Real& ComputeStrainBase::_current_elem_volume
protectedinherited

◆ _dBX

std::vector<RealVectorValue> ComputeCrackTipEnrichmentSmallStrain::_dBX
private

derivatives of enrichment function respect to global cooridnate

Definition at line 57 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _dBx

std::vector<RealVectorValue> ComputeCrackTipEnrichmentSmallStrain::_dBx
private

derivatives of enrichment function respect to crack front cooridnate

Definition at line 59 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _disp

std::vector<const VariableValue *> ComputeStrainBase::_disp
protectedinherited

◆ _eigenstrain_names

std::vector<MaterialPropertyName> ComputeStrainBase::_eigenstrain_names
protectedinherited

◆ _eigenstrains

std::vector<const MaterialProperty<RankTwoTensor> *> ComputeStrainBase::_eigenstrains
protectedinherited

◆ _enrich_disp

std::vector<Real> ComputeCrackTipEnrichmentSmallStrain::_enrich_disp
protected

enrichment displacement

Definition at line 39 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _enrich_variable

std::vector<std::vector<MooseVariableFEBase *> > ComputeCrackTipEnrichmentSmallStrain::_enrich_variable
protected

enrichment displacement variables

Definition at line 45 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by ComputeCrackTipEnrichmentSmallStrain(), and computeQpProperties().

◆ _fe_dphi

const std::vector<std::vector<RealGradient> >* ComputeCrackTipEnrichmentSmallStrain::_fe_dphi
private

gradient of shape function

Definition at line 65 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeProperties().

◆ _fe_phi

const std::vector<std::vector<Real> >* ComputeCrackTipEnrichmentSmallStrain::_fe_phi
private

shape function

Definition at line 63 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeProperties(), and computeQpProperties().

◆ _global_strain

const MaterialProperty<RankTwoTensor>* const ComputeStrainBase::_global_strain
protectedinherited

◆ _grad_disp

std::vector<const VariableGradient *> ComputeStrainBase::_grad_disp
protectedinherited

◆ _grad_enrich_disp

std::vector<RealVectorValue> ComputeCrackTipEnrichmentSmallStrain::_grad_enrich_disp
protected

gradient of enrichment displacement

Definition at line 42 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _grad_phi

const VariablePhiGradient& ComputeCrackTipEnrichmentSmallStrain::_grad_phi
protected

gradient of the shape function

Definition at line 51 of file ComputeCrackTipEnrichmentSmallStrain.h.

◆ _mechanical_strain

MaterialProperty<RankTwoTensor>& ComputeStrainBase::_mechanical_strain
protectedinherited

◆ _ndisp

unsigned int ComputeStrainBase::_ndisp
protectedinherited

◆ _nl

NonlinearSystem* ComputeCrackTipEnrichmentSmallStrain::_nl
private

◆ _phi

const VariablePhiValue& ComputeCrackTipEnrichmentSmallStrain::_phi
protected

the current shape functions

Definition at line 48 of file ComputeCrackTipEnrichmentSmallStrain.h.

◆ _r

Real EnrichmentFunctionCalculation::_r
privateinherited

◆ _sln

const NumericVector<Number>* ComputeCrackTipEnrichmentSmallStrain::_sln
private

Definition at line 67 of file ComputeCrackTipEnrichmentSmallStrain.h.

Referenced by computeQpProperties().

◆ _theta

Real EnrichmentFunctionCalculation::_theta
privateinherited

◆ _total_strain

MaterialProperty<RankTwoTensor>& ComputeStrainBase::_total_strain
protectedinherited

◆ _volumetric_locking_correction

const bool ComputeStrainBase::_volumetric_locking_correction
protectedinherited

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