Total Lagrangian formulation with all homogenization terms (one disp_xyz field and macro_gradient scalar) More...
#include <HomogenizedTotalLagrangianStressDivergence.h>
Public Types | |
typedef std::vector< int > | JvarMap |
Public Member Functions | |
HomogenizedTotalLagrangianStressDivergence (const InputParameters ¶meters) | |
virtual std::set< std::string > | additionalROVariables () override |
Inform moose that this kernel covers the constraint scalar variable. More... | |
virtual void | initialSetup () override |
template<> | |
void | initialSetup () |
template<> | |
void | initialSetup () |
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 | validParams () |
static InputParameters | baseParams () |
Protected Member Functions | |
virtual void | computeScalarResidual () override |
Method for computing the scalar part of residual for _kappa. More... | |
virtual void | computeScalarJacobian () override |
Method for computing the scalar variable part of Jacobian for d-_kappa-residual / d-_kappa. More... | |
virtual void | computeScalarOffDiagJacobian (const unsigned int jvar_num) override |
Method for computing an off-diagonal jacobian component d-_kappa-residual / d-jvar. More... | |
virtual Real | computeScalarQpOffDiagJacobian (const unsigned int jvar_num) override |
Method for computing an off-diagonal jacobian component at quadrature points. More... | |
virtual void | computeOffDiagJacobianScalarLocal (const unsigned int svar_num) override |
Method for computing an off-diagonal jacobian component d-_var-residual / d-svar. More... | |
virtual Real | computeQpOffDiagJacobianScalar (const unsigned int svar_num) override |
Method for computing d-_var-residual / d-svar at quadrature points. More... | |
const Homogenization::ConstraintMap & | cmap () const |
Get the constraint map. More... | |
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 > & | _pk1 |
The 1st Piola-Kirchhoff stress. More... | |
const MaterialProperty< RankFourTensor > & | _dpk1 |
The derivative of the PK1 stress with respect to the deformation gradient. More... | |
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 |
Private Attributes | |
unsigned int | _m |
Indices for off-diagonal Jacobian components. More... | |
unsigned int | _n |
Homogenization::ConstraintType | _ctype = Homogenization::ConstraintType::None |
Type of current homogenization constraint. More... | |
Total Lagrangian formulation with all homogenization terms (one disp_xyz field and macro_gradient scalar)
Definition at line 17 of file HomogenizedTotalLagrangianStressDivergence.h.
HomogenizedTotalLagrangianStressDivergence::HomogenizedTotalLagrangianStressDivergence | ( | const InputParameters & | parameters | ) |
Definition at line 30 of file HomogenizedTotalLagrangianStressDivergence.C.
|
overridevirtual |
Inform moose that this kernel covers the constraint scalar variable.
Definition at line 37 of file HomogenizedTotalLagrangianStressDivergence.C.
|
staticinherited |
Definition at line 14 of file TotalLagrangianStressDivergenceBase.C.
Referenced by TotalLagrangianStressDivergenceBase< G >::validParams().
|
inlineprotectedinherited |
Get the constraint map.
Definition at line 46 of file HomogenizationInterface.h.
Referenced by computeOffDiagJacobianScalarLocal(), computeScalarJacobian(), computeScalarOffDiagJacobian(), and computeScalarResidual().
|
overrideprotectedvirtual |
Method for computing an off-diagonal jacobian component d-_var-residual / d-svar.
svar is looped over all scalar variables, which herein is just _kappa
Definition at line 187 of file HomogenizedTotalLagrangianStressDivergence.C.
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 115 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Implements LagrangianStressDivergenceBase.
Definition at line 101 of file TotalLagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Implements LagrangianStressDivergenceBase.
Definition at line 128 of file TotalLagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Implements LagrangianStressDivergenceBase.
Definition at line 110 of file TotalLagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 121 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtual |
Method for computing d-_var-residual / d-svar at quadrature points.
Definition at line 217 of file HomogenizedTotalLagrangianStressDivergence.C.
Referenced by computeOffDiagJacobianScalarLocal().
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 94 of file TotalLagrangianStressDivergenceBase.C.
|
overrideprotectedvirtual |
Method for computing the scalar variable part of Jacobian for d-_kappa-residual / d-_kappa.
Definition at line 98 of file HomogenizedTotalLagrangianStressDivergence.C.
|
overrideprotectedvirtual |
Method for computing an off-diagonal jacobian component d-_kappa-residual / d-jvar.
jvar is looped over all field variables, which herein is just disp_x and disp_y
Definition at line 149 of file HomogenizedTotalLagrangianStressDivergence.C.
|
overrideprotectedvirtual |
Method for computing an off-diagonal jacobian component at quadrature points.
Definition at line 224 of file HomogenizedTotalLagrangianStressDivergence.C.
Referenced by computeScalarOffDiagJacobian().
|
overrideprotectedvirtual |
Method for computing the scalar part of residual for _kappa.
Definition at line 46 of file HomogenizedTotalLagrangianStressDivergence.C.
|
overrideprotectedvirtualinherited |
Implements LagrangianStressDivergenceBase.
Definition at line 33 of file TotalLagrangianStressDivergenceBase.C.
Referenced by computeQpOffDiagJacobianScalar().
|
overrideprotectedvirtualinherited |
Implements LagrangianStressDivergenceBase.
Definition at line 41 of file TotalLagrangianStressDivergenceBase.C.
Referenced by TotalLagrangianWeakPlaneStress::computeQpOffDiagJacobian(), and computeScalarQpOffDiagJacobian().
|
inlineinherited |
Definition at line 26 of file TotalLagrangianStressDivergence.h.
|
inherited |
Definition at line 26 of file TotalLagrangianStressDivergenceAxisymmetricCylindrical.h.
|
inherited |
Definition at line 26 of file TotalLagrangianStressDivergenceCentrosymmetricSpherical.h.
|
overridevirtualinherited |
|
overrideprotectedvirtualinherited |
Reimplemented in TotalLagrangianWeakPlaneStress.
Definition at line 85 of file LagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Prepare the average shape function gradients for stabilization.
Implements LagrangianStressDivergenceBase.
Definition at line 80 of file TotalLagrangianStressDivergenceBase.C.
|
overrideprotectedvirtualinherited |
Definition at line 98 of file LagrangianStressDivergenceBase.C.
|
static |
Definition at line 19 of file HomogenizedTotalLagrangianStressDivergence.C.
|
protectedinherited |
Which component of the vector residual this kernel is responsible for.
Definition at line 72 of file LagrangianStressDivergenceBase.h.
Referenced by LagrangianStressDivergenceBase::computeQpJacobian(), LagrangianStressDivergenceBase::computeQpOffDiagJacobian(), computeQpOffDiagJacobianScalar(), computeScalarJacobian(), computeScalarQpOffDiagJacobian(), computeScalarResidual(), and LagrangianStressDivergenceBase::precalculateJacobian().
|
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.
|
private |
Type of current homogenization constraint.
Definition at line 65 of file HomogenizedTotalLagrangianStressDivergence.h.
Referenced by computeOffDiagJacobianScalarLocal(), computeScalarOffDiagJacobian(), and computeScalarQpOffDiagJacobian().
|
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 derivative of the PK1 stress with respect to the deformation gradient.
Definition at line 49 of file TotalLagrangianStressDivergenceBase.h.
Referenced by TotalLagrangianWeakPlaneStress::computeQpJacobian(), TotalLagrangianWeakPlaneStress::computeQpOffDiagJacobian(), computeQpOffDiagJacobianScalar(), computeScalarJacobian(), and computeScalarQpOffDiagJacobian().
|
protectedinherited |
The actual (stabilized) deformation gradient.
Definition at line 98 of file LagrangianStressDivergenceBase.h.
Referenced by computeScalarResidual().
|
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.
|
protectedinherited |
If true use large deformation kinematics.
Definition at line 63 of file LagrangianStressDivergenceBase.h.
Referenced by computeScalarJacobian(), computeScalarQpOffDiagJacobian(), computeScalarResidual(), and UpdatedLagrangianStressDivergenceBase< G >::UpdatedLagrangianStressDivergenceBase().
|
private |
Indices for off-diagonal Jacobian components.
Definition at line 62 of file HomogenizedTotalLagrangianStressDivergence.h.
Referenced by computeOffDiagJacobianScalarLocal(), computeQpOffDiagJacobianScalar(), computeScalarOffDiagJacobian(), and computeScalarQpOffDiagJacobian().
|
private |
Definition at line 62 of file HomogenizedTotalLagrangianStressDivergence.h.
Referenced by computeOffDiagJacobianScalarLocal(), computeQpOffDiagJacobianScalar(), computeScalarOffDiagJacobian(), and computeScalarQpOffDiagJacobian().
|
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().
|
protectedinherited |
The 1st Piola-Kirchhoff stress.
Definition at line 45 of file TotalLagrangianStressDivergenceBase.h.
Referenced by TotalLagrangianWeakPlaneStress::computeQpResidual(), and computeScalarResidual().
|
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().
|
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().