ADStressUpdateBase is a material that is not called by MOOSE because of the compute=false flag set in the parameter list. More...
#include <ADComputeMultipleInelasticStress.h>
Public Member Functions | |
ADStressUpdateBase (const InputParameters ¶meters) | |
virtual void | updateState (ADRankTwoTensor &strain_increment, ADRankTwoTensor &inelastic_strain_increment, const ADRankTwoTensor &rotation_increment, ADRankTwoTensor &stress_new, const RankTwoTensor &stress_old, const ADRankFourTensor &elasticity_tensor, const RankTwoTensor &elastic_strain_old)=0 |
Given a strain increment that results in a trial stress, perform some procedure (such as an iterative return-mapping process) to produce an admissible stress, an elastic strain increment and an inelastic strain increment. More... | |
void | setQp (unsigned int qp) |
Sets the value of the global variable _qp for inheriting classes. More... | |
virtual void | propagateQpStatefulProperties () |
If updateState is not called during a timestep, this will be. More... | |
virtual bool | requiresIsotropicTensor ()=0 |
Does the model require the elasticity tensor to be isotropic? More... | |
virtual Real | computeTimeStepLimit () |
void | resetQpProperties () final |
Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten. More... | |
void | resetProperties () final |
Static Public Member Functions | |
static InputParameters | validParams () |
Protected Attributes | |
const std::string | _base_name |
Name used as a prefix for all material properties related to the stress update model. More... | |
usingMaterialMembers | |
ADStressUpdateBase is a material that is not called by MOOSE because of the compute=false flag set in the parameter list.
This class is a base class for materials that perform some internal computational procedure (such as an iterative return-mapping procedure) to compute an admissible state (which is usually an admissible stress that lies on or within the yield surface, as well as a set of internal parameters such as plastic strains). The computational procedure must return the admissible stress and a decomposition of the applied strain into elastic and inelastic components. All materials inheriting from this class must be called by a separate material, such as ComputeMultipleInelasticStress
Definition at line 28 of file ADComputeMultipleInelasticStress.h.
ADStressUpdateBase< compute_stage >::ADStressUpdateBase | ( | const InputParameters & | parameters | ) |
Definition at line 39 of file ADStressUpdateBase.C.
|
virtual |
Reimplemented in ADRadialReturnStressUpdate< compute_stage >, ADLAROMANCEStressUpdateBase< compute_stage >, and ADViscoplasticityStressUpdateBase< compute_stage >.
Definition at line 62 of file ADStressUpdateBase.C.
|
virtual |
If updateState is not called during a timestep, this will be.
This method allows derived classes to set internal parameters from their Old values, for instance
Reimplemented in ADViscoplasticityStressUpdateBase< compute_stage >, ADIsotropicPlasticityStressUpdate< compute_stage >, and ADRadialReturnCreepStressUpdateBase< compute_stage >.
Definition at line 54 of file ADStressUpdateBase.C.
|
pure virtual |
Does the model require the elasticity tensor to be isotropic?
Implemented in ADRadialReturnStressUpdate< compute_stage >, and ADViscoplasticityStressUpdateBase< compute_stage >.
Referenced by ADComputeMultipleInelasticStress< compute_stage >::initialSetup().
|
inlinefinal |
Definition at line 104 of file ADStressUpdateBase.h.
|
inlinefinal |
Retained as empty methods to avoid a warning from Material.C in framework. These methods are unused in all inheriting classes and should not be overwritten.
Definition at line 103 of file ADStressUpdateBase.h.
void ADStressUpdateBase< compute_stage >::setQp | ( | unsigned int | qp | ) |
Sets the value of the global variable _qp for inheriting classes.
Definition at line 47 of file ADStressUpdateBase.C.
|
pure virtual |
Given a strain increment that results in a trial stress, perform some procedure (such as an iterative return-mapping process) to produce an admissible stress, an elastic strain increment and an inelastic strain increment.
If _fe_problem.currentlyComputingJacobian() = true, then updateState also computes d(stress)/d(strain) (or some approximation to it).
This method is called by ComputeMultipleInelasticStress. This method is pure virtual: all inheriting classes must overwrite this method.
strain_increment | Upon input: the strain increment. Upon output: the elastic strain increment |
inelastic_strain_increment | The inelastic_strain resulting from the iterative procedure |
rotation_increment | The finite-strain rotation increment |
stress_new | Upon input: the trial stress that results from applying strain_increment as an elastic strain. Upon output: the admissible stress |
stress_old | The old value of stress |
elasticity_tensor | The elasticity tensor |
Implemented in ADRadialReturnStressUpdate< compute_stage >, and ADViscoplasticityStressUpdate< compute_stage >.
|
static |
Definition at line 19 of file ADStressUpdateBase.C.
Referenced by ADViscoplasticityStressUpdateBase< compute_stage >::validParams(), and ADRadialReturnStressUpdate< compute_stage >::validParams().
|
protected |
Name used as a prefix for all material properties related to the stress update model.
Definition at line 109 of file ADStressUpdateBase.h.
|
protected |
Definition at line 111 of file ADStressUpdateBase.h.