ComputeMultiPlasticityStress performs the return-map algorithm and associated stress updates for plastic models defined by a General User Objects. More...
#include <ComputeMultiPlasticityStress.h>
Public Types | |
enum | ConstantTypeEnum { ConstantTypeEnum::NONE, ConstantTypeEnum::ELEMENT, ConstantTypeEnum::SUBDOMAIN } |
enum | TEST_TYPE |
typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
ComputeMultiPlasticityStress (const InputParameters ¶meters) | |
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) |
virtual const dof_id_type & | getElementID (const std::string &id_parameter_name, unsigned int comp=0) const override |
dof_id_type | getElementID (const Elem *elem, unsigned int elem_id_index) const |
virtual const dof_id_type & | getElementIDNeighbor (const std::string &id_parameter_name, unsigned int comp=0) const override |
virtual const dof_id_type & | getElementIDByName (const std::string &id_parameter_name) const override |
virtual const dof_id_type & | getElementIDNeighborByName (const std::string &id_parameter_name) const override |
virtual void | computeProperties () override |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialProperty (const std::string &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > & | getADMaterialProperty (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOld (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const MaterialProperty< T > & | getMaterialPropertyOlder (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const std::string &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const std::string &name, const unsigned int state=0) |
const GenericMaterialProperty< T, is_ad > & | getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const std::string &prop_name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const std::string &prop_name, const unsigned int state=0) |
const MaterialProperty< T > & | getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const std::string &prop_name) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const std::string &prop_name) |
const ADMaterialProperty< T > & | getADMaterialPropertyByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const std::string &prop_name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const std::string &prop_name) |
const MaterialProperty< T > & | getMaterialPropertyOldByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const std::string &prop_name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const std::string &prop_name) |
const MaterialProperty< T > & | getMaterialPropertyOlderByName (const MaterialPropertyName &name) |
MaterialBase & | getMaterial (const std::string &name) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false, bool no_dep=false) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
MaterialBase & | getMaterialByName (const std::string &name, bool no_warn=false) |
virtual bool | isBoundaryMaterial () const override |
virtual const std::unordered_set< unsigned int > & | getMatPropDependencies () const override |
virtual void | subdomainSetup () override |
bool | ghostable () const override final |
virtual void | resolveOptionalProperties () override |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty () |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty () |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialProperty () |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialPropertyByName (const std::string &prop_name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialPropertyByName (const std::string &prop_name) |
const GenericMaterialProperty< T, is_ad > & | getGenericZeroMaterialPropertyByName (const std::string &prop_name) |
const MaterialProperty< T > & | getZeroMaterialProperty (Ts... args) |
const MaterialProperty< T > & | getZeroMaterialProperty (Ts... args) |
const MaterialProperty< T > & | getZeroMaterialProperty (Ts... args) |
virtual void | initStatefulProperties (unsigned int n_points) |
virtual bool | isInterfaceMaterial () |
virtual void | resetProperties () |
virtual void | computePropertiesAtQp (unsigned int qp) |
const MaterialProperty< T > & | getZeroMaterialPropertyByName (Ts... args) |
virtual const std::set< std::string > & | getRequestedItems () override |
virtual const std::set< std::string > & | getSuppliedItems () override |
const std::set< unsigned int > & | getSuppliedPropIDs () |
void | checkStatefulSanity () const |
std::set< OutputName > | getOutputs () |
bool | hasStatefulProperties () const |
void | setFaceInfo (const FaceInfo &fi) |
std::unordered_map< SubdomainID, std::vector< MaterialBase *> > | buildRequiredMaterials (bool allow_stateful=true) |
void | setActiveProperties (const std::unordered_set< unsigned int > &needed_props) |
bool | forceStatefulInit () const |
virtual bool | enabled () const |
std::shared_ptr< MooseObject > | getSharedPtr () |
std::shared_ptr< const MooseObject > | getSharedPtr () const |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &name, const std::string *param=nullptr) const |
const std::vector< SubdomainName > & | blocks () const |
unsigned int | numBlocks () const |
virtual const std::set< SubdomainID > & | blockIDs () const |
unsigned int | blocksMaxDimension () const |
bool | hasBlocks (const SubdomainName &name) const |
bool | hasBlocks (const std::vector< SubdomainName > &names) const |
bool | hasBlocks (SubdomainID id) const |
bool | hasBlocks (const std::vector< SubdomainID > &ids) const |
bool | hasBlocks (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::set< SubdomainID > &ids) const |
bool | isBlockSubset (const std::vector< SubdomainID > &ids) const |
bool | hasBlockMaterialProperty (const std::string &prop_name) |
const std::set< SubdomainID > & | meshBlockIDs () const |
virtual bool | blockRestricted () const |
virtual void | checkVariable (const MooseVariableFieldBase &variable) const |
virtual const std::set< BoundaryID > & | boundaryIDs () const |
const std::vector< BoundaryName > & | boundaryNames () const |
unsigned int | numBoundaryIDs () const |
bool | hasBoundary (const BoundaryName &name) const |
bool | hasBoundary (const std::vector< BoundaryName > &names) const |
bool | hasBoundary (const BoundaryID &id) const |
bool | hasBoundary (const std::vector< BoundaryID > &ids, TEST_TYPE type=ALL) const |
bool | hasBoundary (const std::set< BoundaryID > &ids, TEST_TYPE type=ALL) const |
bool | isBoundarySubset (const std::set< BoundaryID > &ids) const |
bool | isBoundarySubset (const std::vector< BoundaryID > &ids) const |
bool | hasBoundaryMaterialProperty (const std::string &prop_name) const |
virtual bool | boundaryRestricted () const |
const std::set< BoundaryID > & | meshBoundaryIDs () const |
virtual bool | checkVariableBoundaryIntegrity () const |
virtual void | initialSetup () |
virtual void | timestepSetup () |
virtual void | jacobianSetup () |
virtual void | residualSetup () |
virtual void | customSetup (const ExecFlagType &) |
const ExecFlagEnum & | getExecuteOnEnum () const |
const std::set< MooseVariableFieldBase *> & | getMooseVariableDependencies () const |
std::set< MooseVariableFieldBase *> | checkAllVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase * > &vars_to_omit={}) |
std::set< MooseVariableFieldBase *> | checkVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase * > &vars_to_check) |
const std::vector< MooseVariableScalar *> & | getCoupledMooseScalarVars () |
const std::set< TagID > & | getScalarVariableCoupleableVectorTags () const |
const std::set< TagID > & | getScalarVariableCoupleableMatrixTags () const |
const ADVariableValue * | getADDefaultValue (const std::string &var_name) const |
const Function & | getFunction (const std::string &name) const |
const Function & | getFunctionByName (const FunctionName &name) const |
bool | hasFunction (const std::string ¶m_name) const |
bool | hasFunctionByName (const FunctionName &name) const |
UserObjectName | getUserObjectName (const std::string ¶m_name) const |
const T & | getUserObject (const std::string ¶m_name, bool is_dependency=true) const |
const T & | getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBase (const std::string ¶m_name, bool is_dependency=true) const |
const UserObject & | getUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const |
bool | isImplicit () |
bool | isDefaultPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessor (const std::string ¶m_name, const unsigned int index=0) const |
bool | hasPostprocessorByName (const PostprocessorName &name) const |
std::size_t | coupledPostprocessors (const std::string ¶m_name) const |
const PostprocessorName & | getPostprocessorName (const std::string ¶m_name, const unsigned int index=0) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
bool | hasVectorPostprocessor (const std::string ¶m_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name) const |
const VectorPostprocessorName & | getVectorPostprocessorName (const std::string ¶m_name) const |
virtual void | meshChanged () |
void | buildOutputHideVariableList (std::set< std::string > variable_names) |
void | setRandomResetFrequency (ExecFlagType exec_flag) |
unsigned long | getRandomLong () const |
Real | getRandomReal () const |
unsigned int | getSeed (std::size_t id) |
unsigned int | getMasterSeed () const |
bool | isNodal () const |
ExecFlagType | getResetOnTime () const |
void | setRandomDataPointer (RandomData *random_data) |
virtual unsigned int | getElementIDIndex (const std::string &id_parameter_name, unsigned int comp=0) const |
virtual unsigned int | getElementIDIndexByName (const std::string &id_name) const |
bool | hasElementID (const std::string &id_name) const |
dof_id_type | maxElementID (unsigned int elem_id_index) const |
dof_id_type | minElementID (unsigned int elem_id_index) const |
bool | areElemIDsIdentical (const std::string &id_name1, const std::string &id_name2) const |
std::unordered_map< dof_id_type, std::set< dof_id_type > > | getElemIDMapping (const std::string &id_name1, const std::string &id_name2) const |
std::set< dof_id_type > | getAllElemIDs (unsigned int elem_id_index) const |
std::set< dof_id_type > | getElemIDsOnBlocks (unsigned int elem_id_index, const std::set< SubdomainID > &blks) const |
const std::unordered_map< std::string, std::vector< MooseVariableFieldBase *> > & | getCoupledVars () const |
const std::vector< MooseVariableFieldBase *> & | getCoupledMooseVars () const |
const std::vector< MooseVariable *> & | getCoupledStandardMooseVars () const |
const std::vector< VectorMooseVariable *> & | getCoupledVectorMooseVars () const |
const std::vector< ArrayMooseVariable *> & | getCoupledArrayMooseVars () const |
void | addFEVariableCoupleableVectorTag (TagID tag) |
void | addFEVariableCoupleableMatrixTag (TagID tag) |
std::set< TagID > & | getFEVariableCoupleableVectorTags () |
const std::set< TagID > & | getFEVariableCoupleableVectorTags () const |
std::set< TagID > & | getFEVariableCoupleableMatrixTags () |
const std::set< TagID > & | getFEVariableCoupleableMatrixTags () const |
auto & | getWritableCoupledVariables () const |
bool | hasWritableCoupledVariables () const |
const ADVectorVariableValue * | getADDefaultVectorValue (const std::string &var_name) const |
const ADVariableGradient & | getADDefaultGradient () const |
const ADVectorVariableGradient & | getADDefaultVectorGradient () const |
const ADVariableSecond & | getADDefaultSecond () const |
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > | getBlockMaterialProperty (const MaterialPropertyName &name) |
std::set< SubdomainID > | getMaterialPropertyBlocks (const std::string &name) |
std::vector< SubdomainName > | getMaterialPropertyBlockNames (const std::string &name) |
std::set< BoundaryID > | getMaterialPropertyBoundaryIDs (const std::string &name) |
std::vector< BoundaryName > | getMaterialPropertyBoundaryNames (const std::string &name) |
void | checkBlockAndBoundaryCompatibility (std::shared_ptr< MaterialBase > discrete) |
void | statefulPropertiesAllowed (bool) |
bool | getMaterialPropertyCalled () const |
const GenericMaterialProperty< T, is_ad > & | getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state) |
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 GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const GenericOptionalMaterialProperty< T, is_ad > & | getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalMaterialProperty< T > & | getOptionalMaterialProperty (const std::string &name, const unsigned int state=0) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalADMaterialProperty< T > & | getOptionalADMaterialProperty (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOld (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
const OptionalMaterialProperty< T > & | getOptionalMaterialPropertyOlder (const std::string &name) |
MaterialProperty< T > & | declarePropertyByName (const std::string &prop_name) |
MaterialProperty< T > & | declarePropertyByName (const std::string &prop_name) |
MaterialProperty< T > & | declareProperty (const std::string &name) |
MaterialProperty< T > & | declareProperty (const std::string &name) |
ADMaterialProperty< T > & | declareADPropertyByName (const std::string &prop_name) |
ADMaterialProperty< T > & | declareADPropertyByName (const std::string &prop_name) |
ADMaterialProperty< T > & | declareADProperty (const std::string &name) |
ADMaterialProperty< T > & | declareADProperty (const std::string &name) |
auto & | declareGenericProperty (const std::string &prop_name) |
auto & | declareGenericProperty (const std::string &prop_name) |
GenericMaterialProperty< T, is_ad > & | declareGenericPropertyByName (const std::string &prop_name) |
GenericMaterialProperty< T, is_ad > & | declareGenericPropertyByName (const std::string &prop_name) |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistribution (const std::string &name) const |
const T & | getDistribution (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) const |
const Distribution & | getDistributionByName (const DistributionName &name) const |
const T & | getDistributionByName (const std::string &name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObject (const std::string ¶m_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
bool | hasUserObjectByName (const UserObjectName &object_name) const |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValue (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOld (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
const PostprocessorValue & | getPostprocessorValueOlder (const std::string ¶m_name, const unsigned int index=0) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
virtual const PostprocessorValue & | getPostprocessorValueByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOldByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
const PostprocessorValue & | getPostprocessorValueOlderByName (const PostprocessorName &name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialProperty (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialProperty (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasADMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialProperty (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
bool | hasGenericMaterialPropertyByName (const std::string &name) |
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 |
PenetrationLocator & | getPenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order) |
PenetrationLocator & | getQuadraturePenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order) |
NearestNodeLocator & | getNearestNodeLocator (const BoundaryName &primary, const BoundaryName &secondary) |
NearestNodeLocator & | getQuadratureNearestNodeLocator (const BoundaryName &primary, const BoundaryName &secondary) |
bool | requiresGeometricSearch () const |
const Parallel::Communicator & | comm () const |
processor_id_type | n_processors () const |
processor_id_type | processor_id () const |
void | outputAndCheckDebugParameters () |
Outputs the debug parameters: _fspb_debug_stress, _fspd_debug_pm, etc and checks that they are sized correctly. More... | |
void | checkDerivatives () |
Checks the derivatives, eg dyieldFunction_dstress by using finite difference approximations. More... | |
void | checkJacobian (const RankFourTensor &E_inv, const std::vector< Real > &intnl_old) |
Checks the full Jacobian, which is just certain linear combinations of the dyieldFunction_dstress, etc, by using finite difference approximations. More... | |
void | checkSolution (const RankFourTensor &E_inv) |
Checks that Ax does equal b in the NR procedure. More... | |
Static Public Member Functions | |
static InputParameters | validParams () |
static std::deque< MaterialBase *> | buildRequiredMaterials (const Consumers &mat_consumers, const std::vector< std::shared_ptr< MaterialBase >> &mats, const bool allow_stateful) |
static bool | restricted (const std::set< BoundaryID > &ids) |
static void | sort (typename std::vector< T > &vector) |
static void | sortDFS (typename std::vector< T > &vector) |
static void | cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header) |
static std::string | deduceFunctorName (const std::string &name, const InputParameters ¶ms) |
Public Attributes | |
ALL | |
ANY | |
const ConsoleStream | _console |
Static Public Attributes | |
static constexpr PropertyValue::id_type | default_property_id |
static constexpr PropertyValue::id_type | zero_property_id |
Protected Types | |
enum | TangentOperatorEnum { elastic, linear, nonlinear } |
The type of tangent operator to return. tangent operator = d(stress_rate)/d(strain_rate). More... | |
enum | DeactivationSchemeEnum { optimized, safe, dumb, optimized_to_safe, safe_to_dumb, optimized_to_safe_to_dumb, optimized_to_dumb } |
enum | quickStep_called_from_t { computeQpStress_function, returnMap_function } |
The functions from which quickStep can be called. More... | |
enum | QP_Data_Type |
Protected Member Functions | |
virtual void | computeQpStress () |
Compute the stress and store it in the _stress material property for the current quadrature point. More... | |
virtual void | initQpStatefulProperties () |
virtual bool | reinstateLinearDependentConstraints (std::vector< bool > &deactivated_due_to_ld) |
makes all deactivated_due_to_ld false, and if >0 of them were initially true, returns true More... | |
virtual unsigned int | numberActive (const std::vector< bool > &active) |
counts the number of active constraints More... | |
virtual Real | residual2 (const std::vector< Real > &pm, const std::vector< Real > &f, const RankTwoTensor &epp, const std::vector< Real > &ic, const std::vector< bool > &active, const std::vector< bool > &deactivated_due_to_ld) |
The residual-squared. More... | |
virtual bool | returnMap (const RankTwoTensor &stress_old, RankTwoTensor &stress, const std::vector< Real > &intnl_old, std::vector< Real > &intnl, const RankTwoTensor &plastic_strain_old, RankTwoTensor &plastic_strain, const RankFourTensor &E_ijkl, const RankTwoTensor &strain_increment, std::vector< Real > &f, unsigned int &iter, bool can_revert_to_dumb, bool &linesearch_needed, bool &ld_encountered, bool &constraints_added, bool final_step, RankFourTensor &consistent_tangent_operator, std::vector< Real > &cumulative_pm) |
Implements the return map. More... | |
virtual bool | lineSearch (Real &nr_res2, RankTwoTensor &stress, const std::vector< Real > &intnl_old, std::vector< Real > &intnl, std::vector< Real > &pm, const RankFourTensor &E_inv, RankTwoTensor &delta_dp, const RankTwoTensor &dstress, const std::vector< Real > &dpm, const std::vector< Real > &dintnl, std::vector< Real > &f, RankTwoTensor &epp, std::vector< Real > &ic, const std::vector< bool > &active, const std::vector< bool > &deactivated_due_to_ld, bool &linesearch_needed) |
Performs a line search. More... | |
virtual bool | singleStep (Real &nr_res2, RankTwoTensor &stress, const std::vector< Real > &intnl_old, std::vector< Real > &intnl, std::vector< Real > &pm, RankTwoTensor &delta_dp, const RankFourTensor &E_inv, std::vector< Real > &f, RankTwoTensor &epp, std::vector< Real > &ic, std::vector< bool > &active, DeactivationSchemeEnum deactivation_scheme, bool &linesearch_needed, bool &ld_encountered) |
Performs a single Newton-Raphson + linesearch step Constraints are deactivated and the step is re-done if deactivation_scheme is set appropriately. More... | |
virtual bool | checkAdmissible (const RankTwoTensor &stress, const std::vector< Real > &intnl, std::vector< Real > &all_f) |
Checks whether the yield functions are in the admissible region. More... | |
void | buildDumbOrder (const RankTwoTensor &stress, const std::vector< Real > &intnl, std::vector< unsigned int > &dumb_order) |
Builds the order which "dumb" activation will take. More... | |
virtual void | incrementDumb (int &dumb_iteration, const std::vector< unsigned int > &dumb_order, std::vector< bool > &act) |
Increments "dumb_iteration" by 1, and sets "act" appropriately (act[alpha] = true iff alpha_th bit of dumb_iteration == 1) More... | |
virtual bool | checkKuhnTucker (const std::vector< Real > &f, const std::vector< Real > &pm, const std::vector< bool > &active) |
Checks Kuhn-Tucker conditions, and alters "active" if appropriate. More... | |
virtual void | applyKuhnTucker (const std::vector< Real > &f, const std::vector< Real > &pm, std::vector< bool > &active) |
Checks Kuhn-Tucker conditions, and alters "active" if appropriate. More... | |
virtual void | preReturnMap () |
virtual void | postReturnMap () |
virtual bool | quickStep (const RankTwoTensor &stress_old, RankTwoTensor &stress, const std::vector< Real > &intnl_old, std::vector< Real > &intnl, std::vector< Real > &pm, std::vector< Real > &cumulative_pm, const RankTwoTensor &plastic_strain_old, RankTwoTensor &plastic_strain, const RankFourTensor &E_ijkl, const RankTwoTensor &strain_increment, std::vector< Real > &yf, unsigned int &iterations, RankFourTensor &consistent_tangent_operator, const quickStep_called_from_t called_from, bool final_step) |
Attempts to find an admissible (stress, intnl) by using the customized return-map algorithms defined through the SolidMechanicsPlasticXXXX.returnMap functions. More... | |
virtual bool | plasticStep (const RankTwoTensor &stress_old, RankTwoTensor &stress, const std::vector< Real > &intnl_old, std::vector< Real > &intnl, const RankTwoTensor &plastic_strain_old, RankTwoTensor &plastic_strain, const RankFourTensor &E_ijkl, const RankTwoTensor &strain_increment, std::vector< Real > &yf, unsigned int &iterations, bool &linesearch_needed, bool &ld_encountered, bool &constraints_added, RankFourTensor &consistent_tangent_operator) |
performs a plastic step More... | |
bool | canChangeScheme (DeactivationSchemeEnum current_deactivation_scheme, bool can_revert_to_dumb) |
bool | canIncrementDumb (int dumb_iteration) |
void | changeScheme (const std::vector< bool > &initial_act, bool can_revert_to_dumb, const RankTwoTensor &initial_stress, const std::vector< Real > &intnl_old, DeactivationSchemeEnum ¤t_deactivation_scheme, std::vector< bool > &act, int &dumb_iteration, std::vector< unsigned int > &dumb_order) |
bool | canAddConstraints (const std::vector< bool > &act, const std::vector< Real > &all_f) |
unsigned int | activeCombinationNumber (const std::vector< bool > &act) |
RankFourTensor | consistentTangentOperator (const RankTwoTensor &stress, const std::vector< Real > &intnl, const RankFourTensor &E_ijkl, const std::vector< Real > &pm_this_step, const std::vector< Real > &cumulative_pm) |
Computes the consistent tangent operator (another name for the jacobian = d(stress_rate)/d(strain_rate) More... | |
virtual void | computeQpProperties () override |
virtual void | checkMaterialProperty (const std::string &name, const unsigned int state) override |
virtual const MaterialData & | materialData () const override |
virtual MaterialData & | materialData () override |
virtual const QBase & | qRule () const override |
virtual void | resetQpProperties () |
virtual const FEProblemBase & | miProblem () const |
virtual FEProblemBase & | miProblem () |
bool | isPropertyActive (const unsigned int prop_id) const |
void | registerPropName (const std::string &prop_name, bool is_get, const unsigned int state) |
void | checkExecutionStage () |
void | checkExecutionStage () |
virtual bool | hasBlockMaterialPropertyHelper (const std::string &prop_name) |
void | initializeBlockRestrictable (const MooseObject *moose_object) |
Moose::CoordinateSystemType | getBlockCoordSystem () |
bool | hasBoundaryMaterialPropertyHelper (const std::string &prop_name) const |
void | addMooseVariableDependency (MooseVariableFieldBase *var) |
void | addMooseVariableDependency (const std::vector< MooseVariableFieldBase * > &vars) |
bool | isCoupledScalar (const std::string &var_name, unsigned int i=0) const |
unsigned int | coupledScalarComponents (const std::string &var_name) const |
unsigned int | coupledScalar (const std::string &var_name, unsigned int comp=0) const |
Order | coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< is_ad > & | coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const |
const VariableValue & | coupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const |
const MooseVariableScalar * | getScalarVar (const std::string &var_name, unsigned int comp) const |
bool | checkVar (const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const |
void | validateExecutionerType (const std::string &name, const std::string &fn_name) const |
virtual void | addUserObjectDependencyHelper (const UserObject &) const |
Moose::StateArg | determineState () const |
virtual void | addPostprocessorDependencyHelper (const PostprocessorName &) const |
virtual void | addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &) const |
T & | declareRestartableData (const std::string &data_name, Args &&... args) |
ManagedValue< T > | declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
const T & | getRestartableData (const std::string &data_name) const |
T & | declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
T & | declareRecoverableData (const std::string &data_name, Args &&... args) |
T & | declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args) |
T & | declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args) |
std::string | restartableName (const std::string &data_name) const |
std::string | deduceFunctorName (const std::string &name) const |
const Moose::Functor< T > & | getFunctor (const std::string &name) |
const Moose::Functor< T > & | getFunctor (const std::string &name, THREAD_ID tid) |
const Moose::Functor< T > & | getFunctor (const std::string &name, SubProblem &subproblem) |
const Moose::Functor< T > & | getFunctor (const std::string &name, SubProblem &subproblem, THREAD_ID tid) |
bool | isFunctor (const std::string &name) const |
bool | isFunctor (const std::string &name, const SubProblem &subproblem) const |
Moose::ElemArg | makeElemArg (const Elem *elem, bool correct_skewnewss=false) const |
void | checkFunctorSupportsSideIntegration (const std::string &name, bool qp_integration) |
void | flagInvalidSolutionInternal (InvalidSolutionID _invalid_solution_id) const |
InvalidSolutionID | registerInvalidSolutionInternal (const std::string &message) const |
virtual void | coupledCallback (const std::string &, bool) const |
virtual bool | isCoupled (const std::string &var_name, unsigned int i=0) const |
virtual bool | isCoupledConstant (const std::string &var_name) const |
unsigned int | coupledComponents (const std::string &var_name) const |
VariableName | coupledName (const std::string &var_name, unsigned int comp=0) const |
std::vector< VariableName > | coupledNames (const std::string &var_name) const |
virtual unsigned int | coupled (const std::string &var_name, unsigned int comp=0) const |
std::vector< unsigned int > | coupledIndices (const std::string &var_name) const |
virtual const VariableValue & | coupledValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValues (const std::string &var_name) const |
std::vector< const VectorVariableValue *> | coupledVectorValues (const std::string &var_name) const |
const GenericVariableValue< is_ad > & | coupledGenericValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericValue (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericValue (const std::string &var_name, unsigned int comp) const |
std::vector< const GenericVariableValue< is_ad > *> | coupledGenericValues (const std::string &var_name) const |
std::vector< const GenericVariableValue< false > *> | coupledGenericValues (const std::string &var_name) const |
std::vector< const GenericVariableValue< true > *> | coupledGenericValues (const std::string &var_name) const |
const GenericVariableValue< is_ad > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableValue< false > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp) const |
const GenericVariableValue< true > & | coupledGenericDofValue (const std::string &var_name, unsigned int comp) const |
virtual const VariableValue & | coupledValueLower (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableValue *> | adCoupledValues (const std::string &var_name) const |
const ADVariableValue & | adCoupledLowerValue (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableValue & | adCoupledVectorValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVectorVariableValue *> | adCoupledVectorValues (const std::string &var_name) const |
virtual const VariableValue & | coupledVectorTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledVectorTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableValue *> | coupledVectorTagValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledVectorTagValues (const std::string &var_names, const std::string &tag_name) const |
virtual const ArrayVariableValue & | coupledVectorTagArrayValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const ArrayVariableValue & | coupledVectorTagArrayValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const ArrayVariableValue *> | coupledVectorTagArrayValues (const std::string &var_names, TagID tag) const |
std::vector< const ArrayVariableValue *> | coupledVectorTagArrayValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableGradient & | coupledVectorTagGradient (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableGradient & | coupledVectorTagGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableGradient *> | coupledVectorTagGradients (const std::string &var_names, TagID tag) const |
std::vector< const VariableGradient *> | coupledVectorTagGradients (const std::string &var_names, const std::string &tag_name) const |
virtual const ArrayVariableGradient & | coupledVectorTagArrayGradient (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const ArrayVariableGradient & | coupledVectorTagArrayGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const ArrayVariableGradient *> | coupledVectorTagArrayGradients (const std::string &var_names, TagID tag) const |
std::vector< const ArrayVariableGradient *> | coupledVectorTagArrayGradients (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableValue & | coupledVectorTagDofValue (const std::string &var_name, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledVectorTagDofValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
const ArrayVariableValue & | coupledVectorTagArrayDofValue (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledVectorTagDofValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledVectorTagDofValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VariableValue & | coupledMatrixTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const |
virtual const VariableValue & | coupledMatrixTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const |
std::vector< const VariableValue *> | coupledMatrixTagValues (const std::string &var_names, TagID tag) const |
std::vector< const VariableValue *> | coupledMatrixTagValues (const std::string &var_names, const std::string &tag_name) const |
virtual const VectorVariableValue & | coupledVectorValue (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValue (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ArrayVariableValue *> | coupledArrayValues (const std::string &var_name) const |
MooseWritableVariable & | writableVariable (const std::string &var_name, unsigned int comp=0) |
virtual VariableValue & | writableCoupledValue (const std::string &var_name, unsigned int comp=0) |
void | checkWritableVar (MooseWritableVariable *var) |
virtual const VariableValue & | coupledValueOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValuesOld (const std::string &var_name) const |
virtual const VariableValue & | coupledValueOlder (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledValuesOlder (const std::string &var_name) const |
virtual const VariableValue & | coupledValuePreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorValueOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorValueOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValueOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayValueOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradient (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableGradient *> | coupledGradients (const std::string &var_name) const |
const ADVariableGradient & | adCoupledGradient (const std::string &var_name, unsigned int comp=0) const |
const ADVariableGradient & | adCoupledGradientDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableGradient *> | adCoupledGradients (const std::string &var_name) const |
const GenericVariableGradient< is_ad > & | coupledGenericGradient (const std::string &var_name, unsigned int comp=0) const |
const GenericVariableGradient< false > & | coupledGenericGradient (const std::string &var_name, unsigned int comp) const |
const GenericVariableGradient< true > & | coupledGenericGradient (const std::string &var_name, unsigned int comp) const |
std::vector< const GenericVariableGradient< is_ad > *> | coupledGenericGradients (const std::string &var_name) const |
std::vector< const GenericVariableGradient< false > *> | coupledGenericGradients (const std::string &var_name) const |
std::vector< const GenericVariableGradient< true > *> | coupledGenericGradients (const std::string &var_name) const |
const ADVectorVariableGradient & | adCoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const |
const ADVariableSecond & | adCoupledSecond (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableSecond & | adCoupledVectorSecond (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableGradient *> | coupledGradientsOld (const std::string &var_name) const |
virtual const VariableGradient & | coupledGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientPreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableGradient & | coupledGradientDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradient (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradientOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableGradient & | coupledVectorGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradient (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableGradient & | coupledArrayGradientDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurl (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurlOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableCurl & | coupledCurlOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDiv (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDivOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableDivergence & | coupledDivOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecond (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondOlder (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableSecond & | coupledSecondPreviousNL (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledDots (const std::string &var_name) const |
virtual const VariableValue & | coupledDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDotOld (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adCoupledDot (const std::string &var_name, unsigned int comp=0) const |
std::vector< const ADVariableValue *> | adCoupledDots (const std::string &var_name) const |
const ADVariableValue & | adCoupledDotDot (const std::string &var_name, unsigned int comp=0) const |
const ADVectorVariableValue & | adCoupledVectorDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VectorVariableValue & | coupledVectorDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledVectorDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledVectorDotDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDot (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const ArrayVariableValue & | coupledArrayDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDu (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDotDotDu (const std::string &var_name, unsigned int comp=0) const |
const VariableValue & | coupledArrayDotDu (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValue (const std::string &var_name, unsigned int comp=0) const |
const Moose::ADType< T >::type & | adCoupledNodalValue (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValueOld (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValueOlder (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalValuePreviousNL (const std::string &var_name, unsigned int comp=0) const |
const T & | coupledNodalDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotDot (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledNodalDotDotOld (const std::string &var_name, unsigned int comp=0) const |
virtual const VariableValue & | coupledDofValues (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValues (const std::string &var_name) const |
virtual const VariableValue & | coupledDofValuesOld (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValuesOld (const std::string &var_name) const |
virtual const VariableValue & | coupledDofValuesOlder (const std::string &var_name, unsigned int comp=0) const |
std::vector< const VariableValue *> | coupledAllDofValuesOlder (const std::string &var_name) const |
virtual const ArrayVariableValue & | coupledArrayDofValues (const std::string &var_name, unsigned int comp=0) const |
virtual const ADVariableValue & | adCoupledDofValues (const std::string &var_name, unsigned int comp=0) const |
const ADVariableValue & | adZeroValue () const |
const ADVariableGradient & | adZeroGradient () const |
const ADVariableSecond & | adZeroSecond () const |
const GenericVariableValue< is_ad > & | genericZeroValue () |
const GenericVariableValue< false > & | genericZeroValue () |
const GenericVariableValue< true > & | genericZeroValue () |
const GenericVariableGradient< is_ad > & | genericZeroGradient () |
const GenericVariableGradient< false > & | genericZeroGradient () |
const GenericVariableGradient< true > & | genericZeroGradient () |
const GenericVariableSecond< is_ad > & | genericZeroSecond () |
const GenericVariableSecond< false > & | genericZeroSecond () |
const GenericVariableSecond< true > & | genericZeroSecond () |
const MooseVariableFieldBase * | getFEVar (const std::string &var_name, unsigned int comp) const |
const MooseVariableFieldBase * | getFieldVar (const std::string &var_name, unsigned int comp) const |
MooseVariableFieldBase * | getFieldVar (const std::string &var_name, unsigned int comp) |
const T * | getVarHelper (const std::string &var_name, unsigned int comp) const |
T * | getVarHelper (const std::string &var_name, unsigned int comp) |
MooseVariable * | getVar (const std::string &var_name, unsigned int comp) |
const MooseVariable * | getVar (const std::string &var_name, unsigned int comp) const |
VectorMooseVariable * | getVectorVar (const std::string &var_name, unsigned int comp) |
const VectorMooseVariable * | getVectorVar (const std::string &var_name, unsigned int comp) const |
ArrayMooseVariable * | getArrayVar (const std::string &var_name, unsigned int comp) |
const ArrayMooseVariable * | getArrayVar (const std::string &var_name, unsigned int comp) const |
std::vector< T > | coupledVectorHelper (const std::string &var_name, const Func &func) const |
void | markMatPropRequested (const std::string &) |
MaterialPropertyName | getMaterialPropertyName (const std::string &name) const |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const GenericMaterialProperty< T, is_ad > * | defaultGenericMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const MaterialProperty< T > * | defaultMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
const ADMaterialProperty< T > * | defaultADMaterialProperty (const std::string &name) |
virtual void | calculateConstraints (const RankTwoTensor &stress, const std::vector< Real > &intnl_old, const std::vector< Real > &intnl, const std::vector< Real > &pm, const RankTwoTensor &delta_dp, std::vector< Real > &f, std::vector< RankTwoTensor > &r, RankTwoTensor &epp, std::vector< Real > &ic, const std::vector< bool > &active) |
The constraints. More... | |
virtual void | calculateRHS (const RankTwoTensor &stress, const std::vector< Real > &intnl_old, const std::vector< Real > &intnl, const std::vector< Real > &pm, const RankTwoTensor &delta_dp, std::vector< Real > &rhs, const std::vector< bool > &active, bool eliminate_ld, std::vector< bool > &deactivated_due_to_ld) |
Calculate the RHS which is rhs = -(epp(0,0), epp(1,0), epp(1,1), epp(2,0), epp(2,1), epp(2,2), f[0], f[1], ..., f[num_f], ic[0], ic[1], ..., ic[num_ic]) More... | |
virtual void | calculateJacobian (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< Real > &pm, const RankFourTensor &E_inv, const std::vector< bool > &active, const std::vector< bool > &deactivated_due_to_ld, std::vector< std::vector< Real >> &jac) |
d(rhs)/d(dof) More... | |
virtual void | nrStep (const RankTwoTensor &stress, const std::vector< Real > &intnl_old, const std::vector< Real > &intnl, const std::vector< Real > &pm, const RankFourTensor &E_inv, const RankTwoTensor &delta_dp, RankTwoTensor &dstress, std::vector< Real > &dpm, std::vector< Real > &dintnl, const std::vector< bool > &active, std::vector< bool > &deactivated_due_to_ld) |
Performs one Newton-Raphson step. More... | |
virtual void | yieldFunction (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< Real > &f) |
The active yield function(s) More... | |
virtual void | dyieldFunction_dstress (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< RankTwoTensor > &df_dstress) |
The derivative of the active yield function(s) with respect to stress. More... | |
virtual void | dyieldFunction_dintnl (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< Real > &df_dintnl) |
The derivative of active yield function(s) with respect to their internal parameters (the user objects assume there is exactly one internal param per yield function) More... | |
virtual void | flowPotential (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< RankTwoTensor > &r) |
The active flow potential(s) - one for each yield function. More... | |
virtual void | dflowPotential_dstress (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< RankFourTensor > &dr_dstress) |
The derivative of the active flow potential(s) with respect to stress. More... | |
virtual void | dflowPotential_dintnl (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< RankTwoTensor > &dr_dintnl) |
The derivative of the active flow potentials with respect to the active internal parameters The UserObjects explicitly assume that r[alpha] is only dependent on intnl[alpha]. More... | |
virtual void | hardPotential (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< Real > &h) |
The active hardening potentials (one for each internal parameter and for each yield function) by assumption in the Userobjects, the h[a][alpha] is nonzero only if the surface alpha is part of model a, so we only calculate those here. More... | |
virtual void | dhardPotential_dstress (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< RankTwoTensor > &dh_dstress) |
The derivative of the active hardening potentials with respect to stress By assumption in the Userobjects, the h[a][alpha] is nonzero only for a = alpha, so we only calculate those here. More... | |
virtual void | dhardPotential_dintnl (const RankTwoTensor &stress, const std::vector< Real > &intnl, const std::vector< bool > &active, std::vector< Real > &dh_dintnl) |
The derivative of the active hardening potentials with respect to the active internal parameters. More... | |
virtual void | buildActiveConstraints (const std::vector< Real > &f, const RankTwoTensor &stress, const std::vector< Real > &intnl, const RankFourTensor &Eijkl, std::vector< bool > &act) |
Constructs a set of active constraints, given the yield functions, f. More... | |
unsigned int | modelNumber (unsigned int surface) |
returns the model number, given the surface number More... | |
bool | anyActiveSurfaces (int model, const std::vector< bool > &active) |
returns true if any internal surfaces of the given model are active according to 'active' More... | |
void | activeModelSurfaces (int model, const std::vector< bool > &active, std::vector< unsigned int > &active_surfaces_of_model) |
Returns the internal surface number(s) of the active surfaces of the given model This may be of size=0 if there are no active surfaces of the given model. More... | |
void | activeSurfaces (int model, const std::vector< bool > &active, std::vector< unsigned int > &active_surfaces) |
Returns the external surface number(s) of the active surfaces of the given model This may be of size=0 if there are no active surfaces of the given model. More... | |
bool | returnMapAll (const RankTwoTensor &trial_stress, const std::vector< Real > &intnl_old, const RankFourTensor &E_ijkl, Real ep_plastic_tolerance, RankTwoTensor &stress, std::vector< Real > &intnl, std::vector< Real > &pm, std::vector< Real > &cumulative_pm, RankTwoTensor &delta_dp, std::vector< Real > &yf, unsigned &num_successful_plastic_returns, unsigned &custom_model) |
Performs a returnMap for each plastic model using their inbuilt returnMap functions. More... | |
Protected Attributes | |
unsigned int | _max_iter |
Maximum number of Newton-Raphson iterations allowed. More... | |
Real | _min_stepsize |
Minimum fraction of applied strain that may be applied during adaptive stepsizing. More... | |
Real | _max_stepsize_for_dumb |
"dumb" deactivation will only be used if the stepsize falls below this quantity More... | |
bool | _ignore_failures |
Even if the returnMap fails, return the best values found for stress and internal parameters. More... | |
enum ComputeMultiPlasticityStress::TangentOperatorEnum | _tangent_operator_type |
Real | _epp_tol |
Tolerance on the plastic strain increment ("direction") constraint. More... | |
std::vector< Real > | _dummy_pm |
dummy "consistency parameters" (plastic multipliers) used in quickStep when called from computeQpStress More... | |
std::vector< Real > | _cumulative_pm |
the sum of the plastic multipliers over all the sub-steps. More... | |
enum ComputeMultiPlasticityStress::DeactivationSchemeEnum | _deactivation_scheme |
bool | _n_supplied |
User supplied the transverse direction vector. More... | |
RealVectorValue | _n_input |
the supplied transverse direction vector More... | |
RealTensorValue | _rot |
rotation matrix that takes _n to (0, 0, 1) More... | |
bool | _perform_finite_strain_rotations |
whether to perform the rotations necessary in finite-strain simulations More... | |
const std::string | _elasticity_tensor_name |
Name of the elasticity tensor material property. More... | |
const MaterialProperty< RankFourTensor > & | _elasticity_tensor |
Elasticity tensor material property. More... | |
MaterialProperty< RankTwoTensor > & | _plastic_strain |
plastic strain More... | |
const MaterialProperty< RankTwoTensor > & | _plastic_strain_old |
Old value of plastic strain. More... | |
MaterialProperty< std::vector< Real > > & | _intnl |
internal parameters More... | |
const MaterialProperty< std::vector< Real > > & | _intnl_old |
old values of internal parameters More... | |
MaterialProperty< std::vector< Real > > & | _yf |
yield functions More... | |
MaterialProperty< Real > & | _iter |
Number of Newton-Raphson iterations used in the return-map. More... | |
MaterialProperty< Real > & | _linesearch_needed |
Whether a line-search was needed in the latest Newton-Raphson process (1 if true, 0 otherwise) More... | |
MaterialProperty< Real > & | _ld_encountered |
Whether linear-dependence was encountered in the latest Newton-Raphson process (1 if true, 0 otherwise) More... | |
MaterialProperty< Real > & | _constraints_added |
Whether constraints were added in during the latest Newton-Raphson process (1 if true, 0 otherwise) More... | |
MaterialProperty< RealVectorValue > & | _n |
current value of transverse direction More... | |
const MaterialProperty< RealVectorValue > & | _n_old |
old value of transverse direction More... | |
const MaterialProperty< RankTwoTensor > & | _strain_increment |
strain increment (coming from ComputeIncrementalSmallStrain, for example) More... | |
const MaterialProperty< RankTwoTensor > & | _total_strain_old |
Old value of total strain (coming from ComputeIncrementalSmallStrain, for example) More... | |
const MaterialProperty< RankTwoTensor > & | _rotation_increment |
Rotation increment (coming from ComputeIncrementalSmallStrain, for example) More... | |
const MaterialProperty< RankTwoTensor > & | _stress_old |
Old value of stress. More... | |
const MaterialProperty< RankTwoTensor > & | _elastic_strain_old |
Old value of elastic strain. More... | |
bool | _cosserat |
whether Cosserat mechanics should be used More... | |
const MaterialProperty< RankTwoTensor > *const | _curvature |
The Cosserat curvature strain. More... | |
const MaterialProperty< RankFourTensor > *const | _elastic_flexural_rigidity_tensor |
The Cosserat elastic flexural rigidity tensor. More... | |
MaterialProperty< RankTwoTensor > *const | _couple_stress |
the Cosserat couple-stress More... | |
const MaterialProperty< RankTwoTensor > *const | _couple_stress_old |
the old value of Cosserat couple-stress More... | |
MaterialProperty< RankFourTensor > *const | _Jacobian_mult_couple |
derivative of couple-stress w.r.t. curvature More... | |
RankFourTensor | _my_elasticity_tensor |
Elasticity tensor that can be rotated by this class (ie, its not const) More... | |
RankTwoTensor | _my_strain_increment |
Strain increment that can be rotated by this class, and split into multiple increments (ie, its not const) More... | |
RankFourTensor | _my_flexural_rigidity_tensor |
Flexual rigidity tensor that can be rotated by this class (ie, its not const) More... | |
RankTwoTensor | _my_curvature |
Curvature that can be rotated by this class, and split into multiple increments (ie, its not const) More... | |
const std::string | _base_name |
Base name prepended to all material property names to allow for multi-material systems. More... | |
const MaterialProperty< RankTwoTensor > & | _mechanical_strain |
Mechanical strain material property. More... | |
MaterialProperty< RankTwoTensor > & | _stress |
Stress material property. More... | |
MaterialProperty< RankTwoTensor > & | _elastic_strain |
Elastic strain material property. More... | |
const MaterialProperty< RankTwoTensor > & | _extra_stress |
Extra stress tensor. More... | |
std::vector< const Function * > | _initial_stress_fcn |
initial stress components More... | |
MaterialProperty< RankFourTensor > & | _Jacobian_mult |
derivative of stress w.r.t. strain (_dstress_dstrain) More... | |
CURR | |
PREV | |
bool | _bnd |
bool | _neighbor |
const MooseArray< Point > & | _q_point |
const QBase *const & | _qrule |
const MooseArray< Real > & | _JxW |
const Elem *const & | _current_elem |
const SubdomainID & | _current_subdomain_id |
const unsigned int & | _current_side |
const ConstantTypeEnum | _constant_option |
SubProblem & | _subproblem |
FEProblemBase & | _fe_problem |
THREAD_ID | _tid |
Assembly & | _assembly |
unsigned int | _qp |
const MooseArray< Real > & | _coord |
const MooseArray< Point > & | _normals |
MooseMesh & | _mesh |
const Moose::CoordinateSystemType & | _coord_sys |
std::set< std::string > | _requested_props |
std::set< std::string > | _supplied_props |
std::set< unsigned int > | _supplied_prop_ids |
std::unordered_set< unsigned int > | _active_prop_ids |
const bool | _compute |
std::unordered_map< unsigned int, unsigned int > | _props_to_min_states |
std::vector< unsigned int > | _displacements |
bool | _has_stateful_property |
bool | _overrides_init_stateful_props |
const FaceInfo * | _face_info |
const bool & | _enabled |
MooseApp & | _app |
const std::string | _type |
const std::string | _name |
const InputParameters & | _pars |
Factory & | _factory |
ActionFactory & | _action_factory |
const MaterialData * | _blk_material_data |
const ExecFlagEnum & | _execute_enum |
const ExecFlagType & | _current_execute_flag |
FEProblemBase & | _sc_fe_problem |
const THREAD_ID | _sc_tid |
const Real & | _real_zero |
const VariableValue & | _scalar_zero |
const Point & | _point_zero |
std::unordered_map< std::string, std::vector< std::unique_ptr< VariableValue > > > | _default_value |
const InputParameters & | _ti_params |
FEProblemBase & | _ti_feproblem |
bool | _is_implicit |
Real & | _t |
int & | _t_step |
Real & | _dt |
Real & | _dt_old |
bool | _is_transient |
MooseApp & | _restartable_app |
const std::string | _restartable_system_name |
const THREAD_ID | _restartable_tid |
const bool | _restartable_read_only |
FEProblemBase & | _mci_feproblem |
GeometricSearchData & | _geometric_search_data |
bool | _requires_geometric_search |
const InputParameters & | _c_parameters |
const std::string & | _c_name |
const std::string & | _c_type |
FEProblemBase & | _c_fe_problem |
const SystemBase *const | _c_sys |
std::unordered_map< std::string, std::vector< MooseVariableFieldBase *> > | _coupled_vars |
std::vector< MooseVariableFieldBase *> | _coupled_moose_vars |
std::vector< MooseVariable *> | _coupled_standard_moose_vars |
std::vector< VectorMooseVariable *> | _coupled_vector_moose_vars |
std::vector< ArrayMooseVariable *> | _coupled_array_moose_vars |
std::vector< MooseVariableFV< Real > *> | _coupled_standard_fv_moose_vars |
std::vector< MooseLinearVariableFV< Real > *> | _coupled_standard_linear_fv_moose_vars |
const std::unordered_map< std::string, std::string > & | _new_to_deprecated_coupled_vars |
bool | _c_nodal |
bool | _c_is_implicit |
const bool | _c_allow_element_to_nodal_coupling |
THREAD_ID | _c_tid |
std::unordered_map< std::string, std::unique_ptr< MooseArray< DualReal > > > | _ad_default_value |
std::unordered_map< std::string, std::unique_ptr< VectorVariableValue > > | _default_vector_value |
std::unordered_map< std::string, std::unique_ptr< ArrayVariableValue > > | _default_array_value |
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADRealVectorValue > > > | _ad_default_vector_value |
VariableValue | _default_value_zero |
VariableGradient | _default_gradient |
MooseArray< ADRealVectorValue > | _ad_default_gradient |
MooseArray< ADRealTensorValue > | _ad_default_vector_gradient |
VariableSecond | _default_second |
MooseArray< ADRealTensorValue > | _ad_default_second |
const VariableValue & | _zero |
const VariablePhiValue & | _phi_zero |
const MooseArray< DualReal > & | _ad_zero |
const VariableGradient & | _grad_zero |
const MooseArray< ADRealVectorValue > & | _ad_grad_zero |
const VariablePhiGradient & | _grad_phi_zero |
const VariableSecond & | _second_zero |
const MooseArray< ADRealTensorValue > & | _ad_second_zero |
const VariablePhiSecond & | _second_phi_zero |
const VectorVariableValue & | _vector_zero |
const VectorVariableCurl & | _vector_curl_zero |
VectorVariableValue | _default_vector_value_zero |
VectorVariableGradient | _default_vector_gradient |
VectorVariableCurl | _default_vector_curl |
VectorVariableDivergence | _default_div |
ArrayVariableValue | _default_array_value_zero |
ArrayVariableGradient | _default_array_gradient |
bool | _coupleable_neighbor |
const InputParameters & | _mi_params |
const std::string | _mi_name |
const MooseObjectName | _mi_moose_object_name |
FEProblemBase & | _mi_feproblem |
SubProblem & | _mi_subproblem |
const THREAD_ID | _mi_tid |
const Moose::MaterialDataType | _material_data_type |
MaterialData & | _material_data |
bool | _stateful_allowed |
bool | _get_material_property_called |
std::vector< std::unique_ptr< PropertyValue > > | _default_properties |
std::unordered_set< unsigned int > | _material_property_dependencies |
const MaterialPropertyName | _get_suffix |
const bool | _use_interpolated_state |
const Parallel::Communicator & | _communicator |
MooseEnum | _fspb_debug |
none - don't do any debugging crash - currently inactive jacobian - check the jacobian entries jacobian_and_linear_system - check entire jacobian and check that Ax=b More... | |
RankTwoTensor | _fspb_debug_stress |
Debug the Jacobian entries at this stress. More... | |
std::vector< Real > | _fspb_debug_pm |
Debug the Jacobian entires at these plastic multipliers. More... | |
std::vector< Real > | _fspb_debug_intnl |
Debug the Jacobian entires at these internal parameters. More... | |
Real | _fspb_debug_stress_change |
Debug finite-differencing parameter for the stress. More... | |
std::vector< Real > | _fspb_debug_pm_change |
Debug finite-differencing parameters for the plastic multipliers. More... | |
std::vector< Real > | _fspb_debug_intnl_change |
Debug finite-differencing parameters for the internal parameters. More... | |
Real | _svd_tol |
Tolerance on the minimum ratio of singular values before flow-directions are deemed linearly dependent. More... | |
Real | _min_f_tol |
Minimum value of the _f_tol parameters for the Yield Function User Objects. More... | |
const InputParameters & | _params |
unsigned int | _num_models |
Number of plastic models for this material. More... | |
unsigned int | _num_surfaces |
Number of surfaces within the plastic models. More... | |
std::vector< std::vector< unsigned int > > | _surfaces_given_model |
_surfaces_given_model[model_number] = vector of surface numbers for this model More... | |
MooseEnum | _specialIC |
Allows initial set of active constraints to be chosen optimally. More... | |
std::vector< const SolidMechanicsPlasticModel * > | _f |
User objects that define the yield functions, flow potentials, etc. More... | |
Static Protected Attributes | |
static const std::string | _interpolated_old |
static const std::string | _interpolated_older |
Private Member Functions | |
RankTwoTensor | rot (const RankTwoTensor &tens) |
ComputeMultiPlasticityStress performs the return-map algorithm and associated stress updates for plastic models defined by a General User Objects.
Note that if run in debug mode you might have to use the –no-trap-fpe flag because PETSc-LAPACK-BLAS explicitly compute 0/0 and 1/0, and this causes Libmesh to trap the floating-point exceptions
Definition at line 25 of file ComputeMultiPlasticityStress.h.
|
protected |
Enumerator | |
---|---|
optimized | |
safe | |
dumb | |
optimized_to_safe | |
safe_to_dumb | |
optimized_to_safe_to_dumb | |
optimized_to_dumb |
Definition at line 74 of file ComputeMultiPlasticityStress.h.
|
protected |
The functions from which quickStep can be called.
Enumerator | |
---|---|
computeQpStress_function | |
returnMap_function |
Definition at line 440 of file ComputeMultiPlasticityStress.h.
|
protected |
The type of tangent operator to return. tangent operator = d(stress_rate)/d(strain_rate).
Enumerator | |
---|---|
elastic | |
linear | |
nonlinear |
Definition at line 49 of file ComputeMultiPlasticityStress.h.
ComputeMultiPlasticityStress::ComputeMultiPlasticityStress | ( | const InputParameters & | parameters | ) |
Definition at line 97 of file ComputeMultiPlasticityStress.C.
|
protected |
Definition at line 1572 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protectedinherited |
Returns the internal surface number(s) of the active surfaces of the given model This may be of size=0 if there are no active surfaces of the given model.
model | the model number | |
active | array with entries being 'true' if the surface is active | |
[out] | active_surfaces_of_model | the output |
Definition at line 809 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityRawComponentAssembler::dflowPotential_dintnl(), MultiPlasticityRawComponentAssembler::dflowPotential_dstress(), MultiPlasticityRawComponentAssembler::dhardPotential_dintnl(), MultiPlasticityRawComponentAssembler::dhardPotential_dstress(), MultiPlasticityRawComponentAssembler::dyieldFunction_dintnl(), MultiPlasticityRawComponentAssembler::dyieldFunction_dstress(), MultiPlasticityRawComponentAssembler::flowPotential(), MultiPlasticityRawComponentAssembler::hardPotential(), and MultiPlasticityRawComponentAssembler::yieldFunction().
|
protectedinherited |
Returns the external surface number(s) of the active surfaces of the given model This may be of size=0 if there are no active surfaces of the given model.
model | the model number | |
active | array with entries being 'true' if the surface is active | |
[out] | active_surfaces | the output |
Definition at line 798 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateConstraints().
|
protectedinherited |
returns true if any internal surfaces of the given model are active according to 'active'
Definition at line 789 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityLinearSystem::calculateRHS(), MultiPlasticityDebugger::checkSolution(), MultiPlasticityDebugger::dof_included(), MultiPlasticityLinearSystem::nrStep(), and residual2().
|
protectedvirtual |
Checks Kuhn-Tucker conditions, and alters "active" if appropriate.
Do not let the simplicity of this routine fool you! Explicitly: (1) checks that pm = 0 for all the f < 0. If not, then active is set to false for that constraint. This may be triggered if upon exit of the NR loops a constraint got deactivated due to linear dependence, and then f<0 and its pm>0. (2) checks that pm = 0 for all inactive constraints. This should always be true unless someone has screwed with the code. (3) if any pm < 0, then active is set to false for that constraint. This may be triggered if _deactivation_scheme!="optimized".
f | values of the active yield functions |
pm | values of all the plastic multipliers |
active | the active constraints (true if active) |
Definition at line 1311 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protectedvirtualinherited |
Constructs a set of active constraints, given the yield functions, f.
This uses SolidMechanicsPlasticModel::activeConstraints to identify the active constraints for each model.
f | yield functions (should be _num_surfaces of these) | |
stress | stress tensor | |
intnl | internal parameters | |
Eijkl | elasticity tensor (stress = Eijkl*strain) | |
[out] | act | the set of active constraints (will be resized to _num_surfaces) |
Definition at line 342 of file MultiPlasticityRawComponentAssembler.C.
Referenced by returnMap().
|
protected |
Builds the order which "dumb" activation will take.
stress | stress to evaluate yield functions and derivatives at | |
intnl | internal parameters to evaluate yield functions and derivatives at | |
[out] | dumb_order | dumb_order[0] will be the yield surface furthest away from (stress, intnl), dumb_order[1] will be the next yield surface, etc. The distance measure used is f/|df_dstress|. This array can then be fed into incrementDumb in order to first try the yield surfaces which are farthest away from the (stress, intnl). |
Definition at line 1522 of file ComputeMultiPlasticityStress.C.
Referenced by changeScheme(), and returnMap().
|
protectedvirtualinherited |
The constraints.
These are set to zero (or <=0 in the case of the yield functions) by the Newton-Raphson process, except in the case of linear-dependence which complicates things.
stress | The stress | |
intnl_old | old values of the internal parameters | |
intnl | internal parameters | |
pm | Current value(s) of the plasticity multiplier(s) (consistency parameters) | |
delta_dp | Change in plastic strain incurred so far during the return | |
[out] | f | Active yield function(s) |
[out] | r | Active flow directions |
[out] | epp | Plastic-strain increment constraint |
[out] | ic | Active internal-parameter constraint |
active | The active constraints. |
Definition at line 227 of file MultiPlasticityLinearSystem.C.
Referenced by MultiPlasticityLinearSystem::calculateRHS(), and lineSearch().
|
protectedvirtualinherited |
d(rhs)/d(dof)
Definition at line 366 of file MultiPlasticityLinearSystem.C.
Referenced by MultiPlasticityDebugger::checkJacobian(), MultiPlasticityDebugger::checkSolution(), and MultiPlasticityLinearSystem::nrStep().
|
protectedvirtualinherited |
Calculate the RHS which is rhs = -(epp(0,0), epp(1,0), epp(1,1), epp(2,0), epp(2,1), epp(2,2), f[0], f[1], ..., f[num_f], ic[0], ic[1], ..., ic[num_ic])
Note that the 'epp' components only contain the upper diagonal. These contain flow directions and plasticity-multipliers for all active surfaces, even the deactivated_due_to_ld surfaces. Note that the 'f' components only contain the active and not deactivated_due_to_ld surfaces Note that the 'ic' components only contain the internal constraints for models which contain active and not deactivated_due_to_ld surfaces. They contain hardening-potentials and plasticity-multipliers for the active surfaces, even the deactivated_due_to_ld surfaces
stress | The stress | |
intnl_old | old values of the internal parameters | |
intnl | internal parameters | |
pm | Current value(s) of the plasticity multiplier(s) (consistency parameters) | |
delta_dp | Change in plastic strain incurred so far during the return | |
[out] | rhs | the rhs |
active | The active constraints. | |
eliminate_ld | Check for linear dependence of constraints and put the results into deactivated_due_to_ld. Usually this should be true, but for certain debug operations it should be false | |
[out] | deactivated_due_to_ld | constraints deactivated due to linear-dependence of flow directions |
Definition at line 287 of file MultiPlasticityLinearSystem.C.
Referenced by MultiPlasticityDebugger::checkSolution(), MultiPlasticityDebugger::fdJacobian(), and MultiPlasticityLinearSystem::nrStep().
|
protected |
Definition at line 1013 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protected |
Definition at line 1023 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protected |
Definition at line 1565 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protected |
Definition at line 1048 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
protectedvirtual |
Checks whether the yield functions are in the admissible region.
stress | stress | |
intnl | internal parameters | |
[out] | all_f | the values of all the yield functions |
Definition at line 1269 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
inherited |
Checks the derivatives, eg dyieldFunction_dstress by using finite difference approximations.
Definition at line 85 of file MultiPlasticityDebugger.C.
Referenced by initQpStatefulProperties(), and plasticStep().
|
inherited |
Checks the full Jacobian, which is just certain linear combinations of the dyieldFunction_dstress, etc, by using finite difference approximations.
Definition at line 163 of file MultiPlasticityDebugger.C.
Referenced by computeQpStress(), and plasticStep().
|
protectedvirtual |
Checks Kuhn-Tucker conditions, and alters "active" if appropriate.
Do not let the simplicity of this routine fool you! Explicitly: (1) checks that pm = 0 for all the f < 0. If not, then active is set to false for that constraint. This may be triggered if upon exit of the NR loops a constraint got deactivated due to linear dependence, and then f<0 and its pm>0. (2) checks that pm = 0 for all inactive constraints. This should always be true unless someone has screwed with the code. (3) if any pm < 0, then active is set to false for that constraint. This may be triggered if _deactivation_scheme!="optimized".
f | values of the active yield functions |
pm | values of all the plastic multipliers |
active | the active constraints (true if active) |
Definition at line 1286 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
inherited |
Checks that Ax does equal b in the NR procedure.
Definition at line 371 of file MultiPlasticityDebugger.C.
Referenced by computeQpStress(), and plasticStep().
|
overrideprotectedvirtualinherited |
Reimplemented from DerivativeMaterialInterface< Material >.
Definition at line 44 of file ComputeGeneralStressBase.C.
|
protectedvirtual |
Compute the stress and store it in the _stress material property for the current quadrature point.
Implements ComputeGeneralStressBase.
Definition at line 219 of file ComputeMultiPlasticityStress.C.
|
protected |
Computes the consistent tangent operator (another name for the jacobian = d(stress_rate)/d(strain_rate)
The computations performed depend upon _tangent_operator_type
stress | The value of stress after the return map algorithm has converged |
intnl | The internal parameters after the return map has converged |
E_ijkl | The elasticity tensor (in the case of no plasticity this is the jacobian) |
pm_this_step | The plastic multipliers coming from the final strain increment. In many cases these will be equal to cumulative_pm, but in the case where the returnMap algorithm had to be performed in multiple substeps of smaller applied strain increments, pm_this_step are just the plastic multipliers for the final application of the strain incrment |
cumulative_pm | The plastic multipliers needed for this current Return (this is the sum of the plastic multipliers over all substeps if the strain increment was applied in small substeps) |
Definition at line 1583 of file ComputeMultiPlasticityStress.C.
Referenced by quickStep(), and returnMap().
|
protectedvirtualinherited |
The derivative of the active flow potentials with respect to the active internal parameters The UserObjects explicitly assume that r[alpha] is only dependent on intnl[alpha].
stress | the stress at which to calculate the flow potential | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "dr_dintnl" | |
[out] | dr_dintnl | the derivatives. dr_dintnl[alpha](i, j) = dr[alpha](i, j)/dintnl[alpha] |
Definition at line 233 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityDebugger::checkDerivatives(), and consistentTangentOperator().
|
protectedvirtualinherited |
The derivative of the active flow potential(s) with respect to stress.
stress | the stress at which to calculate the flow potential | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "dr_dstress" | |
[out] | dr_dstress | the derivative. dr_dstress[alpha](i, j, k, l) = dr[alpha](i, j)/dstress(k, l) |
Definition at line 205 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityDebugger::checkDerivatives(), and consistentTangentOperator().
|
protectedvirtualinherited |
The derivative of the active hardening potentials with respect to the active internal parameters.
stress | the stress at which to calculate the hardening potentials | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "dh_dintnl" | |
[out] | dh_dintnl | the derivatives. dh_dintnl[a][alpha][b] = dh[a][alpha]/dintnl[b]. Note that the userobjects assume that there is exactly one internal parameter per yield function, so the derivative is only nonzero for a=alpha=b, so that is all we calculate |
Definition at line 315 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian().
|
protectedvirtualinherited |
The derivative of the active hardening potentials with respect to stress By assumption in the Userobjects, the h[a][alpha] is nonzero only for a = alpha, so we only calculate those here.
stress | the stress at which to calculate the hardening potentials | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "dh_dstress" | |
[out] | dh_dstress | the derivative. dh_dstress[a](i, j) = dh[a]/dstress(k, l) |
Definition at line 287 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian().
|
protectedvirtualinherited |
The derivative of active yield function(s) with respect to their internal parameters (the user objects assume there is exactly one internal param per yield function)
stress | the stress at which to calculate the yield function | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "df_dintnl" | |
[out] | df_dintnl | the derivatives. df_dstress[alpha] = dyieldFunction[alpha]/dintnl[alpha] |
Definition at line 151 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityDebugger::checkDerivatives(), and consistentTangentOperator().
|
protectedvirtualinherited |
The derivative of the active yield function(s) with respect to stress.
stress | the stress at which to calculate the yield function | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active derivatives are put into "df_dstress" | |
[out] | df_dstress | the derivative (or derivatives in the case of multisurface plasticity). df_dstress[alpha](i, j) = dyieldFunction[alpha]/dstress(i, j) |
Definition at line 123 of file MultiPlasticityRawComponentAssembler.C.
Referenced by buildDumbOrder(), MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityDebugger::checkDerivatives(), consistentTangentOperator(), and MultiPlasticityLinearSystem::eliminateLinearDependence().
|
protectedvirtualinherited |
The active flow potential(s) - one for each yield function.
stress | the stress at which to calculate the flow potential | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active flow potentials are put into "r" | |
[out] | r | the flow potential (flow potentials in the multi-surface case) |
Definition at line 178 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateConstraints(), MultiPlasticityLinearSystem::calculateJacobian(), consistentTangentOperator(), MultiPlasticityDebugger::fddflowPotential_dintnl(), and MultiPlasticityDebugger::fddflowPotential_dstress().
|
protectedvirtualinherited |
The active hardening potentials (one for each internal parameter and for each yield function) by assumption in the Userobjects, the h[a][alpha] is nonzero only if the surface alpha is part of model a, so we only calculate those here.
stress | the stress at which to calculate the hardening potential | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active hardening potentials are put into "h" | |
[out] | h | the hardening potentials. h[alpha] = hardening potential for yield fcn alpha (and, by the above assumption we know which hardening parameter, a, this belongs to) |
Definition at line 260 of file MultiPlasticityRawComponentAssembler.C.
Referenced by MultiPlasticityLinearSystem::calculateConstraints(), MultiPlasticityLinearSystem::calculateJacobian(), and consistentTangentOperator().
|
protectedvirtual |
Increments "dumb_iteration" by 1, and sets "act" appropriately (act[alpha] = true iff alpha_th bit of dumb_iteration == 1)
[in,out] | dumb_iteration | Used to set act bitwise - the "dumb" scheme tries all possible combinations of act until a successful return |
[in] | dumb_order | dumb_order dumb_order[0] will be the yield surface furthest away from (stress, intnl), dumb_order[1] will be the next yield surface, etc. The distance measure used is f/|df_dstress|. This array can then be fed into incrementDumb in order to first try the yield surfaces which are farthest away from the (stress, intnl). |
[out] | act | active constraints |
Definition at line 1553 of file ComputeMultiPlasticityStress.C.
Referenced by changeScheme(), and returnMap().
|
protectedvirtual |
Reimplemented from ComputeGeneralStressBase.
Definition at line 189 of file ComputeMultiPlasticityStress.C.
|
protectedvirtual |
Performs a line search.
Algorithm is taken straight from "Numerical Recipes". Given the changes dstress, dpm and dintnl provided by the nrStep routine, a line-search looks for an appropriate under-relaxation that reduces the residual-squared (nr_res2).
Most variables are input/output variables: they enter the function with their values at the start of the Newton step, and they exit the function with values attained after applying the under-relaxation
[in,out] | nr_res2 | The residual-squared |
[out] | stress | The stress after returning to the yield surface |
intnl_old | The internal variables at the previous "time" step | |
[in,out] | intnl | The internal variables |
[in,out] | pm | The plasticity multiplier(s) (consistency parameter(s)) |
E_inv | inverse of the elasticity tensor | |
[in,out] | delta_dp | Change in plastic strain from start of "time" step to current configuration (plastic_strain - plastic_strain_old) |
dstress | Change in stress for a full Newton step | |
dpm | Change in plasticity multiplier for a full Newton step | |
dintnl | change in internal parameter(s) for a full Newton step | |
[in,out] | f | Yield function(s). In this routine, only the active constraints that are not deactivated_due_to_ld are contained in f. |
[in,out] | epp | Plastic strain increment constraint |
[in,out] | ic | Internal constraint. In this routine, only the active constraints that are not deactivated_due_to_ld are contained in ic. |
active | The active constraints. | |
deactivated_due_to_ld | True if a constraint has temporarily been made deactive due to linear dependence. | |
[out] | linesearch_needed | True if the full Newton-Raphson step was cut by the linesearch |
Definition at line 1389 of file ComputeMultiPlasticityStress.C.
Referenced by singleStep().
|
protectedinherited |
returns the model number, given the surface number
Definition at line 783 of file MultiPlasticityRawComponentAssembler.C.
Referenced by applyKuhnTucker(), MultiPlasticityLinearSystem::calculateJacobian(), canAddConstraints(), checkAdmissible(), checkKuhnTucker(), consistentTangentOperator(), MultiPlasticityDebugger::fddflowPotential_dintnl(), MultiPlasticityDebugger::fddyieldFunction_dintnl(), residual2(), returnMap(), and singleStep().
|
protectedvirtualinherited |
Performs one Newton-Raphson step.
The purpose here is to find the changes, dstress, dpm and dintnl according to the Newton-Raphson procedure
stress | Current value of stress | |
intnl_old | The internal variables at the previous "time" step | |
intnl | Current value of the internal variables | |
pm | Current value of the plasticity multipliers (consistency parameters) | |
E_inv | inverse of the elasticity tensor | |
delta_dp | Current value of the plastic-strain increment (ie plastic_strain - plastic_strain_old) | |
[out] | dstress | The change in stress for a full Newton step |
[out] | dpm | The change in all plasticity multipliers for a full Newton step |
[out] | dintnl | The change in all internal variables for a full Newton step |
active | The active constraints | |
[out] | deactivated_due_to_ld | The constraints deactivated due to linear-dependence of the flow directions |
Definition at line 614 of file MultiPlasticityLinearSystem.C.
Referenced by MultiPlasticityDebugger::checkSolution(), and singleStep().
|
protectedvirtual |
counts the number of active constraints
Definition at line 1259 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap(), and singleStep().
|
inherited |
Outputs the debug parameters: _fspb_debug_stress, _fspd_debug_pm, etc and checks that they are sized correctly.
Definition at line 53 of file MultiPlasticityDebugger.C.
Referenced by MultiPlasticityDebugger::checkDerivatives(), MultiPlasticityDebugger::checkJacobian(), and MultiPlasticityDebugger::checkSolution().
|
protectedvirtual |
performs a plastic step
stress_old | The value of stress at the previous "time" step | |
[out] | stress | stress after returning to the yield surface |
intnl_old | The internal variables at the previous "time" step | |
[out] | intnl | internal variables after returning to the yield surface |
plastic_strain_old | The value of plastic strain at the previous "time" step | |
[out] | plastic_strain | plastic_strain after returning to the yield surface |
E_ijkl | The elasticity tensor. | |
strain_increment | The applied strain increment | |
[out] | yf | All the yield functions at (stress, intnl) |
[out] | iterations | The total number of Newton-Raphson iterations used |
[out] | linesearch_needed | True if a linesearch was needed at any stage during the Newton-Raphson proceedure |
[out] | ld_encountered | True if a linear-dependence of the flow directions was encountered at any stage during the Newton-Raphson proceedure |
[out] | constraints_added | True if constraints were added into the active set at any stage during the Newton-Raphson proceedure |
[out] | consistent_tangent_operator | The consistent tangent operator d(stress_rate)/d(strain_rate) |
the idea in the following is to potentially subdivide the strain increment into smaller fractions, of size "step_size". First step_size = 1 is tried, and if that fails then 0.5 is tried, then 0.25, etc. As soon as a step is successful, its results are put into the "good" variables, which are used if a subsequent step fails. If >= 2 consecutive steps are successful, the step_size is increased by 1.2
The point of all this is that I hope that the time-step for the entire mesh need not be cut if there are only a few "bad" quadpoints where the return-map is difficult
Definition at line 466 of file ComputeMultiPlasticityStress.C.
Referenced by computeQpStress().
|
protectedvirtual |
Definition at line 337 of file ComputeMultiPlasticityStress.C.
Referenced by computeQpStress().
|
protectedvirtual |
Definition at line 318 of file ComputeMultiPlasticityStress.C.
Referenced by computeQpStress().
|
protectedvirtual |
Attempts to find an admissible (stress, intnl) by using the customized return-map algorithms defined through the SolidMechanicsPlasticXXXX.returnMap functions.
stress_old | The value of stress at the previous "time" step | |
[out] | stress | If returnvalue=true then this is the returned value of stress. Otherwise, this is undefined |
intnl_old | The internal variables at the previous "time" step | |
[out] | intnl | If returnvalue=true then this is the value of the internal parameters after returning. Otherwise, this is undefined |
[out] | pm | If returnvalue=true, this is the plastic multipliers needed to bring aout the return. Otherwise, this is undefined |
[in/out] | cumulative_pm If returnvalue=true, this is cumulative plastic multipliers, updated with pm. Otherwise, this is untouched by the algorithm | |
plastic_strain_old | The value of plastic strain at the previous "time" step | |
[out] | plastic_strain | If returnvalue=true, this is the new plastic strain. Otherwise it is set to plastic_strain_old |
E_ijkl | The elasticity tensor. | |
strain_increment | The applied strain increment | |
[out] | yf | If returnvalue=true, then all the yield functions at (stress, intnl). Otherwise, all the yield functions at (stress_old, intnl_old) |
[out] | iterations | Number of NR iterations used, which is always zero in the current implementation. |
called_from | This can be called from computeQpStress, in which case it can actually provde an answer to the returnmap algorithm, or from returnMap in which case it is probably only providing an answer to a particular subdivision of the returnmap algorithm. The consistent tangent operator is calculated idfferently in each case | |
final_step | The consistent tangent operator is calculated if this is true | |
[out] | consistent_tangent_operator | If final_step==true and returnvalue=true, then this is the consistent tangent operator d(stress_rate)/d(strain_rate). Otherwise it is undefined. |
Definition at line 369 of file ComputeMultiPlasticityStress.C.
Referenced by computeQpStress(), and returnMap().
|
protectedvirtual |
makes all deactivated_due_to_ld false, and if >0 of them were initially true, returns true
Definition at line 1246 of file ComputeMultiPlasticityStress.C.
Referenced by singleStep().
|
protectedvirtual |
The residual-squared.
pm | the plastic multipliers for all constraints |
f | the active yield function(s) (not including the ones that are deactivated_due_to_ld) |
epp | the plastic strain increment constraint |
ic | the active internal constraint(s) (not including the ones that are deactivated_due_to_ld) |
active | true if constraint is active |
deactivated_due_to_ld | true if constraint has been temporarily deactivated due to linear dependence of flow directions |
Definition at line 1352 of file ComputeMultiPlasticityStress.C.
Referenced by lineSearch(), and singleStep().
|
protectedvirtual |
Implements the return map.
Note that this algorithm doesn't do any rotations. In order to find the final stress and plastic_strain must be rotated using _rotation_increment. This is usually done in computeQpStress
stress_old | The value of stress at the previous "time" step | |
[out] | stress | The stress after returning to the yield surface |
intnl_old | The internal variables at the previous "time" step | |
[out] | intnl | All the internal variables after returning to the yield surface |
plastic_strain_old | The value of plastic strain at the previous "time" step | |
[out] | plastic_strain | The value of plastic strain after returning to the yield surface |
E_ijkl | The elasticity tensor. If no plasticity then stress = stress_old + E_ijkl*strain_increment | |
strain_increment | The applied strain increment | |
[out] | f | All the yield functions after returning to the yield surface |
[out] | iter | The number of Newton-Raphson iterations used |
can_revert_to_dumb | If the _deactivation_scheme is set to revert to dumb, it will only be allowed to do so if this parameter is true | |
[out] | linesearch_needed | True if a linesearch was needed at any stage during the Newton-Raphson proceedure |
[out] | ld_encountered | True if a linear-dependence of the flow directions was encountered at any stage during the Newton-Raphson proceedure |
[out] | constraints_added | True if constraints were added into the active set at any stage during the Newton-Raphson proceedure |
final_step | Each strain increment may be decomposed into a sum of smaller increments if the return-map algorithm fails. This flag indicates whether this is the last application of incremental strain | |
[out] | consistent_tangent_operator | The consistent tangent operator d(stress_rate)/d(strain_rate). This is only output if final_step=true, and the return value of returnMap is also true. |
[in,out] | cumulative_pm | Upon input: the plastic multipliers before the return map. Upon output: the plastic multipliers after this return map, if the return map was successful |
Definition at line 613 of file ComputeMultiPlasticityStress.C.
Referenced by plasticStep().
|
protectedinherited |
Performs a returnMap for each plastic model using their inbuilt returnMap functions.
Performs a returnMap for each plastic model.
This may be used to quickly ascertain whether a (trial_stress, intnl_old) configuration is admissible, or whether a single model's customized returnMap function can provide a solution to the return-map problem, or whether a full Newton-Raphson approach such as implemented in ComputeMultiPlasticityStress is needed.
There are three cases mentioned below: (A) The (trial_stress, intnl_old) configuration is admissible according to all plastic models (B) The (trial_stress, intnl_old) configuration is inadmissible to exactly one plastic model, and that model can successfully use its customized returnMap function to provide a returned (stress, intnl) configuration, and that configuration is admissible according to all plastic models (C) All other cases. This includes customized returnMap functions failing, or more than one plastic_model being inadmissible, etc
trial_stress | the trial stress | |
intnl_old | the old values of the internal parameters | |
E_ijkl | the elasticity tensor | |
ep_plastic_tolerance | the tolerance on the plastic strain | |
[out] | stress | is set to trial_stress in case (A) or (C), and the returned value of stress in case (B). |
[out] | intnl | is set to intnl_old in case (A) or (C), and the returned value of intnl in case (B) |
[out] | pm | Zero in case (A) or (C), otherwise the plastic multipliers needed to bring about the returnMap in case (B) |
[in/out] | cumulative_pm cumulative plastic multipliers, updated in case (B), otherwise left untouched | |
[out] | delta_dp | is unchanged in case (A) or (C), and is set to the change in plastic strain in case(B) |
[out] | yf | will contain the yield function values at (stress, intnl) |
[out] | num_successful_plastic_returns | will be 0 for (A) and (C), and 1 for (B) |
If all models actually signal "elastic" by returning true from their returnMap, and by returning model_plastically_active=0, then yf will contain the yield function values num_successful_plastic_returns will be zero intnl = intnl_old delta_dp will be unchanged from its input value stress will be set to trial_stress pm will be zero cumulative_pm will be unchanged return value will be true num_successful_plastic_returns = 0
If only one model signals "plastically active" by returning true from its returnMap, and by returning model_plastically_active=1, then yf will contain the yield function values num_successful_plastic_returns will be one intnl will be set by the returnMap algorithm delta_dp will be set by the returnMap algorithm stress will be set by the returnMap algorithm pm will be nonzero for the single model, and zero for other models cumulative_pm will be updated return value will be true num_successful_plastic_returns = 1
If >1 model signals "plastically active" or if >=1 model's returnMap fails, then yf will contain the yield function values num_successful_plastic_returns will be set appropriately intnl = intnl_old delta_dp will be unchanged from its input value stress will be set to trial_stress pm will be zero cumulative_pm will be unchanged return value will be true if all returnMap functions returned true, otherwise it will be false num_successful_plastic_returns is set appropriately
Definition at line 597 of file MultiPlasticityRawComponentAssembler.C.
Referenced by quickStep().
|
private |
Definition at line 310 of file ComputeMultiPlasticityStress.C.
Referenced by computeQpStress().
|
protectedvirtual |
Performs a single Newton-Raphson + linesearch step Constraints are deactivated and the step is re-done if deactivation_scheme is set appropriately.
[in,out] | nr_res2 | Residual-squared that the line-search will reduce |
[in,out] | stress | stress |
[in] | intnl_old | old values of the internal parameters |
[in,out] | intnl | internal parameters |
[in,out] | pm | plastic multipliers |
[in,out] | delta_dp | Change in plastic strain from start of "time" step to current configuration (plastic_strain - plastic_strain_old) |
[in] | E_inv | Inverse of the elasticity tensor |
[in,out] | f | Yield function(s). Upon successful exit only the active constraints are contained in f |
[in,out] | epp | Plastic strain increment constraint |
[in,out] | ic | Internal constraint. Upon successful exit only the active constraints are contained in ic |
active | The active constraints. This is may be modified, depending upon deactivation_scheme | |
deactivation_scheme | The scheme used for deactivating constraints | |
[out] | linesearch_needed | True if a linesearch was employed during this Newton-Raphson step |
[out] | ld_encountered | True if a linear-dependence of the flow directions was encountered at any stage during the Newton-Raphson proceedure |
Definition at line 1080 of file ComputeMultiPlasticityStress.C.
Referenced by returnMap().
|
static |
Definition at line 22 of file ComputeMultiPlasticityStress.C.
|
protectedvirtualinherited |
The active yield function(s)
stress | the stress at which to calculate the yield function | |
intnl | vector of internal parameters | |
active | set of active constraints - only the active yield functions are put into "f" | |
[out] | f | the yield function (or functions in the case of multisurface plasticity) |
Definition at line 96 of file MultiPlasticityRawComponentAssembler.C.
Referenced by buildDumbOrder(), MultiPlasticityLinearSystem::calculateConstraints(), checkAdmissible(), MultiPlasticityDebugger::fddyieldFunction_dintnl(), MultiPlasticityDebugger::fddyieldFunction_dstress(), and returnMap().
|
protectedinherited |
Base name prepended to all material property names to allow for multi-material systems.
Definition at line 43 of file ComputeGeneralStressBase.h.
Referenced by ComputeLinearElasticStress::initialSetup(), and ComputeCosseratLinearElasticStress::initialSetup().
|
protected |
Whether constraints were added in during the latest Newton-Raphson process (1 if true, 0 otherwise)
Definition at line 127 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
whether Cosserat mechanics should be used
Definition at line 151 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), initQpStatefulProperties(), postReturnMap(), and preReturnMap().
|
protected |
the Cosserat couple-stress
Definition at line 160 of file ComputeMultiPlasticityStress.h.
|
protected |
the old value of Cosserat couple-stress
Definition at line 163 of file ComputeMultiPlasticityStress.h.
|
protected |
the sum of the plastic multipliers over all the sub-steps.
This is used for calculating the consistent tangent operator
Definition at line 66 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and plasticStep().
|
protected |
The Cosserat curvature strain.
Definition at line 154 of file ComputeMultiPlasticityStress.h.
|
protected |
Referenced by canChangeScheme(), changeScheme(), ComputeMultiPlasticityStress(), and returnMap().
|
protected |
dummy "consistency parameters" (plastic multipliers) used in quickStep when called from computeQpStress
Definition at line 60 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
The Cosserat elastic flexural rigidity tensor.
Definition at line 157 of file ComputeMultiPlasticityStress.h.
|
protectedinherited |
Elastic strain material property.
Definition at line 50 of file ComputeGeneralStressBase.h.
Referenced by ComputeSmearedCrackingStress::computeCrackStrainAndOrientation(), ComputeLinearElasticStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), and ComputeGeneralStressBase::initQpStatefulProperties().
|
protected |
Old value of elastic strain.
Definition at line 148 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protected |
Elasticity tensor material property.
Definition at line 100 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protected |
Name of the elasticity tensor material property.
Definition at line 98 of file ComputeMultiPlasticityStress.h.
|
protected |
Tolerance on the plastic strain increment ("direction") constraint.
Definition at line 57 of file ComputeMultiPlasticityStress.h.
Referenced by ComputeMultiPlasticityStress(), quickStep(), and residual2().
|
protectedinherited |
Extra stress tensor.
Definition at line 53 of file ComputeGeneralStressBase.h.
Referenced by ComputeGeneralStressBase::computeQpProperties().
|
protectedinherited |
User objects that define the yield functions, flow potentials, etc.
Definition at line 70 of file MultiPlasticityRawComponentAssembler.h.
Referenced by MultiPlasticityRawComponentAssembler::activeModelSurfaces(), MultiPlasticityRawComponentAssembler::activeSurfaces(), MultiPlasticityRawComponentAssembler::anyActiveSurfaces(), applyKuhnTucker(), MultiPlasticityRawComponentAssembler::buildActiveConstraints(), MultiPlasticityRawComponentAssembler::buildActiveConstraintsJoint(), MultiPlasticityRawComponentAssembler::buildActiveConstraintsRock(), canAddConstraints(), checkAdmissible(), checkKuhnTucker(), MultiPlasticityRawComponentAssembler::dflowPotential_dintnl(), MultiPlasticityRawComponentAssembler::dflowPotential_dstress(), MultiPlasticityRawComponentAssembler::dhardPotential_dintnl(), MultiPlasticityRawComponentAssembler::dhardPotential_dstress(), MultiPlasticityRawComponentAssembler::dyieldFunction_dintnl(), MultiPlasticityRawComponentAssembler::dyieldFunction_dstress(), MultiPlasticityRawComponentAssembler::flowPotential(), MultiPlasticityRawComponentAssembler::hardPotential(), MultiPlasticityLinearSystem::MultiPlasticityLinearSystem(), MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler(), quickStep(), residual2(), returnMap(), MultiPlasticityRawComponentAssembler::returnMapAll(), singleStep(), and MultiPlasticityRawComponentAssembler::yieldFunction().
|
protectedinherited |
none - don't do any debugging crash - currently inactive jacobian - check the jacobian entries jacobian_and_linear_system - check entire jacobian and check that Ax=b
Definition at line 57 of file MultiPlasticityDebugger.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protectedinherited |
Debug the Jacobian entires at these internal parameters.
Definition at line 66 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::checkDerivatives(), MultiPlasticityDebugger::checkJacobian(), MultiPlasticityDebugger::checkSolution(), MultiPlasticityDebugger::outputAndCheckDebugParameters(), and plasticStep().
|
protectedinherited |
Debug finite-differencing parameters for the internal parameters.
Definition at line 75 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::fddflowPotential_dintnl(), MultiPlasticityDebugger::fddyieldFunction_dintnl(), MultiPlasticityDebugger::fdJacobian(), and MultiPlasticityDebugger::outputAndCheckDebugParameters().
|
protectedinherited |
Debug the Jacobian entires at these plastic multipliers.
Definition at line 63 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::checkJacobian(), MultiPlasticityDebugger::checkSolution(), MultiPlasticityDebugger::outputAndCheckDebugParameters(), and plasticStep().
|
protectedinherited |
Debug finite-differencing parameters for the plastic multipliers.
Definition at line 72 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::fdJacobian(), and MultiPlasticityDebugger::outputAndCheckDebugParameters().
|
protectedinherited |
Debug the Jacobian entries at this stress.
Definition at line 60 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::checkDerivatives(), MultiPlasticityDebugger::checkJacobian(), MultiPlasticityDebugger::checkSolution(), MultiPlasticityDebugger::outputAndCheckDebugParameters(), and plasticStep().
|
protectedinherited |
Debug finite-differencing parameter for the stress.
Definition at line 69 of file MultiPlasticityDebugger.h.
Referenced by MultiPlasticityDebugger::fddflowPotential_dstress(), MultiPlasticityDebugger::fddyieldFunction_dstress(), MultiPlasticityDebugger::fdJacobian(), and MultiPlasticityDebugger::outputAndCheckDebugParameters().
|
protected |
Even if the returnMap fails, return the best values found for stress and internal parameters.
Definition at line 46 of file ComputeMultiPlasticityStress.h.
Referenced by plasticStep().
|
protectedinherited |
initial stress components
Definition at line 56 of file ComputeGeneralStressBase.h.
|
protected |
internal parameters
Definition at line 109 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
old values of internal parameters
Definition at line 112 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and plasticStep().
|
protected |
Number of Newton-Raphson iterations used in the return-map.
Definition at line 118 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protectedinherited |
derivative of stress w.r.t. strain (_dstress_dstrain)
Definition at line 59 of file ComputeGeneralStressBase.h.
Referenced by ComputeStrainIncrementBasedStress::computeQpJacobian(), FiniteStrainHyperElasticViscoPlastic::computeQpJacobian(), ComputeMultipleInelasticCosseratStress::computeQpJacobianMult(), ComputeMultipleInelasticStressBase::computeQpJacobianMult(), ComputeLinearElasticStress::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleCrystalPlasticityStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), ComputeLinearElasticPFFractureStress::computeStressSpectral(), FiniteStrainUObasedCP::elasticTangentModuli(), FiniteStrainUObasedCP::elastoPlasticTangentModuli(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), postReturnMap(), FiniteStrainCrystalPlasticity::postSolveQp(), FiniteStrainCrystalPlasticity::preSolveQp(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().
|
protected |
derivative of couple-stress w.r.t. curvature
Definition at line 166 of file ComputeMultiPlasticityStress.h.
|
protected |
Whether linear-dependence was encountered in the latest Newton-Raphson process (1 if true, 0 otherwise)
Definition at line 124 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
Whether a line-search was needed in the latest Newton-Raphson process (1 if true, 0 otherwise)
Definition at line 121 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
Maximum number of Newton-Raphson iterations allowed.
Definition at line 37 of file ComputeMultiPlasticityStress.h.
Referenced by returnMap().
|
protected |
"dumb" deactivation will only be used if the stepsize falls below this quantity
Definition at line 43 of file ComputeMultiPlasticityStress.h.
Referenced by plasticStep().
|
protectedinherited |
Mechanical strain material property.
Definition at line 46 of file ComputeGeneralStressBase.h.
Referenced by ComputeStrainIncrementBasedStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protectedinherited |
Minimum value of the _f_tol parameters for the Yield Function User Objects.
Definition at line 131 of file MultiPlasticityLinearSystem.h.
Referenced by MultiPlasticityLinearSystem::eliminateLinearDependence(), and MultiPlasticityLinearSystem::MultiPlasticityLinearSystem().
|
protected |
Minimum fraction of applied strain that may be applied during adaptive stepsizing.
Definition at line 40 of file ComputeMultiPlasticityStress.h.
Referenced by plasticStep().
|
protected |
Curvature that can be rotated by this class, and split into multiple increments (ie, its not const)
Definition at line 178 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), postReturnMap(), and preReturnMap().
|
protected |
Elasticity tensor that can be rotated by this class (ie, its not const)
Definition at line 169 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), plasticStep(), postReturnMap(), and preReturnMap().
|
protected |
Flexual rigidity tensor that can be rotated by this class (ie, its not const)
Definition at line 175 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), postReturnMap(), and preReturnMap().
|
protected |
Strain increment that can be rotated by this class, and split into multiple increments (ie, its not const)
Definition at line 172 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), postReturnMap(), and preReturnMap().
|
protected |
current value of transverse direction
Definition at line 130 of file ComputeMultiPlasticityStress.h.
Referenced by initQpStatefulProperties(), postReturnMap(), and preReturnMap().
|
protected |
the supplied transverse direction vector
Definition at line 89 of file ComputeMultiPlasticityStress.h.
Referenced by ComputeMultiPlasticityStress(), and initQpStatefulProperties().
|
protected |
old value of transverse direction
Definition at line 133 of file ComputeMultiPlasticityStress.h.
Referenced by postReturnMap().
|
protected |
User supplied the transverse direction vector.
Definition at line 86 of file ComputeMultiPlasticityStress.h.
Referenced by ComputeMultiPlasticityStress(), postReturnMap(), preReturnMap(), and rot().
|
protectedinherited |
Number of plastic models for this material.
Definition at line 52 of file MultiPlasticityRawComponentAssembler.h.
Referenced by MultiPlasticityRawComponentAssembler::buildActiveConstraints(), MultiPlasticityLinearSystem::calculateConstraints(), MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityLinearSystem::calculateRHS(), MultiPlasticityDebugger::checkSolution(), MultiPlasticityRawComponentAssembler::dflowPotential_dintnl(), MultiPlasticityRawComponentAssembler::dflowPotential_dstress(), MultiPlasticityRawComponentAssembler::dhardPotential_dintnl(), MultiPlasticityRawComponentAssembler::dhardPotential_dstress(), MultiPlasticityRawComponentAssembler::dyieldFunction_dintnl(), MultiPlasticityRawComponentAssembler::dyieldFunction_dstress(), MultiPlasticityDebugger::fddflowPotential_dintnl(), MultiPlasticityDebugger::fddyieldFunction_dintnl(), MultiPlasticityDebugger::fdJacobian(), MultiPlasticityRawComponentAssembler::flowPotential(), MultiPlasticityRawComponentAssembler::hardPotential(), initQpStatefulProperties(), MultiPlasticityLinearSystem::MultiPlasticityLinearSystem(), MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler(), MultiPlasticityLinearSystem::nrStep(), MultiPlasticityDebugger::outputAndCheckDebugParameters(), plasticStep(), residual2(), returnMap(), MultiPlasticityRawComponentAssembler::returnMapAll(), singleStep(), and MultiPlasticityRawComponentAssembler::yieldFunction().
|
protectedinherited |
Number of surfaces within the plastic models.
For many situations this will be = _num_models since each model will contain just one surface. More generally it is >= _num_models. For instance, Mohr-Coulomb is a single model with 6 surfaces
Definition at line 61 of file MultiPlasticityRawComponentAssembler.h.
Referenced by activeCombinationNumber(), applyKuhnTucker(), MultiPlasticityRawComponentAssembler::buildActiveConstraints(), buildDumbOrder(), MultiPlasticityLinearSystem::calculateConstraints(), MultiPlasticityLinearSystem::calculateJacobian(), MultiPlasticityLinearSystem::calculateRHS(), canAddConstraints(), canIncrementDumb(), changeScheme(), checkAdmissible(), MultiPlasticityDebugger::checkDerivatives(), MultiPlasticityDebugger::checkJacobian(), checkKuhnTucker(), MultiPlasticityDebugger::checkSolution(), ComputeMultiPlasticityStress(), computeQpStress(), consistentTangentOperator(), MultiPlasticityRawComponentAssembler::dflowPotential_dintnl(), MultiPlasticityRawComponentAssembler::dflowPotential_dstress(), MultiPlasticityRawComponentAssembler::dhardPotential_dintnl(), MultiPlasticityRawComponentAssembler::dhardPotential_dstress(), MultiPlasticityDebugger::dof_included(), MultiPlasticityRawComponentAssembler::dyieldFunction_dintnl(), MultiPlasticityRawComponentAssembler::dyieldFunction_dstress(), MultiPlasticityLinearSystem::eliminateLinearDependence(), MultiPlasticityDebugger::fddflowPotential_dintnl(), MultiPlasticityDebugger::fddflowPotential_dstress(), MultiPlasticityDebugger::fddyieldFunction_dintnl(), MultiPlasticityDebugger::fddyieldFunction_dstress(), MultiPlasticityDebugger::fdJacobian(), MultiPlasticityRawComponentAssembler::flowPotential(), MultiPlasticityRawComponentAssembler::hardPotential(), incrementDumb(), initQpStatefulProperties(), MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler(), MultiPlasticityLinearSystem::nrStep(), numberActive(), MultiPlasticityDebugger::outputAndCheckDebugParameters(), plasticStep(), reinstateLinearDependentConstraints(), residual2(), returnMap(), MultiPlasticityRawComponentAssembler::returnMapAll(), singleStep(), and MultiPlasticityRawComponentAssembler::yieldFunction().
|
protectedinherited |
Definition at line 49 of file MultiPlasticityRawComponentAssembler.h.
Referenced by MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler().
|
protected |
whether to perform the rotations necessary in finite-strain simulations
Definition at line 95 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protected |
plastic strain
Definition at line 103 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), initQpStatefulProperties(), and postReturnMap().
|
protected |
Old value of plastic strain.
Definition at line 106 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protected |
rotation matrix that takes _n to (0, 0, 1)
Definition at line 92 of file ComputeMultiPlasticityStress.h.
Referenced by postReturnMap(), preReturnMap(), and rot().
|
protected |
Rotation increment (coming from ComputeIncrementalSmallStrain, for example)
Definition at line 142 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and postReturnMap().
|
protectedinherited |
Allows initial set of active constraints to be chosen optimally.
Definition at line 67 of file MultiPlasticityRawComponentAssembler.h.
Referenced by MultiPlasticityRawComponentAssembler::buildActiveConstraints(), and MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler().
|
protected |
strain increment (coming from ComputeIncrementalSmallStrain, for example)
Definition at line 136 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protectedinherited |
Stress material property.
Definition at line 48 of file ComputeGeneralStressBase.h.
Referenced by ComputeMultipleInelasticCosseratStress::computeAdmissibleState(), ComputeMultipleInelasticStressBase::computeAdmissibleState(), ComputeGeneralStressBase::computeQpProperties(), ComputeStrainIncrementBasedStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleCrystalPlasticityStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStress(), AbaqusUMATStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), ComputeLinearElasticPFFractureStress::computeStressSpectral(), ComputeCreepPlasticityStress::computeTangentOperators(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), ComputeGeneralStressBase::initQpStatefulProperties(), FiniteStrainCrystalPlasticity::initQpStatefulProperties(), FiniteStrainUObasedCP::initQpStatefulProperties(), FiniteStrainHyperElasticViscoPlastic::initQpStatefulProperties(), postReturnMap(), FiniteStrainUObasedCP::postSolveQp(), FiniteStrainHyperElasticViscoPlastic::postSolveQp(), FiniteStrainCrystalPlasticity::postSolveQp(), ComputeSmearedCrackingStress::updateCrackingStateAndStress(), ComputeMultipleInelasticStress::updateQpState(), ComputeCreepPlasticityStress::updateQpState(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().
|
protected |
Old value of stress.
Definition at line 145 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress().
|
protectedinherited |
_surfaces_given_model[model_number] = vector of surface numbers for this model
Definition at line 64 of file MultiPlasticityRawComponentAssembler.h.
Referenced by MultiPlasticityRawComponentAssembler::activeModelSurfaces(), MultiPlasticityRawComponentAssembler::activeSurfaces(), MultiPlasticityRawComponentAssembler::anyActiveSurfaces(), MultiPlasticityRawComponentAssembler::MultiPlasticityRawComponentAssembler(), quickStep(), and MultiPlasticityRawComponentAssembler::returnMapAll().
|
protectedinherited |
Tolerance on the minimum ratio of singular values before flow-directions are deemed linearly dependent.
Definition at line 128 of file MultiPlasticityLinearSystem.h.
Referenced by MultiPlasticityLinearSystem::eliminateLinearDependence().
|
protected |
Referenced by consistentTangentOperator(), and quickStep().
|
protected |
Old value of total strain (coming from ComputeIncrementalSmallStrain, for example)
Definition at line 139 of file ComputeMultiPlasticityStress.h.
|
protected |
yield functions
Definition at line 115 of file ComputeMultiPlasticityStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().