https://mooseframework.inl.gov
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
GrandPotentialSinteringMaterial Class Reference

This material calculates necessary parameters for the grand potential sintering model. More...

#include <GrandPotentialSinteringMaterial.h>

Inheritance diagram for GrandPotentialSinteringMaterial:
[legend]

Public Types

enum  ConstantTypeEnum { ConstantTypeEnum::NONE, ConstantTypeEnum::ELEMENT, ConstantTypeEnum::SUBDOMAIN }
 
enum  TEST_TYPE
 
typedef DerivativeMaterialPropertyNameInterface::SymbolName SymbolName
 
typedef DataFileName DataFileParameterType
 

Public Member Functions

 GrandPotentialSinteringMaterial (const InputParameters &parameters)
 
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_typegetElementID (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_typegetElementIDNeighbor (const std::string &id_parameter_name, unsigned int comp=0) const override
 
virtual const dof_id_typegetElementIDByName (const std::string &id_parameter_name) const override
 
virtual const dof_id_typegetElementIDNeighborByName (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)
 
MaterialBasegetMaterial (const std::string &name)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false, bool no_dep=false)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
MaterialBasegetMaterialByName (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< MooseObjectgetSharedPtr ()
 
std::shared_ptr< const MooseObjectgetSharedPtr () const
 
MooseAppgetMooseApp () 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 &parameter_name) const
 
const InputParametersparameters () const
 
MooseObjectName uniqueName () const
 
const T & getParam (const std::string &name) const
 
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 
const T * queryParam (const std::string &name) const
 
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 
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 &param, Args... args) const
 
void paramWarning (const std::string &param, Args... args) const
 
void paramInfo (const std::string &param, Args... args) const
 
void connectControllableParams (const std::string &parameter, 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 &param) const
 
std::string getDataFileNameByName (const std::string &relative_path) const
 
std::string getDataFilePath (const std::string &relative_path) 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 (const std::set< 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 ExecFlagEnumgetExecuteOnEnum () 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)
 
void addMooseVariableDependency (MooseVariableFieldBase *var)
 
void addMooseVariableDependency (const std::vector< MooseVariableFieldBase * > &vars)
 
const std::vector< MooseVariableScalar *> & getCoupledMooseScalarVars ()
 
const std::set< TagID > & getScalarVariableCoupleableVectorTags () const
 
const std::set< TagID > & getScalarVariableCoupleableMatrixTags () const
 
const ADVariableValuegetADDefaultValue (const std::string &var_name) const
 
const FunctiongetFunction (const std::string &name) const
 
const FunctiongetFunctionByName (const FunctionName &name) const
 
bool hasFunction (const std::string &param_name) const
 
bool hasFunctionByName (const FunctionName &name) const
 
UserObjectName getUserObjectName (const std::string &param_name) const
 
const T & getUserObject (const std::string &param_name, bool is_dependency=true) const
 
const T & getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const
 
const UserObjectgetUserObjectBase (const std::string &param_name, bool is_dependency=true) const
 
const UserObjectgetUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const
 
bool isImplicit ()
 
Moose::StateArg determineState () const
 
bool isDefaultPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
bool hasPostprocessor (const std::string &param_name, const unsigned int index=0) const
 
bool hasPostprocessorByName (const PostprocessorName &name) const
 
std::size_t coupledPostprocessors (const std::string &param_name) const
 
const PostprocessorName & getPostprocessorName (const std::string &param_name, const unsigned int index=0) const
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 
bool hasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 
bool hasVectorPostprocessor (const std::string &param_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 &param_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_typegetAllElemIDs (unsigned int elem_id_index) const
 
std::set< dof_id_typegetElemIDsOnBlocks (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 ADVectorVariableValuegetADDefaultVectorValue (const std::string &var_name) const
 
const ADVariableGradientgetADDefaultGradient () const
 
const ADVectorVariableGradientgetADDefaultVectorGradient () const
 
const ADVariableSecondgetADDefaultSecond () const
 
const ADVectorVariableCurlgetADDefaultCurl () const
 
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > getBlockMaterialProperty (const MaterialPropertyName &name)
 
std::set< SubdomainIDgetMaterialPropertyBlocks (const std::string &name)
 
std::vector< SubdomainName > getMaterialPropertyBlockNames (const std::string &name)
 
std::set< BoundaryIDgetMaterialPropertyBoundaryIDs (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 DistributiongetDistribution (const std::string &name) const
 
const T & getDistribution (const std::string &name) const
 
const DistributiongetDistribution (const std::string &name) const
 
const T & getDistribution (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const T & getDistributionByName (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 
const T & getDistributionByName (const std::string &name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObject (const std::string &param_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 PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_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
 
PenetrationLocatorgetPenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order)
 
PenetrationLocatorgetQuadraturePenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order)
 
NearestNodeLocatorgetNearestNodeLocator (const BoundaryName &primary, const BoundaryName &secondary)
 
NearestNodeLocatorgetQuadratureNearestNodeLocator (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
 

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 &params)
 

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  QP_Data_Type
 

Protected Member Functions

virtual void computeQpProperties ()
 
virtual void checkMaterialProperty (const std::string &name, const unsigned int state) override
 
virtual const MaterialDatamaterialData () const override
 
virtual MaterialDatamaterialData () override
 
virtual const QBase & qRule () const override
 
virtual void resetQpProperties ()
 
virtual void initQpStatefulProperties ()
 
virtual const FEProblemBasemiProblem () const
 
virtual FEProblemBasemiProblem ()
 
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 ()
 
void markMatPropRequested (const std::string &)
 
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
 
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
 
libMesh::Order coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledScalarValue (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 VariableValuecoupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 
const VariableValuecoupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 
const VariableValuecoupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const
 
const MooseVariableScalargetScalarVar (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
 
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 (const InvalidSolutionID invalid_solution_id) const
 
InvalidSolutionID registerInvalidSolutionInternal (const std::string &message, const bool warning) 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 intcoupledIndices (const std::string &var_name) const
 
virtual const VariableValuecoupledValue (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
 
const GenericVectorVariableValue< is_ad > & coupledGenericVectorValue (const std::string &var_name, unsigned int comp=0) const
 
const GenericVectorVariableValue< false > & coupledGenericVectorValue (const std::string &var_name, unsigned int comp) const
 
const GenericVectorVariableValue< true > & coupledGenericVectorValue (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
 
const GenericVariableValue< is_ad > & coupledGenericDot (const std::string &var_name, unsigned int comp=0) const
 
const GenericVariableValue< false > & coupledGenericDot (const std::string &var_name, unsigned int comp) const
 
const GenericVariableValue< true > & coupledGenericDot (const std::string &var_name, unsigned int comp) const
 
const GenericVariableValue< is_ad > & coupledGenericDotDot (const std::string &var_name, unsigned int comp=0) const
 
const GenericVariableValue< false > & coupledGenericDotDot (const std::string &var_name, unsigned int comp) const
 
const GenericVariableValue< true > & coupledGenericDotDot (const std::string &var_name, unsigned int comp) const
 
virtual const VariableValuecoupledValueLower (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledValue (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const ADVariableValue *> adCoupledValues (const std::string &var_name) const
 
const ADVariableValueadCoupledLowerValue (const std::string &var_name, unsigned int comp=0) const
 
const ADVectorVariableValueadCoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const ADVectorVariableValue *> adCoupledVectorValues (const std::string &var_name) const
 
virtual const VariableValuecoupledVectorTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 
virtual const VariableValuecoupledVectorTagValue (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 ArrayVariableValuecoupledVectorTagArrayValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 
virtual const ArrayVariableValuecoupledVectorTagArrayValue (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 VariableGradientcoupledVectorTagGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 
virtual const VariableGradientcoupledVectorTagGradient (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 ArrayVariableGradientcoupledVectorTagArrayGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 
virtual const ArrayVariableGradientcoupledVectorTagArrayGradient (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 VariableValuecoupledVectorTagDofValue (const std::string &var_name, TagID tag, unsigned int index=0) const
 
virtual const VariableValuecoupledVectorTagDofValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
const ArrayVariableValuecoupledVectorTagArrayDofValue (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 VariableValuecoupledMatrixTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 
virtual const VariableValuecoupledMatrixTagValue (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 VectorVariableValuecoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayValue (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const ArrayVariableValue *> coupledArrayValues (const std::string &var_name) const
 
MooseWritableVariablewritableVariable (const std::string &var_name, unsigned int comp=0)
 
virtual VariableValuewritableCoupledValue (const std::string &var_name, unsigned int comp=0)
 
void checkWritableVar (MooseWritableVariable *var)
 
virtual const VariableValuecoupledValueOld (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledValuesOld (const std::string &var_name) const
 
std::vector< const VectorVariableValue *> coupledVectorValuesOld (const std::string &var_name) const
 
virtual const VariableValuecoupledValueOlder (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledValuesOlder (const std::string &var_name) const
 
virtual const VariableValuecoupledValuePreviousNL (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorValueOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorValueOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayValueOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayValueOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledGradient (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableGradient *> coupledGradients (const std::string &var_name) const
 
const ADVariableGradientadCoupledGradient (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableGradientadCoupledGradientDot (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 ADVectorVariableGradientadCoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableSecondadCoupledSecond (const std::string &var_name, unsigned int comp=0) const
 
const ADVectorVariableSecondadCoupledVectorSecond (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledGradientOld (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableGradient *> coupledGradientsOld (const std::string &var_name) const
 
virtual const VariableGradientcoupledGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledGradientPreviousNL (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledGradientDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledGradientDotDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayGradientDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableCurlcoupledCurl (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableCurlcoupledCurlOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableCurlcoupledCurlOlder (const std::string &var_name, unsigned int comp=0) const
 
const ADVectorVariableCurladCoupledCurl (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableDivergencecoupledDiv (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableDivergencecoupledDivOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableDivergencecoupledDivOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledSecond (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledSecondOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledSecondOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledSecondPreviousNL (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDot (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledDots (const std::string &var_name) const
 
virtual const VariableValuecoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadCoupledDot (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const ADVariableValue *> adCoupledDots (const std::string &var_name) const
 
const ADVariableValueadCoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 
const ADVectorVariableValueadCoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorDotDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableValuecoupledVectorDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledVectorDotDu (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledVectorDotDotDu (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayDotDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDotDu (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDotDotDu (const std::string &var_name, unsigned int comp=0) const
 
const VariableValuecoupledArrayDotDu (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 >::typeadCoupledNodalValue (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 VariableValuecoupledNodalDotDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNodalDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNodalDotDotOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledAllDofValues (const std::string &var_name) const
 
virtual const VariableValuecoupledDofValuesOld (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledAllDofValuesOld (const std::string &var_name) const
 
virtual const VariableValuecoupledDofValuesOlder (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledAllDofValuesOlder (const std::string &var_name) const
 
virtual const ArrayVariableValuecoupledArrayDofValues (const std::string &var_name, unsigned int comp=0) const
 
virtual const ADVariableValueadCoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 
const ADVariableValueadZeroValue () const
 
const ADVariableGradientadZeroGradient () const
 
const ADVariableSecondadZeroSecond () 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 MooseVariableFieldBasegetFEVar (const std::string &var_name, unsigned int comp) const
 
const MooseVariableFieldBasegetFieldVar (const std::string &var_name, unsigned int comp) const
 
MooseVariableFieldBasegetFieldVar (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)
 
MooseVariablegetVar (const std::string &var_name, unsigned int comp)
 
const MooseVariablegetVar (const std::string &var_name, unsigned int comp) const
 
VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp)
 
const VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp) const
 
ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp)
 
const ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp) const
 
std::vector< T > coupledVectorHelper (const std::string &var_name, const Func &func) const
 
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)
 

Protected Attributes

const unsigned int _neta
 number of solid phase order paramters More...
 
std::vector< const VariableValue * > _eta
 solid phase order parameters More...
 
std::vector< VariableName > _eta_name
 
const VariableValue_w
 chemical potential More...
 
const NonlinearVariableName _w_name
 
const VariableValue_phi
 void phase order parameter More...
 
const NonlinearVariableName _phi_name
 
const MaterialPropertyName _cs_eq_name
 equilibrium vacancy concentration More...
 
const MaterialProperty< Real > & _cs_eq
 
std::vector< const MaterialProperty< Real > * > _dcs_eq
 
std::vector< std::vector< const MaterialProperty< Real > * > > _d2cs_eq
 
const VariableValue_T
 temperature More...
 
const MaterialProperty< Real > & _kv
 void energy coefficient More...
 
const MaterialProperty< Real > & _ks
 solid energy coefficient More...
 
MaterialProperty< Real > & _hv
 void phase switching function More...
 
MaterialProperty< Real > & _dhv
 
MaterialProperty< Real > & _d2hv
 
MaterialProperty< Real > & _hs
 solid phase switching function More...
 
MaterialProperty< Real > & _dhs
 
MaterialProperty< Real > & _d2hs
 
MaterialProperty< Real > & _chi
 susceptibility More...
 
MaterialProperty< Real > & _dchidphi
 
MaterialProperty< Real > & _dchidw
 
MaterialProperty< Real > & _d2chidphi2
 
MaterialProperty< Real > & _d2chidw2
 
MaterialProperty< Real > & _d2chidphidw
 
MaterialProperty< Real > & _rhov
 void phase vacancy density More...
 
MaterialProperty< Real > & _drhovdw
 
MaterialProperty< Real > & _rhos
 solid phase vacancy density More...
 
MaterialProperty< Real > & _drhosdw
 
MaterialProperty< Real > & _d2rhosdw2
 
std::vector< MaterialProperty< Real > * > _drhos
 
std::vector< MaterialProperty< Real > * > _d2rhosdwdeta
 
std::vector< std::vector< MaterialProperty< Real > * > > _d2rhos
 
MaterialProperty< Real > & _omegav
 void phase potential density More...
 
MaterialProperty< Real > & _domegavdw
 
MaterialProperty< Real > & _d2omegavdw2
 
MaterialProperty< Real > & _omegas
 solid phase potential density More...
 
MaterialProperty< Real > & _domegasdw
 
MaterialProperty< Real > & _d2omegasdw2
 
std::vector< MaterialProperty< Real > * > _domegasdeta
 
std::vector< MaterialProperty< Real > * > _d2omegasdwdeta
 
std::vector< std::vector< MaterialProperty< Real > * > > _d2omegasdetadeta
 
MaterialProperty< Real > & _mu
 energy barrier coefficient More...
 
MaterialProperty< Real > & _dmu
 
MaterialProperty< Real > & _d2mu
 
MaterialProperty< Real > & _kappa
 gradient energy coefficient More...
 
MaterialProperty< Real > & _dkappa
 
MaterialProperty< Real > & _d2kappa
 
MaterialProperty< Real > & _gamma
 interface profile coefficient More...
 
MaterialProperty< Real > & _hv_c_min
 Body Force coefficient for mass conservation in conc and chempot coupling. More...
 
MaterialProperty< Real > & _dhv_c_mindphi
 
MaterialProperty< Real > & _d2hv_c_mindphi2
 
MaterialProperty< Real > & _hs_c_min
 
MaterialProperty< Real > & _dhs_c_mindphi
 
MaterialProperty< Real > & _d2hs_c_mindphi2
 
std::vector< MaterialProperty< Real > * > _dhs_c_min
 
std::vector< std::vector< MaterialProperty< Real > * > > _d2hs_c_min
 
MaterialProperty< Real > & _hv_over_kVa
 MatReaction Force coefficient for mass conservation in conc and chempot coupling. More...
 
MaterialProperty< Real > & _dhv_over_kVadphi
 
MaterialProperty< Real > & _d2hv_over_kVadphi2
 
MaterialProperty< Real > & _hs_over_kVa
 
MaterialProperty< Real > & _dhs_over_kVadphi
 
MaterialProperty< Real > & _d2hs_over_kVadphi2
 
const Real _sigma_s
 surface energy More...
 
const Real _sigma_gb
 grain boundary energy More...
 
const Real _int_width
 interface width More...
 
const Real _switch
 Parameter to determine accuracy of surface/GB phase switching function. More...
 
const Real _Va
 Atomic volume of species. More...
 
const MooseEnum _solid_energy
 Type of energy function to use for the solid phase. More...
 
const Real _mu_s
 mu value on surfaces More...
 
const Real _mu_gb
 mu value on grain boundaries More...
 
const Real _kappa_s
 kappa value on surfaces More...
 
const Real _kappa_gb
 kappa value on grain boundaries More...
 
const Real _kB
 Boltzmann constant. More...
 
const bool _mass_conservation
 strict mass conservation flag 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
 
const Real_t_old
 
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< ADReal > > > _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
 
MooseArray< ADRealVectorValue_ad_default_curl
 
const VariableValue_zero
 
const VariablePhiValue_phi_zero
 
const MooseArray< ADReal > & _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
 

Static Protected Attributes

static const std::string _interpolated_old
 
static const std::string _interpolated_older
 

Detailed Description

This material calculates necessary parameters for the grand potential sintering model.

Especially those related to switching functions and thermodynamics.

Definition at line 19 of file GrandPotentialSinteringMaterial.h.

Constructor & Destructor Documentation

◆ GrandPotentialSinteringMaterial()

GrandPotentialSinteringMaterial::GrandPotentialSinteringMaterial ( const InputParameters parameters)

Definition at line 55 of file GrandPotentialSinteringMaterial.C.

57  _neta(coupledComponents("etas")),
58  _eta(_neta),
60  _w(coupledValue("chemical_potential")),
61  _w_name(coupledName("chemical_potential", 0)),
62  _phi(coupledValue("void_op")),
63  _phi_name(coupledName("void_op", 0)),
64  _cs_eq_name(getParam<MaterialPropertyName>("equilibrium_vacancy_concentration")),
65  _cs_eq(getMaterialProperty<Real>(_cs_eq_name)),
66  _dcs_eq(_neta),
67  _d2cs_eq(_neta),
68  _T(coupledValue("Temperature")),
69  _kv(getMaterialProperty<Real>("void_energy_coefficient")),
70  _ks(getMaterialProperty<Real>("solid_energy_coefficient")),
71  _hv(declareProperty<Real>("hv")),
72  _dhv(declarePropertyDerivative<Real>("hv", _phi_name)),
73  _d2hv(declarePropertyDerivative<Real>("hv", _phi_name, _phi_name)),
74  _hs(declareProperty<Real>("hs")),
75  _dhs(declarePropertyDerivative<Real>("hs", _phi_name)),
76  _d2hs(declarePropertyDerivative<Real>("hs", _phi_name, _phi_name)),
77  _chi(declareProperty<Real>("chi")),
78  _dchidphi(declarePropertyDerivative<Real>("chi", _phi_name)),
79  _dchidw(declarePropertyDerivative<Real>("chi", _w_name)),
80  _d2chidphi2(declarePropertyDerivative<Real>("chi", _phi_name, _phi_name)),
81  _d2chidw2(declarePropertyDerivative<Real>("chi", _w_name, _w_name)),
82  _d2chidphidw(declarePropertyDerivative<Real>("chi", _phi_name, _w_name)),
83  _rhov(declareProperty<Real>("rhov")),
84  _drhovdw(declarePropertyDerivative<Real>("rhov", _w_name)),
85  _rhos(declareProperty<Real>("rhos")),
86  _drhosdw(declarePropertyDerivative<Real>("rhos", _w_name)),
87  _d2rhosdw2(declarePropertyDerivative<Real>("rhos", _w_name, _w_name)),
88  _drhos(_neta),
90  _d2rhos(_neta),
91  _omegav(declareProperty<Real>("omegav")),
92  _domegavdw(declarePropertyDerivative<Real>("omegav", _w_name)),
93  _d2omegavdw2(declarePropertyDerivative<Real>("omegav", _w_name, _w_name)),
94  _omegas(declareProperty<Real>("omegas")),
95  _domegasdw(declarePropertyDerivative<Real>("omegas", _w_name)),
96  _d2omegasdw2(declarePropertyDerivative<Real>("omegas", _w_name, _w_name)),
100  _mu(declareProperty<Real>("mu")),
101  _dmu(declarePropertyDerivative<Real>("mu", _phi_name)),
102  _d2mu(declarePropertyDerivative<Real>("mu", _phi_name, _phi_name)),
103  _kappa(declareProperty<Real>("kappa")),
104  _dkappa(declarePropertyDerivative<Real>("kappa", _phi_name)),
105  _d2kappa(declarePropertyDerivative<Real>("kappa", _phi_name, _phi_name)),
106  _gamma(declareProperty<Real>("gamma")),
107  _hv_c_min(declareProperty<Real>("hv_c_min")),
108  _dhv_c_mindphi(declarePropertyDerivative<Real>("hv_c_min", _phi_name)),
109  _d2hv_c_mindphi2(declarePropertyDerivative<Real>("hv_c_min", _phi_name, _phi_name)),
110  _hs_c_min(declareProperty<Real>("hs_c_min")),
111  _dhs_c_mindphi(declarePropertyDerivative<Real>("hs_c_min", _phi_name)),
112  _d2hs_c_mindphi2(declarePropertyDerivative<Real>("hs_c_min", _phi_name, _phi_name)),
113  _dhs_c_min(_neta),
115  _hv_over_kVa(declareProperty<Real>("hv_over_kVa")),
116  _dhv_over_kVadphi(declarePropertyDerivative<Real>("hv_over_kVa", _phi_name)),
117  _d2hv_over_kVadphi2(declarePropertyDerivative<Real>("hv_over_kVa", _phi_name, _phi_name)),
118  _hs_over_kVa(declareProperty<Real>("hs_over_kVa")),
119  _dhs_over_kVadphi(declarePropertyDerivative<Real>("hs_over_kVa", _phi_name)),
120  _d2hs_over_kVadphi2(declarePropertyDerivative<Real>("hs_over_kVa", _phi_name, _phi_name)),
121 
122  _sigma_s(getParam<Real>("surface_energy")),
123  _sigma_gb(getParam<Real>("grainboundary_energy")),
124  _int_width(getParam<Real>("int_width")),
125  _switch(getParam<Real>("surface_switch_value")),
126  _Va(getParam<Real>("atomic_volume")),
127  _solid_energy(getParam<MooseEnum>("solid_energy_model")),
128  _mu_s(6.0 * _sigma_s / _int_width),
129  _mu_gb(6.0 * _sigma_gb / _int_width),
130  _kappa_s(0.75 * _sigma_s * _int_width),
131  _kappa_gb(0.75 * _sigma_gb * _int_width),
132  _kB(8.617343e-5), // eV/K
133  _mass_conservation(getParam<bool>("mass_conservation"))
134 {
135  if ((_switch > 1.0) || (_switch < 0.0))
136  mooseError("GrandPotentialSinteringMaterial: surface_switch_value should be between 0 and 1");
137 
139  mooseError("GrandPotentialSinteringMaterial: strict mass conservation is currently only "
140  "applicable to parabolic free energy");
141 
142  for (unsigned int i = 0; i < _neta; ++i)
143  {
144  _eta[i] = &coupledValue("etas", i);
145  _eta_name[i] = coupledName("etas", i);
146  _dcs_eq[i] = &getMaterialPropertyDerivativeByName<Real>(_cs_eq_name, _eta_name[i]);
147  _d2cs_eq[i].resize(_neta);
148  _drhos[i] = &declarePropertyDerivative<Real>("rhos", _eta_name[i]);
149  _d2rhos[i].resize(_neta);
150  _d2rhosdwdeta[i] = &declarePropertyDerivative<Real>("rhos", _w_name, _eta_name[i]);
151  _domegasdeta[i] = &declarePropertyDerivative<Real>("omegas", _eta_name[i]);
152  _d2omegasdwdeta[i] = &declarePropertyDerivative<Real>("omegas", _w_name, _eta_name[i]);
153  _d2omegasdetadeta[i].resize(_neta);
154  _dhs_c_min[i] = &declarePropertyDerivative<Real>("hs_c_min", _eta_name[i]);
155  _d2hs_c_min[i].resize(_neta);
156 
157  for (unsigned int j = 0; j <= i; ++j)
158  {
159  _d2cs_eq[j][i] =
160  &getMaterialPropertyDerivativeByName<Real>(_cs_eq_name, _eta_name[j], _eta_name[i]);
161  _d2rhos[j][i] = &declarePropertyDerivative<Real>("rhos", _eta_name[j], _eta_name[i]);
162  _d2omegasdetadeta[j][i] =
163  &declarePropertyDerivative<Real>("omegas", _eta_name[j], _eta_name[i]);
164  _d2hs_c_min[j][i] = &declarePropertyDerivative<Real>("hs_c_min", _eta_name[j], _eta_name[i]);
165  }
166  }
167 }
const MaterialProperty< Real > & _kv
void energy coefficient
std::vector< const MaterialProperty< Real > * > _dcs_eq
const Real _kappa_gb
kappa value on grain boundaries
VariableName coupledName(const std::string &var_name, unsigned int comp=0) const
const Real _sigma_gb
grain boundary energy
MaterialProperty< Real > & _rhos
solid phase vacancy density
MaterialProperty< Real > & _kappa
gradient energy coefficient
MaterialProperty< Real > & _chi
susceptibility
MaterialProperty< Real > & _gamma
interface profile coefficient
std::vector< MaterialProperty< Real > * > _domegasdeta
MaterialProperty< Real > & _rhov
void phase vacancy density
MaterialProperty< Real > & _hv_over_kVa
MatReaction Force coefficient for mass conservation in conc and chempot coupling. ...
std::vector< std::vector< MaterialProperty< Real > * > > _d2rhos
const VariableValue & _phi
void phase order parameter
MaterialProperty< Real > & _omegav
void phase potential density
std::vector< MaterialProperty< Real > * > _drhos
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
MaterialProperty< Real > & _hs
solid phase switching function
const Real _switch
Parameter to determine accuracy of surface/GB phase switching function.
MaterialProperty< Real > & _mu
energy barrier coefficient
std::vector< MaterialProperty< Real > * > _d2omegasdwdeta
std::vector< const VariableValue * > _eta
solid phase order parameters
const Real _Va
Atomic volume of species.
std::vector< std::vector< const MaterialProperty< Real > * > > _d2cs_eq
const Real _mu_gb
mu value on grain boundaries
const VariableValue & _w
chemical potential
const MaterialProperty< Real > & _ks
solid energy coefficient
unsigned int coupledComponents(const std::string &var_name) const
std::vector< MaterialProperty< Real > * > _dhs_c_min
const VariableValue & _T
temperature
std::vector< std::vector< MaterialProperty< Real > * > > _d2hs_c_min
const MaterialPropertyName _cs_eq_name
equilibrium vacancy concentration
MaterialProperty< Real > & _omegas
solid phase potential density
const Real _kappa_s
kappa value on surfaces
void mooseError(Args &&... args) const
const InputParameters & parameters() const
static const std::complex< double > j(0, 1)
Complex number "j" (also known as "i")
const MooseEnum _solid_energy
Type of energy function to use for the solid phase.
const bool _mass_conservation
strict mass conservation flag
MaterialProperty< Real > & _hv_c_min
Body Force coefficient for mass conservation in conc and chempot coupling.
MaterialProperty< Real > & _hv
void phase switching function
const MaterialProperty< Real > & _cs_eq
const unsigned int _neta
number of solid phase order paramters
std::vector< MaterialProperty< Real > * > _d2rhosdwdeta
std::vector< std::vector< MaterialProperty< Real > * > > _d2omegasdetadeta

Member Function Documentation

◆ computeQpProperties()

void GrandPotentialSinteringMaterial::computeQpProperties ( )
protectedvirtual

Reimplemented from DerivativeMaterialInterface< Material >.

Definition at line 170 of file GrandPotentialSinteringMaterial.C.

171 {
172  // Calculate phase switching functions
173  _hv[_qp] = 0.0;
174  _dhv[_qp] = 0.0;
175  _d2hv[_qp] = 0.0;
176 
177  if (_phi[_qp] >= 1.0)
178  _hv[_qp] = 1.0;
179  else if (_phi[_qp] > 0.0)
180  {
181  _hv[_qp] = _phi[_qp] * _phi[_qp] * _phi[_qp] * (10.0 + _phi[_qp] * (-15.0 + _phi[_qp] * 6.0));
182  _dhv[_qp] = 30.0 * _phi[_qp] * _phi[_qp] * (_phi[_qp] - 1.0) * (_phi[_qp] - 1.0);
183  _d2hv[_qp] = 60.0 * _phi[_qp] * (2.0 * _phi[_qp] - 1.0) * (_phi[_qp] - 1.0);
184  }
185 
186  _hs[_qp] = 1.0 - _hv[_qp];
187  _dhs[_qp] = -_dhv[_qp];
188  _d2hs[_qp] = -_d2hv[_qp];
189 
190  // Calculate interface switching function
191  Real phi = _phi[_qp] / _switch;
192  Real f = 0.0;
193  Real df = 0.0;
194  Real d2f = 0.0;
195  if (phi >= 1.0)
196  f = 1.0;
197  else if (phi > 0.0)
198  {
199  f = phi * phi * phi * (10.0 + phi * (-15.0 + phi * 6.0));
200  df = 30.0 / _switch * phi * phi * (phi - 1.0) * (phi - 1.0);
201  d2f = 60.0 * phi / (_switch * _switch) * (2.0 * phi - 1.0) * (phi - 1.0);
202  }
203 
204  // Equilibrium vacancy concentration
205  Real cv_eq = 1.0;
206 
207  // Calculate the void phase density and potentials
208  _rhov[_qp] = _w[_qp] / (_Va * _Va * _kv[_qp]) + cv_eq / _Va;
209  _drhovdw[_qp] = 1.0 / (_Va * _Va * _kv[_qp]);
210 
211  _omegav[_qp] = -0.5 * _w[_qp] * _w[_qp] / (_Va * _Va * _kv[_qp]) - _w[_qp] * cv_eq / _Va;
212  _domegavdw[_qp] = -_rhov[_qp];
214 
215  // Calculate solid phase density and potential
216  Real d3rhosdw3 = 0;
217  switch (_solid_energy)
218  {
219  case 0: // PARABOLIC
220  {
221  _rhos[_qp] = _w[_qp] / (_Va * _Va * _ks[_qp]) + _cs_eq[_qp] / _Va;
222  _drhosdw[_qp] = 1.0 / (_Va * _Va * _ks[_qp]);
223  _d2rhosdw2[_qp] = 0.0;
224  d3rhosdw3 = 0.0;
225 
226  _omegas[_qp] =
227  -0.5 * _w[_qp] * _w[_qp] / (_Va * _Va * _ks[_qp]) - _w[_qp] * _cs_eq[_qp] / _Va;
228  _domegasdw[_qp] = -_rhos[_qp];
230 
231  // bodyforce and matreact coefficients for strict mass conservation case
232  _hv_c_min[_qp] = _hv[_qp] * 1.0;
233  _dhv_c_mindphi[_qp] = _dhv[_qp] * 1.0;
234  _d2hv_c_mindphi2[_qp] = _d2hv[_qp] * 1.0;
235  _hs_c_min[_qp] = _hs[_qp] * _cs_eq[_qp];
238  _hv_over_kVa[_qp] = _hv[_qp] / (_Va * _kv[_qp]);
239  _dhv_over_kVadphi[_qp] = _dhv[_qp] / (_Va * _kv[_qp]);
241  _hs_over_kVa[_qp] = _hs[_qp] / (_Va * _ks[_qp]);
242  _dhs_over_kVadphi[_qp] = _dhs[_qp] / (_Va * _ks[_qp]);
244 
245  for (unsigned int i = 0; i < _neta; ++i)
246  {
247  (*_drhos[i])[_qp] = (*_dcs_eq[i])[_qp] / _Va;
248  (*_d2rhosdwdeta[i])[_qp] = 0.0;
249  (*_domegasdeta[i])[_qp] = -_w[_qp] * (*_dcs_eq[i])[_qp] / _Va;
250  (*_d2omegasdwdeta[i])[_qp] = -(*_dcs_eq[i])[_qp] / _Va;
251  (*_dhs_c_min[i])[_qp] = _hs[_qp] * (*_dcs_eq[i])[_qp];
252  for (unsigned int j = i; j < _neta; ++j)
253  {
254  (*_d2rhos[i][j])[_qp] = (*_d2cs_eq[i][j])[_qp] / _Va;
255  (*_d2omegasdetadeta[i][j])[_qp] = -_w[_qp] * (*_d2cs_eq[i][j])[_qp] / _Va;
256  (*_d2hs_c_min[i][j])[_qp] = _hs[_qp] * (*_d2cs_eq[i][j])[_qp];
257  }
258  }
259  break;
260  } // case 0; // PARABOLIC
261  case 1: // DILUTE
262  {
263  Real rho_exp = std::exp(_w[_qp] / _kB / _T[_qp]);
264  _rhos[_qp] = _cs_eq[_qp] / _Va * rho_exp;
265  _drhosdw[_qp] = _rhos[_qp] / _kB / _T[_qp];
266  _d2rhosdw2[_qp] = _drhosdw[_qp] / _kB / _T[_qp];
267  d3rhosdw3 = _d2rhosdw2[_qp] / _kB / _T[_qp];
268 
269  _omegas[_qp] = _kB * _T[_qp] * (_cs_eq[_qp] / _Va - _rhos[_qp]);
270  _domegasdw[_qp] = -_rhos[_qp];
272  for (unsigned int i = 0; i < _neta; ++i)
273  {
274  (*_drhos[i])[_qp] = (*_dcs_eq[i])[_qp] * rho_exp / _Va;
275  (*_d2rhosdwdeta[i])[_qp] = 0.0;
276  (*_domegasdeta[i])[_qp] = _kB * _T[_qp] * (*_dcs_eq[i])[_qp] / _Va * (1.0 - rho_exp);
277  (*_d2omegasdwdeta[i])[_qp] = -1.0 / _Va * (*_dcs_eq[i])[_qp] * rho_exp;
278  for (unsigned int j = i; j < _neta; ++j)
279  {
280  (*_d2rhos[i][j])[_qp] = (*_d2cs_eq[i][j])[_qp] * rho_exp / _Va;
281  (*_d2omegasdetadeta[i][j])[_qp] =
282  _kB * _T[_qp] * (*_d2cs_eq[i][j])[_qp] / _Va * (1.0 - rho_exp);
283  }
284  }
285  break;
286  } // case 1: // DILUTE
287  case 2: // IDEAL
288  {
289  Real Ef = -_kB * _T[_qp] * std::log(_cs_eq[_qp] / (1.0 - _cs_eq[_qp]));
290  std::vector<Real> dEf;
291  std::vector<std::vector<Real>> d2Ef;
292  dEf.resize(_neta);
293  d2Ef.resize(_neta);
294 
295  Real x = std::exp((_w[_qp] - Ef) / (_kB * _T[_qp]));
296  Real x0 = std::exp(-Ef / (_kB * _T[_qp]));
297  _rhos[_qp] = x / ((1.0 + x) * _Va);
298  Real rhos0 = x0 / ((1.0 + x0) * _Va);
299  _drhosdw[_qp] = x / (Utility::pow<2>(1.0 + x) * _Va * _kB * _T[_qp]);
300  _d2rhosdw2[_qp] =
301  x * (1.0 - x) / (_Va * Utility::pow<2>(_kB * _T[_qp]) * Utility::pow<3>(1.0 + x));
302  d3rhosdw3 = x * (1 - 4.0 * x + x * x) /
303  (_Va * Utility::pow<3>(_kB * _T[_qp]) * Utility::pow<4>(1.0 + x));
304 
305  _omegas[_qp] = _kB * _T[_qp] / _Va * (std::log(1.0 + x0) - std::log(1.0 + x));
306  _domegasdw[_qp] = -_rhos[_qp];
308  for (unsigned int i = 0; i < _neta; ++i)
309  {
310  dEf[i] =
311  -_kB * _T[_qp] * (*_dcs_eq[i])[_qp] * (1.0 / _cs_eq[_qp] + 1.0 / (1.0 - _cs_eq[_qp]));
312  d2Ef[i].resize(_neta);
313 
314  (*_drhos[i])[_qp] = -dEf[i] * _drhosdw[_qp];
315  (*_d2rhosdwdeta[i])[_qp] = -dEf[i] * _d2rhosdw2[_qp];
316 
317  (*_domegasdeta[i])[_qp] = dEf[i] * (_rhos[_qp] - rhos0);
318  (*_d2omegasdwdeta[i])[_qp] = dEf[i] * _drhosdw[_qp];
319 
320  for (unsigned int j = i; j < _neta; ++j)
321  {
322  d2Ef[i][j] = -_kB * _T[_qp] *
323  ((*_d2cs_eq[i][j])[_qp] * (1.0 / _cs_eq[_qp] + 1.0 / (1.0 - _cs_eq[_qp])) +
324  (*_dcs_eq[i])[_qp] * (*_dcs_eq[j])[_qp] *
325  (1.0 / ((1.0 - _cs_eq[_qp]) * (1.0 - _cs_eq[_qp])) -
326  1.0 / (_cs_eq[_qp] * _cs_eq[_qp])));
327 
328  (*_d2rhos[i][j])[_qp] = -d2Ef[i][j] * _drhosdw[_qp] + dEf[i] * dEf[j] * _d2rhosdw2[_qp];
329  (*_d2omegasdetadeta[i][j])[_qp] =
330  d2Ef[i][j] * (_rhos[_qp] - rhos0) +
331  dEf[i] * dEf[j] / (_Va * _kB * _T[_qp]) *
332  (x / Utility::pow<2>(1.0 + x) - x0 / Utility::pow<2>(1.0 + x0));
333  }
334  }
335  break;
336  } // case 2: // IDEAL
337  } // switch (_solid_energy)
338 
339  // Calculate the susceptibility
340  _chi[_qp] = _hs[_qp] * _drhosdw[_qp] + _hv[_qp] * _drhovdw[_qp];
342  _dchidw[_qp] = _hs[_qp] * _d2rhosdw2[_qp];
344  _d2chidw2[_qp] = _hs[_qp] * d3rhosdw3;
346 
347  // thermodynamic parameters
348  _mu[_qp] = _mu_gb + (_mu_s - _mu_gb) * f;
349  _kappa[_qp] = _kappa_gb + (_kappa_s - _kappa_gb) * f;
350  _dmu[_qp] = (_mu_s - _mu_gb) * df;
351  _dkappa[_qp] = (_kappa_s - _kappa_gb) * df;
352  _d2mu[_qp] = (_mu_s - _mu_gb) * d2f;
353  _d2kappa[_qp] = (_kappa_s - _kappa_gb) * d2f;
354  _gamma[_qp] = 1.5;
355 } // void GrandPotentialSinteringMaterial::computeQpProperties()
const MaterialProperty< Real > & _kv
void energy coefficient
std::vector< const MaterialProperty< Real > * > _dcs_eq
const Real _kappa_gb
kappa value on grain boundaries
MaterialProperty< Real > & _rhos
solid phase vacancy density
MaterialProperty< Real > & _kappa
gradient energy coefficient
MaterialProperty< Real > & _chi
susceptibility
MaterialProperty< Real > & _gamma
interface profile coefficient
std::vector< MaterialProperty< Real > * > _domegasdeta
MaterialProperty< Real > & _rhov
void phase vacancy density
MaterialProperty< Real > & _hv_over_kVa
MatReaction Force coefficient for mass conservation in conc and chempot coupling. ...
std::vector< std::vector< MaterialProperty< Real > * > > _d2rhos
const VariableValue & _phi
void phase order parameter
MaterialProperty< Real > & _omegav
void phase potential density
std::vector< MaterialProperty< Real > * > _drhos
MaterialProperty< Real > & _hs
solid phase switching function
const Real _switch
Parameter to determine accuracy of surface/GB phase switching function.
MaterialProperty< Real > & _mu
energy barrier coefficient
std::vector< MaterialProperty< Real > * > _d2omegasdwdeta
const std::vector< double > x
Real f(Real x)
Test function for Brents method.
const Real _Va
Atomic volume of species.
std::vector< std::vector< const MaterialProperty< Real > * > > _d2cs_eq
const Real _mu_gb
mu value on grain boundaries
const VariableValue & _w
chemical potential
const MaterialProperty< Real > & _ks
solid energy coefficient
std::vector< MaterialProperty< Real > * > _dhs_c_min
const VariableValue & _T
temperature
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::vector< std::vector< MaterialProperty< Real > * > > _d2hs_c_min
MaterialProperty< Real > & _omegas
solid phase potential density
const Real _kappa_s
kappa value on surfaces
static const std::complex< double > j(0, 1)
Complex number "j" (also known as "i")
const MooseEnum _solid_energy
Type of energy function to use for the solid phase.
MaterialProperty< Real > & _hv_c_min
Body Force coefficient for mass conservation in conc and chempot coupling.
MaterialProperty< Real > & _hv
void phase switching function
const MaterialProperty< Real > & _cs_eq
const unsigned int _neta
number of solid phase order paramters
std::vector< MaterialProperty< Real > * > _d2rhosdwdeta
std::vector< std::vector< MaterialProperty< Real > * > > _d2omegasdetadeta

◆ validParams()

InputParameters GrandPotentialSinteringMaterial::validParams ( )
static

Definition at line 17 of file GrandPotentialSinteringMaterial.C.

18 {
20  params.addClassDescription(
21  "Includes switching and thermodynamic properties for the grand potential sintering model");
23  "etas", "var_name_base", "op_num", "Array of order parameters that describe solid phase");
24  params.addRequiredCoupledVar("chemical_potential", "The name of the chemical potential variable");
25  params.addRequiredCoupledVar("void_op", "The name of the void phase order parameter");
26  params.addRequiredCoupledVar("Temperature", "Name of the temperature variable with units of K");
27  params.addParam<MaterialPropertyName>(
28  "solid_energy_coefficient",
29  1.0,
30  "Parabolic solid energy coefficient (energy/volume). Only used for parabolic energy.");
31  params.addRequiredParam<MaterialPropertyName>(
32  "void_energy_coefficient", "Parabolic void energy coefficient (energy/volume)");
33  params.addParam<Real>("surface_energy", 19.7, "Surface energy in units of problem (energy/area)");
34  params.addParam<Real>(
35  "grainboundary_energy", 9.86, "Grain boundary energy in units of problem (energy/area)");
36  params.addParam<Real>("int_width", 1, "Interface width in units of problem (length)");
37  params.addParam<Real>("surface_switch_value",
38  0.3,
39  "Value between 0 and 1 that determines when the interface begins to switch "
40  "from surface to GB. Small values give less error while large values "
41  "converge better.");
42  params.addRequiredParam<MaterialPropertyName>(
43  "equilibrium_vacancy_concentration",
44  "Name of material that determines the equilibrium vacancy concentration in the solid phase");
45  params.addParam<Real>("atomic_volume", 0.04092, "Atomic volume of material");
46  MooseEnum solid_energy_model("PARABOLIC DILUTE IDEAL", "PARABOLIC");
47  params.addParam<MooseEnum>("solid_energy_model",
48  solid_energy_model,
49  "Type of energy function to use for the solid phase.");
50  params.addParam<bool>(
51  "mass_conservation", false, "imposing strict mass conservation formulation");
52  return params;
53 }
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addRequiredParam(const std::string &name, const std::string &doc_string)
static InputParameters validParams()
void addRequiredCoupledVar(const std::string &name, const std::string &doc_string)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addRequiredCoupledVarWithAutoBuild(const std::string &name, const std::string &base_name, const std::string &num_name, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)

Member Data Documentation

◆ _chi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_chi
protected

susceptibility

Definition at line 69 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _cs_eq

const MaterialProperty<Real>& GrandPotentialSinteringMaterial::_cs_eq
protected

Definition at line 46 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _cs_eq_name

const MaterialPropertyName GrandPotentialSinteringMaterial::_cs_eq_name
protected

equilibrium vacancy concentration

Definition at line 45 of file GrandPotentialSinteringMaterial.h.

Referenced by GrandPotentialSinteringMaterial().

◆ _d2chidphi2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2chidphi2
protected

Definition at line 72 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2chidphidw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2chidphidw
protected

Definition at line 74 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2chidw2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2chidw2
protected

Definition at line 73 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2cs_eq

std::vector<std::vector<const MaterialProperty<Real> *> > GrandPotentialSinteringMaterial::_d2cs_eq
protected

◆ _d2hs

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hs
protected

Definition at line 66 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2hs_c_min

std::vector<std::vector<MaterialProperty<Real> *> > GrandPotentialSinteringMaterial::_d2hs_c_min
protected

◆ _d2hs_c_mindphi2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hs_c_mindphi2
protected

Definition at line 120 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2hs_over_kVadphi2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hs_over_kVadphi2
protected

Definition at line 130 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2hv

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hv
protected

Definition at line 61 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2hv_c_mindphi2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hv_c_mindphi2
protected

Definition at line 117 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2hv_over_kVadphi2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2hv_over_kVadphi2
protected

Definition at line 127 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2kappa

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2kappa
protected

Definition at line 109 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2mu

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2mu
protected

Definition at line 104 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2omegasdetadeta

std::vector<std::vector<MaterialProperty<Real> *> > GrandPotentialSinteringMaterial::_d2omegasdetadeta
protected

◆ _d2omegasdw2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2omegasdw2
protected

Definition at line 96 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2omegasdwdeta

std::vector<MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_d2omegasdwdeta
protected

◆ _d2omegavdw2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2omegavdw2
protected

Definition at line 91 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2rhos

std::vector<std::vector<MaterialProperty<Real> *> > GrandPotentialSinteringMaterial::_d2rhos
protected

◆ _d2rhosdw2

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_d2rhosdw2
protected

Definition at line 83 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _d2rhosdwdeta

std::vector<MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_d2rhosdwdeta
protected

◆ _dchidphi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dchidphi
protected

Definition at line 70 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dchidw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dchidw
protected

Definition at line 71 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dcs_eq

std::vector<const MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_dcs_eq
protected

◆ _dhs

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhs
protected

Definition at line 65 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dhs_c_min

std::vector<MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_dhs_c_min
protected

◆ _dhs_c_mindphi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhs_c_mindphi
protected

Definition at line 119 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dhs_over_kVadphi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhs_over_kVadphi
protected

Definition at line 129 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dhv

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhv
protected

Definition at line 60 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dhv_c_mindphi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhv_c_mindphi
protected

Definition at line 116 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dhv_over_kVadphi

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dhv_over_kVadphi
protected

Definition at line 126 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dkappa

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dkappa
protected

Definition at line 108 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _dmu

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_dmu
protected

Definition at line 103 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _domegasdeta

std::vector<MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_domegasdeta
protected

◆ _domegasdw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_domegasdw
protected

Definition at line 95 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _domegavdw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_domegavdw
protected

Definition at line 90 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _drhos

std::vector<MaterialProperty<Real> *> GrandPotentialSinteringMaterial::_drhos
protected

◆ _drhosdw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_drhosdw
protected

Definition at line 82 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _drhovdw

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_drhovdw
protected

Definition at line 78 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _eta

std::vector<const VariableValue *> GrandPotentialSinteringMaterial::_eta
protected

solid phase order parameters

Definition at line 33 of file GrandPotentialSinteringMaterial.h.

Referenced by GrandPotentialSinteringMaterial().

◆ _eta_name

std::vector<VariableName> GrandPotentialSinteringMaterial::_eta_name
protected

Definition at line 34 of file GrandPotentialSinteringMaterial.h.

Referenced by GrandPotentialSinteringMaterial().

◆ _gamma

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_gamma
protected

interface profile coefficient

Definition at line 112 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hs

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hs
protected

solid phase switching function

Definition at line 64 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hs_c_min

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hs_c_min
protected

Definition at line 118 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hs_over_kVa

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hs_over_kVa
protected

Definition at line 128 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hv

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hv
protected

void phase switching function

Definition at line 59 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hv_c_min

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hv_c_min
protected

Body Force coefficient for mass conservation in conc and chempot coupling.

Definition at line 115 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _hv_over_kVa

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_hv_over_kVa
protected

MatReaction Force coefficient for mass conservation in conc and chempot coupling.

Definition at line 125 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _int_width

const Real GrandPotentialSinteringMaterial::_int_width
protected

interface width

Definition at line 139 of file GrandPotentialSinteringMaterial.h.

◆ _kappa

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_kappa
protected

gradient energy coefficient

Definition at line 107 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _kappa_gb

const Real GrandPotentialSinteringMaterial::_kappa_gb
protected

kappa value on grain boundaries

Definition at line 160 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _kappa_s

const Real GrandPotentialSinteringMaterial::_kappa_s
protected

kappa value on surfaces

Definition at line 157 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _kB

const Real GrandPotentialSinteringMaterial::_kB
protected

Boltzmann constant.

Definition at line 163 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _ks

const MaterialProperty<Real>& GrandPotentialSinteringMaterial::_ks
protected

solid energy coefficient

Definition at line 56 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _kv

const MaterialProperty<Real>& GrandPotentialSinteringMaterial::_kv
protected

void energy coefficient

Definition at line 54 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _mass_conservation

const bool GrandPotentialSinteringMaterial::_mass_conservation
protected

strict mass conservation flag

Definition at line 166 of file GrandPotentialSinteringMaterial.h.

Referenced by GrandPotentialSinteringMaterial().

◆ _mu

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_mu
protected

energy barrier coefficient

Definition at line 102 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _mu_gb

const Real GrandPotentialSinteringMaterial::_mu_gb
protected

mu value on grain boundaries

Definition at line 154 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _mu_s

const Real GrandPotentialSinteringMaterial::_mu_s
protected

mu value on surfaces

Definition at line 151 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _neta

const unsigned int GrandPotentialSinteringMaterial::_neta
protected

number of solid phase order paramters

Definition at line 30 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties(), and GrandPotentialSinteringMaterial().

◆ _omegas

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_omegas
protected

solid phase potential density

Definition at line 94 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _omegav

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_omegav
protected

void phase potential density

Definition at line 89 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _phi

const VariableValue& GrandPotentialSinteringMaterial::_phi
protected

void phase order parameter

Definition at line 41 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _phi_name

const NonlinearVariableName GrandPotentialSinteringMaterial::_phi_name
protected

Definition at line 42 of file GrandPotentialSinteringMaterial.h.

◆ _rhos

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_rhos
protected

solid phase vacancy density

Definition at line 81 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _rhov

MaterialProperty<Real>& GrandPotentialSinteringMaterial::_rhov
protected

void phase vacancy density

Definition at line 77 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _sigma_gb

const Real GrandPotentialSinteringMaterial::_sigma_gb
protected

grain boundary energy

Definition at line 136 of file GrandPotentialSinteringMaterial.h.

◆ _sigma_s

const Real GrandPotentialSinteringMaterial::_sigma_s
protected

surface energy

Definition at line 133 of file GrandPotentialSinteringMaterial.h.

◆ _solid_energy

const MooseEnum GrandPotentialSinteringMaterial::_solid_energy
protected

Type of energy function to use for the solid phase.

Definition at line 148 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties(), and GrandPotentialSinteringMaterial().

◆ _switch

const Real GrandPotentialSinteringMaterial::_switch
protected

Parameter to determine accuracy of surface/GB phase switching function.

Definition at line 142 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties(), and GrandPotentialSinteringMaterial().

◆ _T

const VariableValue& GrandPotentialSinteringMaterial::_T
protected

temperature

Definition at line 51 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _Va

const Real GrandPotentialSinteringMaterial::_Va
protected

Atomic volume of species.

Definition at line 145 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _w

const VariableValue& GrandPotentialSinteringMaterial::_w
protected

chemical potential

Definition at line 37 of file GrandPotentialSinteringMaterial.h.

Referenced by computeQpProperties().

◆ _w_name

const NonlinearVariableName GrandPotentialSinteringMaterial::_w_name
protected

Definition at line 38 of file GrandPotentialSinteringMaterial.h.

Referenced by GrandPotentialSinteringMaterial().


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