Enforce equilibrium with an updated Lagrangian formulation. More...
#include <UpdatedLagrangianStressDivergence.h>
Public Types | |
typedef std::vector< int > | JvarMap |
Public Member Functions | |
UpdatedLagrangianStressDivergenceBase (const InputParameters ¶meters) | |
virtual void | initialSetup () override |
template<> | |
InputParameters | validParams () |
template<> | |
void | initialSetup () |
virtual void | computeOffDiagJacobian (unsigned int jvar) override |
unsigned int | mapJvarToCvar (unsigned int jvar) |
int | mapJvarToCvar (unsigned int jvar, const JvarMap &jvar_map) |
bool | mapJvarToCvar (unsigned int jvar, unsigned int &cvar) |
const JvarMap & | getJvarMap () |
const JvarMap & | getParameterJvarMap (std::string parameter_name) |
Static Public Member Functions | |
static InputParameters | baseParams () |
static InputParameters | validParams () |
Protected Member Functions | |
virtual RankTwoTensor | gradTest (unsigned int component) override |
virtual RankTwoTensor | gradTrial (unsigned int component) override |
virtual void | precalculateJacobianDisplacement (unsigned int component) override |
Prepare the average shape function gradients for stabilization. More... | |
virtual Real | computeQpResidual () override |
virtual Real | computeQpJacobianDisplacement (unsigned int alpha, unsigned int beta) override |
virtual Real | computeQpJacobianTemperature (unsigned int cvar) override |
virtual Real | computeQpJacobianOutOfPlaneStrain () override |
virtual void | precalculateJacobian () override |
virtual void | precalculateOffDiagJacobian (unsigned int jvar) override |
virtual Real | computeQpJacobian () override |
virtual Real | computeQpOffDiagJacobian (unsigned int jvar) override |
Protected Attributes | |
const MaterialProperty< RankTwoTensor > & | _stress |
The Cauchy stress. More... | |
const MaterialProperty< RankFourTensor > & | _material_jacobian |
const bool | _large_kinematics |
If true use large deformation kinematics. More... | |
const bool | _stabilize_strain |
If true calculate the deformation gradient derivatives for F_bar. More... | |
const std::string | _base_name |
Prepend to the material properties. More... | |
const unsigned int | _alpha |
Which component of the vector residual this kernel is responsible for. More... | |
const unsigned int | _ndisp |
Total number of displacements/size of residual vector. More... | |
std::vector< unsigned int > | _disp_nums |
The displacement numbers. More... | |
std::vector< std::vector< RankTwoTensor > > | _avg_grad_trial |
const MaterialProperty< RankTwoTensor > & | _F_ust |
The unmodified deformation gradient. More... | |
const MaterialProperty< RankTwoTensor > & | _F_avg |
The element-average deformation gradient. More... | |
const MaterialProperty< RankTwoTensor > & | _f_inv |
The inverse increment deformation gradient. More... | |
const MaterialProperty< RankTwoTensor > & | _F_inv |
The inverse deformation gradient. More... | |
const MaterialProperty< RankTwoTensor > & | _F |
The actual (stabilized) deformation gradient. More... | |
const MooseVariable * | _temperature |
Temperature, if provided. This is used only to get the trial functions. More... | |
const MooseVariable * | _out_of_plane_strain |
Out-of-plane strain, if provided. More... | |
std::vector< std::vector< const MaterialProperty< RankTwoTensor > * > > | _deigenstrain_dargs |
Eigenstrain derivatives wrt generate coupleds. More... | |
const unsigned int | _n_args |
Assembly & | _assembly_undisplaced |
const VariablePhiGradient & | _grad_phi_undisplaced |
const MooseArray< Real > & | _JxW_undisplaced |
const MooseArray< Real > & | _coord_undisplaced |
const MooseArray< Point > & | _q_point_undisplaced |
Private Member Functions | |
virtual RankTwoTensor | gradTrialUnstabilized (unsigned int component) |
The unstabilized trial function gradient. More... | |
virtual RankTwoTensor | gradTrialStabilized (unsigned int component) |
The stabilized trial function gradient. More... | |
Enforce equilibrium with an updated Lagrangian formulation.
This class enforces equilibrium when used in conjunction with the corresponding strain calculator (CalculateStrainLagrangianKernel) and with either a stress calculator that provides the Cauchy stress ("stress") and the appropriate "cauchy_jacobian", which needs to be the derivative of the increment in Cauchy stress with respect to the increment in the spatial velocity gradient.
This kernel should be used with the new "ComputeLagrangianStressBase" stress update system and the "ComputeLagrangianStrain" system for strains.
use_displaced_mesh must be true for large deformation kinematics The kernel enforces this with an error
Definition at line 32 of file UpdatedLagrangianStressDivergence.h.
UpdatedLagrangianStressDivergenceBase< G >::UpdatedLagrangianStressDivergenceBase | ( | const InputParameters & | parameters | ) |
Definition at line 15 of file UpdatedLagrangianStressDivergence.C.
|
inlinestatic |
Definition at line 35 of file UpdatedLagrangianStressDivergence.h.
Referenced by UpdatedLagrangianStressDivergenceBase< G >::validParams().
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 115 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtual |
Implements LagrangianStressDivergenceBase.
Definition at line 112 of file UpdatedLagrangianStressDivergence.C.
|
inlineoverrideprotectedvirtual |
Implements LagrangianStressDivergenceBase.
Definition at line 51 of file UpdatedLagrangianStressDivergence.h.
|
overrideprotectedvirtual |
Implements LagrangianStressDivergenceBase.
Definition at line 140 of file UpdatedLagrangianStressDivergence.C.
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 121 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtual |
Definition at line 105 of file UpdatedLagrangianStressDivergence.C.
|
overrideprotectedvirtual |
Implements LagrangianStressDivergenceBase.
Definition at line 47 of file UpdatedLagrangianStressDivergence.C.
|
overrideprotectedvirtual |
Implements LagrangianStressDivergenceBase.
Definition at line 55 of file UpdatedLagrangianStressDivergence.C.
|
privatevirtual |
The stabilized trial function gradient.
Definition at line 70 of file UpdatedLagrangianStressDivergence.C.
|
privatevirtual |
The unstabilized trial function gradient.
Definition at line 62 of file UpdatedLagrangianStressDivergence.C.
|
overridevirtual |
|
inline |
Definition at line 89 of file UpdatedLagrangianStressDivergence.h.
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 85 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtual |
Prepare the average shape function gradients for stabilization.
Implements LagrangianStressDivergenceBase.
Definition at line 82 of file UpdatedLagrangianStressDivergence.C.
|
overrideprotectedvirtualinherited |
Definition at line 98 of file LagrangianStressDivergenceBase.C.
|
static |
|
inline |
Definition at line 79 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
Which component of the vector residual this kernel is responsible for.
Definition at line 72 of file LagrangianStressDivergenceBase.h.
Referenced by HomogenizedTotalLagrangianStressDivergence::computeOffDiagJacobianScalar(), LagrangianStressDivergenceBase::computeQpJacobian(), LagrangianStressDivergenceBase::computeQpOffDiagJacobian(), and LagrangianStressDivergenceBase::precalculateJacobian().
|
protected |
Definition at line 62 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
Definition at line 83 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::precalculateJacobian(), and LagrangianStressDivergenceBase::precalculateOffDiagJacobian().
|
protectedinherited |
Prepend to the material properties.
Definition at line 69 of file LagrangianStressDivergenceBase.h.
|
protected |
Definition at line 65 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
Eigenstrain derivatives wrt generate coupleds.
Definition at line 107 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::LagrangianStressDivergenceBase().
|
protectedinherited |
The displacement numbers.
Definition at line 78 of file LagrangianStressDivergenceBase.h.
Referenced by TotalLagrangianWeakPlaneStress::computeQpOffDiagJacobian(), LagrangianStressDivergenceBase::computeQpOffDiagJacobian(), LagrangianStressDivergenceBase::LagrangianStressDivergenceBase(), and LagrangianStressDivergenceBase::precalculateOffDiagJacobian().
|
protectedinherited |
The actual (stabilized) deformation gradient.
Definition at line 98 of file LagrangianStressDivergenceBase.h.
|
protectedinherited |
The element-average deformation gradient.
Definition at line 89 of file LagrangianStressDivergenceBase.h.
|
protectedinherited |
The inverse increment deformation gradient.
Definition at line 92 of file LagrangianStressDivergenceBase.h.
|
protectedinherited |
The inverse deformation gradient.
Definition at line 95 of file LagrangianStressDivergenceBase.h.
|
protectedinherited |
The unmodified deformation gradient.
Definition at line 86 of file LagrangianStressDivergenceBase.h.
|
protected |
Definition at line 63 of file UpdatedLagrangianStressDivergence.h.
|
protected |
Definition at line 64 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
If true use large deformation kinematics.
Definition at line 63 of file LagrangianStressDivergenceBase.h.
Referenced by HomogenizedTotalLagrangianStressDivergence::computeOffDiagJacobianScalar(), and UpdatedLagrangianStressDivergenceBase< G >::UpdatedLagrangianStressDivergenceBase().
|
protected |
Definition at line 58 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
Total number of displacements/size of residual vector.
Definition at line 75 of file LagrangianStressDivergenceBase.h.
Referenced by TotalLagrangianWeakPlaneStress::computeQpOffDiagJacobian(), LagrangianStressDivergenceBase::computeQpOffDiagJacobian(), LagrangianStressDivergenceBase::LagrangianStressDivergenceBase(), and LagrangianStressDivergenceBase::precalculateOffDiagJacobian().
|
protectedinherited |
Out-of-plane strain, if provided.
Definition at line 104 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::computeQpOffDiagJacobian(), and UpdatedLagrangianStressDivergenceBase< G >::UpdatedLagrangianStressDivergenceBase().
|
protected |
Definition at line 66 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
If true calculate the deformation gradient derivatives for F_bar.
Definition at line 66 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::precalculateJacobian(), and LagrangianStressDivergenceBase::precalculateOffDiagJacobian().
|
protected |
The Cauchy stress.
Definition at line 54 of file UpdatedLagrangianStressDivergence.h.
|
protectedinherited |
Temperature, if provided. This is used only to get the trial functions.
Definition at line 101 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::computeQpOffDiagJacobian().