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

This Constraint implements thermal contact using a "gap conductance" model in which the flux is represented by an independent "Lagrange multiplier" like variable. More...

#include <ModularGapConductanceConstraint.h>

Inheritance diagram for ModularGapConductanceConstraint:
[legend]

Public Types

enum  ResidualTagType { ResidualTagType::NonReference, ResidualTagType::Reference }
 
typedef DataFileName DataFileParameterType
 

Public Member Functions

 ModularGapConductanceConstraint (const InputParameters &parameters)
 
virtual void initialSetup () override
 
virtual void computeResidual () override
 
virtual void computeJacobian () override
 
const MooseVariablevariable () const override
 
const MooseVariablevariablePtr () const
 
bool useDual () const
 
virtual void post ()
 
virtual void incorrectEdgeDroppingPost (const std::unordered_set< const Node * > &)
 
void zeroInactiveLMDofs (const std::unordered_set< const Node * > &inactive_lm_nodes, const std::unordered_set< const Elem * > &inactive_lm_elems)
 
virtual bool addCouplingEntriesToJacobian ()
 
virtual void subdomainSetup () override final
 
virtual void residualEnd ()
 
void prepareNeighborShapes (unsigned int var_num)
 
virtual void computeOffDiagJacobian (unsigned int)
 
virtual void computeOffDiagJacobianScalar (unsigned int)
 
virtual void computeNonlocalJacobian ()
 
virtual void computeNonlocalOffDiagJacobian (unsigned int)
 
const SubProblemsubProblem () const
 
virtual void prepareShapes (unsigned int var_num)
 
virtual std::set< std::string > additionalROVariables ()
 
virtual bool enabled () const
 
std::shared_ptr< MooseObjectgetSharedPtr ()
 
std::shared_ptr< const MooseObjectgetSharedPtr () const
 
bool isKokkosObject (IsKokkosObjectKey &&) const
 
MooseAppgetMooseApp () const
 
const std::string & type () const
 
const std::string & name () const
 
std::string typeAndName () const
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 
MooseObjectName uniqueName () const
 
const InputParametersparameters () const
 
const hit::Node * getHitNode () const
 
bool hasBase () const
 
const std::string & getBase () 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 &name) const
 
void connectControllableParams (const std::string &parameter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const
 
void paramError (const std::string &param, Args... args) const
 
void paramWarning (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
 
std::string messagePrefix (const bool hit_prefix=true) const
 
std::string errorPrefix (const std::string &) const
 
void mooseError (Args &&... args) const
 
void mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
 
void mooseErrorNonPrefixed (Args &&... args) const
 
void mooseWarning (Args &&... args) const
 
void mooseWarning (Args &&... args) const
 
void mooseWarningNonPrefixed (Args &&... args) const
 
void mooseWarningNonPrefixed (Args &&... args) const
 
void mooseDeprecated (Args &&... args) const
 
void mooseDeprecated (Args &&... args) const
 
void mooseInfo (Args &&... args) const
 
void callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr) 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
 
virtual void timestepSetup ()
 
virtual void jacobianSetup ()
 
virtual void residualSetup ()
 
virtual void customSetup (const ExecFlagType &)
 
const ExecFlagEnumgetExecuteOnEnum () 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
 
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 void meshChanged ()
 
void useVectorTag (const TagName &tag_name, VectorTagsKey)
 
void useVectorTag (TagID tag_id, VectorTagsKey)
 
void useMatrixTag (const TagName &tag_name, MatrixTagsKey)
 
void useMatrixTag (TagID tag_id, MatrixTagsKey)
 
bool isVectorTagged ()
 
bool isMatrixTagged ()
 
bool hasVectorTags () const
 
const std::set< TagID > & getVectorTags (VectorTagsKey) const
 
const std::set< TagID > & getMatrixTags (MatrixTagsKey) const
 
virtual const VariableValuecoupledNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue *> coupledNeighborValues (const std::string &var_name) const
 
std::vector< const VariableValue *> coupledNeighborValuesOld (const std::string &var_name) const
 
std::vector< const VariableValue *> coupledNeighborValuesOlder (const std::string &var_name) const
 
virtual const ADVariableValueadCoupledNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
const auto & coupledGenericNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
const auto & coupledGenericNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const ADVariableValueadCoupledNeighborValueDot (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const ADVariableValue *> adCoupledNeighborValues (const std::string &var_name) const
 
virtual const ADVectorVariableValueadCoupledVectorNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueDotDu (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual std::vector< const VariableGradient *> coupledNeighborGradients (const std::string &var_name) const
 
virtual const VariableGradientcoupledNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ADVariableGradientadCoupledNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledNeighborSecond (const std::string &var_name, unsigned int i=0) const
 
virtual const VariableValuecoupledNeighborDofValues (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborDofValuesOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborDofValuesOlder (const std::string &var_name, unsigned int comp=0) 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 ADVariableValuegetADDefaultValue (const std::string &var_name) const
 
const ADVectorVariableValuegetADDefaultVectorValue (const std::string &var_name) const
 
const ADVariableGradientgetADDefaultGradient () const
 
const ADVectorVariableGradientgetADDefaultVectorGradient () const
 
const ADVariableSecondgetADDefaultSecond () const
 
const ADVectorVariableCurlgetADDefaultCurl () const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagValueByName (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagValuesByName (const std::string &var_name, const std::string &tag_name) const
 
Moose::Kokkos::VariableGradient kokkosCoupledVectorTagGradientByName (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableGradient kokkosCoupledVectorTagGradientsByName (const std::string &var_name, const std::string &tag_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagNodalValueByName (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagNodalValuesByName (const std::string &var_name, const std::string &tag_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagDofValueByName (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagDofValuesByName (const std::string &var_name, const std::string &tag_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagValue (const std::string &var_name, const std::string &tag_param_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagValues (const std::string &var_name, const std::string &tag_param_name) const
 
Moose::Kokkos::VariableGradient kokkosCoupledVectorTagGradient (const std::string &var_name, const std::string &tag_param_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableGradient kokkosCoupledVectorTagGradients (const std::string &var_name, const std::string &tag_param_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagNodalValue (const std::string &var_name, const std::string &tag_param_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagNodalValues (const std::string &var_name, const std::string &tag_param_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagDofValue (const std::string &var_name, const std::string &tag_param_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledVectorTagDofValues (const std::string &var_name, const std::string &tag_param_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledValue (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledValues (const std::string &var_name) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradient (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradients (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValue (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValues (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValue (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValues (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledValueOld (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledValuesOld (const std::string &var_name) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradientOld (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradientsOld (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValueOld (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValuesOld (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValueOld (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValuesOld (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledValueOlder (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledValuesOlder (const std::string &var_name) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableGradient kokkosCoupledGradientsOlder (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValueOlder (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalValuesOlder (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValueOlder (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledDofValuesOlder (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledDot (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledDots (const std::string &var_name) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalDot (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosCoupledNodalDots (const std::string &var_name) const
 
Moose::Kokkos::Scalar< const RealkokkosCoupledDotDu (const std::string &var_name, unsigned int comp=0) const
 
Moose::Kokkos::VariableValue kokkosZeroValue () const
 
Moose::Kokkos::VariableGradient kokkosZeroGradient () const
 
Moose::Kokkos::VariableValue kokkosZeroNodalValue () const
 
const std::vector< MooseVariableScalar *> & getCoupledMooseScalarVars ()
 
const std::set< TagID > & getScalarVariableCoupleableVectorTags () const
 
const std::set< TagID > & getScalarVariableCoupleableMatrixTags () 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)
 
SubdomainID primarySubdomain () const
 
SubdomainID secondarySubdomain () const
 
bool onInterface (BoundaryID primary_boundary_id, BoundaryID secondary_boundary_id) const
 
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 MaterialPropertyName &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 MaterialPropertyName &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 MaterialPropertyName &name)
 
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name)
 
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialPropertyByName (const std::string &prop_name_in)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialPropertyOldByName (const std::string &prop_name)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialPropertyOlderByName (const std::string &prop_name)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialProperty (const std::string &name)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialPropertyOld (const std::string &name)
 
Moose::Kokkos::MaterialProperty< T, dimension > getKokkosMaterialPropertyOlder (const std::string &name)
 
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > getBlockMaterialProperty (const MaterialPropertyName &name)
 
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 MaterialProperty< T > & getZeroMaterialProperty (Ts... args)
 
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)
 
std::unordered_map< SubdomainID, std::vector< MaterialBase *> > buildRequiredMaterials (bool allow_stateful=true)
 
void statefulPropertiesAllowed (bool)
 
virtual bool getMaterialPropertyCalled () const
 
virtual const std::unordered_set< unsigned int > & getMatPropDependencies () const
 
virtual void resolveOptionalProperties ()
 
const GenericMaterialProperty< T, is_ad > & getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state)
 
MooseVariableBasemooseVariableBase () const
 
MooseVariableField< Real > & mooseVariableField ()
 
MooseVariableFE< Real > * mooseVariable () const
 
MooseVariableFV< Real > * mooseVariableFV () const
 
MooseLinearVariableFV< Real > * mooseLinearVariableFV () 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
 
const GenericMaterialProperty< T, is_ad > & getGenericNeighborMaterialProperty (const std::string &name, const unsigned int state=0)
 
const GenericMaterialProperty< T, is_ad > & getGenericNeighborMaterialProperty (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getNeighborMaterialProperty (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getNeighborMaterialProperty (const std::string &name, const unsigned int state=0)
 
const ADMaterialProperty< T > & getNeighborADMaterialProperty (const std::string &name)
 
const ADMaterialProperty< T > & getNeighborADMaterialProperty (const std::string &name)
 
const MaterialProperty< T > & getNeighborMaterialPropertyOld (const std::string &name)
 
const MaterialProperty< T > & getNeighborMaterialPropertyOld (const std::string &name)
 
const MaterialProperty< T > & getNeighborMaterialPropertyOlder (const std::string &name)
 
const MaterialProperty< T > & getNeighborMaterialPropertyOlder (const std::string &name)
 
const GenericMaterialProperty< T, is_ad > & getGenericNeighborMaterialPropertyByName (const std::string &name, const unsigned int state=0)
 
const GenericMaterialProperty< T, is_ad > & getGenericNeighborMaterialPropertyByName (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getNeighborMaterialPropertyByName (const std::string &name, const unsigned int state=0)
 
const MaterialProperty< T > & getNeighborMaterialPropertyByName (const std::string &name, const unsigned int state=0)
 
const ADMaterialProperty< T > & getNeighborADMaterialPropertyByName (const std::string &name)
 
const ADMaterialProperty< T > & getNeighborADMaterialPropertyByName (const std::string &name)
 
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)
 
MaterialBasegetMaterial (const std::string &name)
 
MaterialBasegetMaterial (const std::string &name)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
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 hasKokkosMaterialProperty (const std::string &name)
 
bool hasKokkosMaterialProperty (const std::string &name)
 
bool hasKokkosMaterialPropertyByName (const std::string &name)
 
bool hasKokkosMaterialPropertyByName (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)
 
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 void callMooseError (MooseApp *const app, const InputParameters &params, std::string msg, const bool with_prefix, const hit::Node *node)
 

Public Attributes

 usingCombinedWarningSolutionWarnings
 
const ConsoleStream _console
 

Static Public Attributes

static const std::string type_param
 
static const std::string name_param
 
static const std::string unique_name_param
 
static const std::string app_param
 
static const std::string moose_base_param
 
static const std::string kokkos_object_param
 
static constexpr PropertyValue::id_type default_property_id
 
static constexpr PropertyValue::id_type zero_property_id
 

Protected Member Functions

virtual ADReal computeQpResidual (Moose::MortarType mortar_type) override
 Computes the residual for the LM equation, lambda = (k/l)*(T^(1) - PT^(2)). More...
 
void computeResidual (Moose::MortarType mortar_type) override
 
virtual void computeResidual () override
 
virtual void computeResidual (Moose::MortarType mortar_type)=0
 
void computeJacobian (Moose::MortarType mortar_type) override
 
virtual void computeJacobian () override
 
virtual void computeJacobian (Moose::MortarType mortar_type)=0
 
void computeResidualAndJacobian () override
 
const FEProblemBasefeProblem () const
 
virtual void precalculateResidual ()
 
virtual void precalculateJacobian ()
 
virtual void precalculateOffDiagJacobian (unsigned int)
 
const MooseVariableFieldBasegetVariable (unsigned int jvar_num) const
 
void flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const
 
InvalidSolutionID registerInvalidSolutionInternal (const std::string &message, const bool warning) 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
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar)
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 
void prepareVectorTagNeighbor (Assembly &assembly, unsigned int ivar)
 
void prepareVectorTagLower (Assembly &assembly, unsigned int ivar)
 
void prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar)
 
void prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar, DenseMatrix< Number > &k) const
 
void prepareMatrixTagNonlocal (Assembly &assembly, unsigned int ivar, unsigned int jvar)
 
void prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type)
 
void prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, DenseMatrix< Number > &k) const
 
void prepareMatrixTagLower (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::ConstraintJacobianType type)
 
void accumulateTaggedLocalResidual ()
 
void assignTaggedLocalResidual ()
 
void accumulateTaggedLocalMatrix ()
 
void accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, const DenseMatrix< Number > &k)
 
void accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, const DenseMatrix< Number > &k)
 
void accumulateTaggedNonlocalMatrix ()
 
void assignTaggedLocalMatrix ()
 
void addResiduals (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addResiduals (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, const std::vector< Real > &scaling_factors)
 
void addResiduals (Assembly &assembly, const DenseVector< T > &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addResiduals (Assembly &assembly, const ADResidualsPacket &packet)
 
void addResidualsAndJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addResidualsAndJacobian (Assembly &assembly, const ADResidualsPacket &packet)
 
void addJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addJacobian (Assembly &assembly, const ADResidualsPacket &packet)
 
void addJacobian (Assembly &assembly, DenseMatrix< Real > &local_k, const std::vector< dof_id_type > &row_indices, const std::vector< dof_id_type > &column_indices, Real scaling_factor)
 
void addResidualsWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addResidualsAndJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 
void addJacobianElement (Assembly &assembly, Real value, dof_id_type row_index, dof_id_type column_index, Real scaling_factor)
 
void setResidual (SystemBase &sys, const T &residual, MooseVariableFE< T > &var)
 
void setResidual (SystemBase &sys, Real residual, dof_id_type dof_index)
 
void setResidual (SystemBase &sys, SetResidualFunctor set_residual_functor)
 
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 ()
 
bool checkVar (const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const
 
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
 
void validateExecutionerType (const std::string &name, const std::string &fn_name) const
 
std::vector< T > coupledVectorHelper (const std::string &var_name, const Func &func) 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
 
const std::set< SubdomainID > & getHigherDimSubdomainIDs () const
 
const std::set< BoundaryID > & getBoundaryIDs () const
 
const AutomaticMortarGenerationamg () const
 
bool interpolateNormals () const
 
virtual void checkMaterialProperty (const std::string &name, const unsigned int state)
 
virtual void getKokkosMaterialPropertyHook (const std::string &, const unsigned int)
 
void markMatPropRequested (const std::string &)
 
MaterialPropertyName getMaterialPropertyName (const std::string &name) const
 
void checkExecutionStage ()
 
virtual const OutputTools< Real >::VariableValuevalue ()
 
virtual const OutputTools< Real >::VariableValuevalueOld ()
 
virtual const OutputTools< Real >::VariableValuevalueOlder ()
 
virtual const OutputTools< Real >::VariableValuedot ()
 
virtual const OutputTools< Real >::VariableValuedotDot ()
 
virtual const OutputTools< Real >::VariableValuedotOld ()
 
virtual const OutputTools< Real >::VariableValuedotDotOld ()
 
virtual const VariableValuedotDu ()
 
virtual const VariableValuedotDotDu ()
 
virtual const OutputTools< Real >::VariableGradientgradient ()
 
virtual const OutputTools< Real >::VariableGradientgradientOld ()
 
virtual const OutputTools< Real >::VariableGradientgradientOlder ()
 
virtual const OutputTools< Real >::VariableSecondsecond ()
 
virtual const OutputTools< Real >::VariableSecondsecondOld ()
 
virtual const OutputTools< Real >::VariableSecondsecondOlder ()
 
virtual const OutputTools< Real >::VariableTestSecondsecondTest ()
 
virtual const OutputTools< Real >::VariableTestSecondsecondTestFace ()
 
virtual const OutputTools< Real >::VariablePhiSecondsecondPhi ()
 
virtual const OutputTools< Real >::VariablePhiSecondsecondPhiFace ()
 
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)
 

Static Protected Member Functions

static void trimDerivative (dof_id_type remove_derivative_index, ADReal &dual_number)
 
static void trimInteriorNodeDerivatives (const std::map< unsigned int, unsigned int > &primary_ip_lowerd_map, const Variables &moose_var, DualNumbers &ad_vars, const bool is_secondary)
 

Protected Attributes

std::vector< UserObjectName > _gap_flux_model_names
 Gap flux model names. More...
 
std::vector< const GapFluxModelBase * > _gap_flux_models
 Gap flux models. More...
 
const ADVariableValue_lambda
 
const ADVariableValue_u_secondary
 
const ADVariableValue_u_primary
 
const ADVariableGradient_grad_u_secondary
 
const ADVariableGradient_grad_u_primary
 
FEProblemBase_fe_problem
 
MooseVariable *const _var
 
MooseVariableField< Real > & _secondary_var
 
MooseVariableField< Real > & _primary_var
 
const bool _compute_primal_residuals
 
const bool _compute_lm_residuals
 
const VariableTestValue _test_dummy
 
const bool _use_dual
 
const MooseArray< std::vector< Point > > & _tangents
 
const MooseArray< Real > & _coord
 
const std::vector< Point > & _q_point
 
const bool _use_petrov_galerkin
 
const MooseVariable *const _aux_lm_var
 
const VariableTestValue_test
 
const VariableTestValue_test_secondary
 
const VariableTestValue_test_primary
 
const VariableTestGradient_grad_test_secondary
 
const VariableTestGradient_grad_test_primary
 
const Elem *const & _interior_secondary_elem
 
const Elem *const & _interior_primary_elem
 
const bool _displaced
 
unsigned int _i
 
unsigned int _j
 
unsigned int _qp
 
SubProblem_subproblem
 
SystemBase_sys
 
THREAD_ID _tid
 
Assembly_assembly
 
MooseMesh_mesh
 
const bool & _enabled
 
MooseApp_app
 
Factory_factory
 
ActionFactory_action_factory
 
const std::string & _type
 
const std::string & _name
 
const InputParameters_pars
 
const ExecFlagEnum_execute_enum
 
const ExecFlagType_current_execute_flag
 
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
 
DenseVector< Number_local_re
 
DenseMatrix< Number_local_ke
 
DenseMatrix< Number_nonlocal_ke
 
GeometricSearchData_geometric_search_data
 
bool _requires_geometric_search
 
bool _neighbor_nodal
 
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< MooseVariableField< Real > *> _coupled_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::vector< std::unique_ptr< VariableValue > > > _default_value
 
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
 
FEProblemBase_sc_fe_problem
 
const THREAD_ID _sc_tid
 
const Real_real_zero
 
const VariableValue_scalar_zero
 
const Point & _point_zero
 
FEProblemBase_mci_fe_problem
 
SubProblem_mci_subproblem
 
const THREAD_ID _mci_tid
 
MooseMesh_mci_mesh
 
Assembly_mci_assembly
 
const MortarInterfaceWarehouse_mortar_data
 
const BoundaryID _secondary_id
 
const BoundaryID _primary_id
 
const SubdomainID _secondary_subdomain_id
 
const SubdomainID _primary_subdomain_id
 
std::set< BoundaryID_secondary_set
 
std::set< BoundaryID_boundary_ids
 
std::set< SubdomainID_higher_dim_subdomain_ids
 
const bool _interpolate_normals
 
const MooseArray< Point > & _phys_points_secondary
 
const MooseArray< Point > & _phys_points_primary
 
const libMesh::QBase *const & _qrule_msm
 
const libMesh::QBase *const & _qrule_face
 
Elem const *const & _lower_secondary_elem
 
Elem const *const & _lower_primary_elem
 
const std::vector< Real > & _JxW_msm
 
const Elem *const & _msm_elem
 
std::vector< Point > _normals
 
MaterialData_neighbor_material_data
 
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 bool _is_kokkos_object
 
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
 
bool _nodal
 
MooseVariableFE< Real > * _variable
 
MooseVariableFV< Real > * _fv_variable
 
MooseLinearVariableFV< Real > * _linear_fv_variable
 
MooseVariableField< Real > * _field_variable
 
Assembly_mvi_assembly
 
const Parallel::Communicator & _communicator
 
const std::vector< std::string > _disp_name
 Displacement variables. More...
 
const unsigned int _n_disp
 
std::vector< const ADVariableValue * > _disp_secondary
 
std::vector< const ADVariableValue * > _disp_primary
 

Static Protected Attributes

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

Private Types

enum  GapGeometry { GapGeometry::AUTO, GapGeometry::PLATE, GapGeometry::CYLINDER, GapGeometry::SPHERE }
 Gap geometry (user input or internally overwritten) More...
 

Private Member Functions

virtual ADReal computeSurfaceIntegrationFactor () const
 
virtual ADReal computeGapLength () const
 
void computeGapRadii (const ADReal &gap_length)
 Computes radii as a function of point and geometry. More...
 
virtual void setGapGeometryParameters (const InputParameters &params, const Moose::CoordinateSystemType coord_sys, unsigned int axisymmetric_radial_coord, GapGeometry &gap_geometry_type)
 
void deduceGeometryParameters ()
 Automatically set up axis/center for 2D cartesian problems with cylindrical/spherical gap geometry. More...
 

Private Attributes

enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
 
ADReal _gap_width
 Gap width to pass into flux models. More...
 
ADReal _surface_integration_factor
 Factor to preserve energy balance (due to mismatch in primary/secondary differential surface sizes) More...
 
const Real _max_gap
 
ADReal _adjusted_length
 
const MooseVariable *const _disp_x_var
 x-displacement variable More...
 
const MooseVariable *const _disp_y_var
 y-displacement variable More...
 
const MooseVariable *const _disp_z_var
 z-displacement variable More...
 
ADReal _normal_pressure
 Cached contact pressure for use by UserObjects. More...
 
Point & _p1
 Points for geometric definitions. More...
 
Point & _p2
 
ADReal _r1
 Radii for quadrature points. More...
 
ADReal _r2
 
ADReal _radius
 

Friends

class GapFluxModelBase
 

Detailed Description

This Constraint implements thermal contact using a "gap conductance" model in which the flux is represented by an independent "Lagrange multiplier" like variable.

Definition at line 21 of file ModularGapConductanceConstraint.h.

Member Enumeration Documentation

◆ GapGeometry

Gap geometry (user input or internally overwritten)

Enumerator
AUTO 
PLATE 
CYLINDER 
SPHERE 

Definition at line 60 of file ModularGapConductanceConstraint.h.

61  {
62  AUTO,
63  PLATE,
64  CYLINDER,
65  SPHERE,
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type

Constructor & Destructor Documentation

◆ ModularGapConductanceConstraint()

ModularGapConductanceConstraint::ModularGapConductanceConstraint ( const InputParameters parameters)

Definition at line 61 of file ModularGapConductanceConstraint.C.

63  _gap_flux_model_names(getParam<std::vector<UserObjectName>>("gap_flux_models")),
64  _disp_name(parameters.getVecMooseType("displacements")),
65  _n_disp(_disp_name.size()),
68  _gap_geometry_type(getParam<MooseEnum>("gap_geometry_type").getEnum<GapGeometry>()),
69  _gap_width(0.0),
71  _p1(declareRestartableData<Point>("cylinder_axis_point_1", Point(0, 1, 0))),
72  _p2(declareRestartableData<Point>("cylinder_axis_point_2", Point(0, 0, 0))),
73  _r1(0),
74  _r2(0),
75  _max_gap(getParam<Real>("max_gap")),
76  _adjusted_length(0.0),
77  _disp_x_var(getVar("displacements", 0)),
78  _disp_y_var(getVar("displacements", 1)),
79  _disp_z_var(_n_disp == 3 ? getVar("displacements", 2) : nullptr)
80 {
81  if (_n_disp && !getParam<bool>("use_displaced_mesh"))
82  paramWarning("displacements",
83  "You are coupling displacement variables but are evaluating the gap width on the "
84  "undisplaced mesh. This is probably a mistake.");
85 
86  for (unsigned int i = 0; i < _n_disp; ++i)
87  {
88  auto & disp_var = _subproblem.getStandardVariable(_tid, _disp_name[i]);
89  _disp_secondary[i] = &disp_var.adSln();
90  _disp_primary[i] = &disp_var.adSlnNeighbor();
91  }
92 
93  const auto use_displaced_mesh = getParam<bool>("use_displaced_mesh");
94 
95  for (const auto & name : _gap_flux_model_names)
96  {
97  const auto & gap_model = getUserObjectByName<GapFluxModelBase>(name);
98 
99  // This constraint explicitly calls the gap flux model user objects to
100  // obtain contributions to its residuals. It therefore depends on all
101  // variables and material properties, that these gap flux models use, to be
102  // computed and up to date. To ensure that we collect all variable and
103  // material property dependencies of these models and declare them as
104  // dependencies of this constraint object. This turns an implicit, hidden
105  // dependency into an explicit dependency that MOOSE will automatically fulfill.
106 
107  // pass variable dependencies through
108  const auto & var_dependencies = gap_model.getMooseVariableDependencies();
109  for (const auto & var : var_dependencies)
111 
112  // pass material property dependencies through
113  const auto & mat_dependencies = gap_model.getMatPropDependencies();
114  _material_property_dependencies.insert(mat_dependencies.begin(), mat_dependencies.end());
115 
116  // ensure that the constraint and the flux models operate on the same mesh
117  if (gap_model.parameters().get<bool>("use_displaced_mesh") != use_displaced_mesh)
118  paramError(
119  "use_displaced_mesh",
120  "The gap flux model '",
121  name,
122  "' should operate on the same mesh (displaced/undisplaced) as the constraint object");
123 
124  // add gap model to list
125  _gap_flux_models.push_back(&gap_model);
126  }
127 }
std::vector< const ADVariableValue * > _disp_primary
ADMortarConstraint(const InputParameters &parameters)
const MooseVariable *const _disp_y_var
y-displacement variable
void paramError(const std::string &param, Args... args) const
const T & getParam(const std::string &name) const
const InputParameters & parameters() const
ADReal _r1
Radii for quadrature points.
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
const std::string & name() const
std::vector< const ADVariableValue * > _disp_secondary
SubProblem & _subproblem
const std::vector< std::string > _disp_name
Displacement variables.
std::vector< const GapFluxModelBase * > _gap_flux_models
Gap flux models.
virtual MooseVariable & getStandardVariable(const THREAD_ID tid, const std::string &var_name)=0
const MooseVariable *const _disp_x_var
x-displacement variable
void addMooseVariableDependency(MooseVariableFieldBase *var)
std::vector< UserObjectName > _gap_flux_model_names
Gap flux model names.
Point & _p1
Points for geometric definitions.
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
const MooseVariable *const _disp_z_var
z-displacement variable
void paramWarning(const std::string &param, Args... args) const
ADReal _surface_integration_factor
Factor to preserve energy balance (due to mismatch in primary/secondary differential surface sizes) ...
std::vector< std::string > getVecMooseType(const std::string &name) const
std::unordered_set< unsigned int > _material_property_dependencies
ADReal _gap_width
Gap width to pass into flux models.

Member Function Documentation

◆ computeGapLength()

ADReal ModularGapConductanceConstraint::computeGapLength ( ) const
privatevirtual

Definition at line 272 of file ModularGapConductanceConstraint.C.

Referenced by computeQpResidual().

273 {
274  using std::log, std::min;
275 
277  {
278  const auto denominator = _radius * log(_r2 / _r1);
279  return min(denominator, _max_gap);
280  }
282  {
283  const auto denominator = _radius * _radius * ((1.0 / _r1) - (1.0 / _r2));
284  return min(denominator, _max_gap);
285  }
286  else
287  return min(_r2 - _r1, _max_gap);
288 }
ADReal _r1
Radii for quadrature points.
auto log(const T &)
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
auto min(const L &left, const R &right)

◆ computeGapRadii()

void ModularGapConductanceConstraint::computeGapRadii ( const ADReal gap_length)
private

Computes radii as a function of point and geometry.

Definition at line 291 of file ModularGapConductanceConstraint.C.

Referenced by computeQpResidual().

292 {
293  const Point & current_point = _q_point[_qp];
294 
296  {
297  // The vector _p1 + t*(_p2-_p1) defines the cylindrical axis. The point along this
298  // axis closest to current_point is found by the following for t:
299  const Point p2p1(_p2 - _p1);
300  const Point p1pc(_p1 - current_point);
301  const Real t = -(p1pc * p2p1) / p2p1.norm_sq();
302 
303  // The nearest point on the cylindrical axis to current_point is p.
304  const Point p(_p1 + t * p2p1);
305  Point rad_vec(current_point - p);
306  Real rad = rad_vec.norm();
307  rad_vec /= rad;
308  Real rad_dot_norm = rad_vec * _normals[_qp];
309 
310  if (rad_dot_norm > 0)
311  {
312  _r1 = rad;
313  _r2 = rad + gap_length;
314  _radius = _r1;
315  }
316  else if (rad_dot_norm < 0)
317  {
318  _r1 = rad - gap_length;
319  _r2 = rad;
320  _radius = _r2;
321  }
322  else
323  mooseError("Issue with cylindrical flux calculation normals.\n");
324  }
326  {
327  const Point origin_to_curr_point(current_point - _p1);
328  const Real normal_dot = origin_to_curr_point * _normals[_qp];
329  const Real curr_point_radius = origin_to_curr_point.norm();
330  if (normal_dot > 0) // on inside surface
331  {
332  _r1 = curr_point_radius;
333  _r2 = curr_point_radius + gap_length;
334  _radius = _r1;
335  }
336  else if (normal_dot < 0) // on outside surface
337  {
338  _r1 = curr_point_radius - gap_length;
339  _r2 = curr_point_radius;
340  _radius = _r2;
341  }
342  else
343  mooseError("Issue with spherical flux calculation normals. \n");
344  }
345  else
346  {
347  _r2 = gap_length;
348  _r1 = 0;
349  _radius = 0;
350  }
351 }
const std::vector< Point > & _q_point
ADReal _r1
Radii for quadrature points.
std::vector< Point > _normals
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
Point & _p1
Points for geometric definitions.
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
unsigned int _qp

◆ computeQpResidual()

ADReal ModularGapConductanceConstraint::computeQpResidual ( Moose::MortarType  mortar_type)
overrideprotectedvirtual

Computes the residual for the LM equation, lambda = (k/l)*(T^(1) - PT^(2)).

Implements ADMortarConstraint.

Definition at line 354 of file ModularGapConductanceConstraint.C.

355 {
356  switch (mortar_type)
357  {
359  return _lambda[_qp] * _test_primary[_i][_qp];
360 
362  return -_lambda[_qp] * _test_secondary[_i][_qp];
363 
365  {
366  // we are creating an AD version of phys points primary and secondary here...
367  ADRealVectorValue ad_phys_points_primary = _phys_points_primary[_qp];
368  ADRealVectorValue ad_phys_points_secondary = _phys_points_secondary[_qp];
369 
370  // ...which uses the derivative vector of the primary and secondary displacements as
371  // an approximation of the true phys points derivatives when the mesh is displacing
372  if (_displaced)
373  {
374  // Trim interior node variable derivatives
375  const auto & primary_ip_lowerd_map = amg().getPrimaryIpToLowerElementMap(
377  const auto & secondary_ip_lowerd_map =
379 
380  std::array<const MooseVariable *, 3> var_array{{_disp_x_var, _disp_y_var, _disp_z_var}};
381  std::array<ADReal, 3> primary_disp;
382  std::array<ADReal, 3> secondary_disp;
383 
384  for (unsigned int i = 0; i < _n_disp; ++i)
385  {
386  primary_disp[i] = (*_disp_primary[i])[_qp];
387  secondary_disp[i] = (*_disp_secondary[i])[_qp];
388  }
389 
390  trimInteriorNodeDerivatives(primary_ip_lowerd_map, var_array, primary_disp, false);
391  trimInteriorNodeDerivatives(secondary_ip_lowerd_map, var_array, secondary_disp, true);
392 
393  // Populate quantities with trimmed derivatives
394  for (unsigned int i = 0; i < _n_disp; ++i)
395  {
396  ad_phys_points_primary(i).derivatives() = primary_disp[i].derivatives();
397  ad_phys_points_secondary(i).derivatives() = secondary_disp[i].derivatives();
398  }
399  }
400 
401  // compute an ADReal gap width to pass to each gap flux model
402  _gap_width = (ad_phys_points_primary - ad_phys_points_secondary) * _normals[_qp];
403 
404  // First, compute radii with _gap_width
406 
407  // With radii, compute adjusted gap length for conduction
409 
410  // Ensure energy balance for non-flat (non-PLATE) general geometries when using radiation
412 
413  // Sum up all flux contributions from all supplied gap flux models
414  ADReal flux = 0.0;
415  for (const auto & model : _gap_flux_models)
416  flux += model->computeFluxInternal(*this);
417 
418  // The Lagrange multiplier _is_ the gap flux
419  return (_lambda[_qp] - flux) * _test[_i][_qp];
420  }
421 
422  default:
423  return 0;
424  }
425 }
std::vector< const ADVariableValue * > _disp_primary
const VariableTestValue & _test_secondary
const MooseVariable *const _disp_y_var
y-displacement variable
std::map< unsigned int, unsigned int > getPrimaryIpToLowerElementMap(const Elem &primary_elem, const Elem &primary_elem_ip, const Elem &lower_secondary_elem) const
const MooseArray< Point > & _phys_points_primary
Elem const *const & _lower_primary_elem
unsigned int _i
DualNumber< Real, DNDerivativeType, true > ADReal
const ADVariableValue & _lambda
const VariableTestValue & _test
Elem const *const & _lower_secondary_elem
const AutomaticMortarGeneration & amg() const
static void trimInteriorNodeDerivatives(const std::map< unsigned int, unsigned int > &primary_ip_lowerd_map, const Variables &moose_var, DualNumbers &ad_vars, const bool is_secondary)
std::vector< const ADVariableValue * > _disp_secondary
std::vector< Point > _normals
void computeGapRadii(const ADReal &gap_length)
Computes radii as a function of point and geometry.
std::vector< const GapFluxModelBase * > _gap_flux_models
Gap flux models.
std::map< unsigned int, unsigned int > getSecondaryIpToLowerElementMap(const Elem &lower_secondary_elem) const
const MooseVariable *const _disp_x_var
x-displacement variable
const MooseArray< Point > & _phys_points_secondary
const PertinentGeochemicalSystem model(database, {"H2O", "H+", "HCO3-", "O2(aq)", "Ca++", ">(s)FeOH", "radius_neg1", "radius_neg1.5"}, {"Calcite"}, {}, {"Calcite_asdf"}, {"CH4(aq)"}, {">(s)FeOCa+"}, "O2(aq)", "e-")
const bool _displaced
const MooseVariable *const _disp_z_var
z-displacement variable
ADReal _surface_integration_factor
Factor to preserve energy balance (due to mismatch in primary/secondary differential surface sizes) ...
const VariableTestValue & _test_primary
unsigned int _qp
ADReal _gap_width
Gap width to pass into flux models.

◆ computeSurfaceIntegrationFactor()

ADReal ModularGapConductanceConstraint::computeSurfaceIntegrationFactor ( ) const
privatevirtual

Definition at line 258 of file ModularGapConductanceConstraint.C.

Referenced by computeQpResidual().

259 {
260 
261  ADReal surface_integration_factor = 1.0;
262 
264  surface_integration_factor = 0.5 * (_r1 + _r2) / _radius;
266  surface_integration_factor = 0.25 * (_r1 + _r2) * (_r1 + _r2) / (_radius * _radius);
267 
268  return surface_integration_factor;
269 }
ADReal _r1
Radii for quadrature points.
DualNumber< Real, DNDerivativeType, true > ADReal
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type

◆ deduceGeometryParameters()

void ModularGapConductanceConstraint::deduceGeometryParameters ( )
private

Automatically set up axis/center for 2D cartesian problems with cylindrical/spherical gap geometry.

Definition at line 428 of file ModularGapConductanceConstraint.C.

Referenced by setGapGeometryParameters().

429 {
430  Point position;
431  Real area = 0.0;
432  const auto my_pid = processor_id();
433 
434  // build side element list as (element, side, id) tuples
435  const auto bnd = _mesh.buildActiveSideList();
436 
437  std::unique_ptr<const Elem> side_ptr;
438  for (auto [elem_id, side, id] : bnd)
439  if (id == _primary_id)
440  {
441  const auto * elem = _mesh.elemPtr(elem_id);
442  if (elem->processor_id() != my_pid)
443  continue;
444 
445  // update side_ptr
446  elem->side_ptr(side_ptr, side);
447 
448  // area of the (linearized) side
449  const auto side_area = side_ptr->volume();
450 
451  // position of the side
452  const auto side_position = side_ptr->true_centroid();
453 
454  // sum up
455  position += side_position * side_area;
456  area += side_area;
457  }
458 
459  // parallel communication
460  _communicator.sum(position);
461  _communicator.sum(area);
462 
463  // set axis
464  if (area == 0.0)
465  {
467  paramError("gap_geometry_type",
468  "Unable to decuce cylinder axis automatically, please specify "
469  "'cylinder_axis_point_1' and 'cylinder_axis_point_2'.");
471  paramError("gap_geometry_type",
472  "Unable to decuce sphere origin automatically, please specify "
473  "'sphere_origin'.");
474  else
475  mooseError("Internal error.");
476  }
477 
478  _p1 = position / area;
479  _p2 = _p1 + Point(0, 0, 1);
480 }
MooseMesh & _mesh
void paramError(const std::string &param, Args... args) const
virtual Elem * elemPtr(const dof_id_type i)
std::vector< std::tuple< dof_id_type, unsigned short int, boundary_id_type > > buildActiveSideList() const
const Parallel::Communicator & _communicator
const BoundaryID _primary_id
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
Point & _p1
Points for geometric definitions.
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
processor_id_type processor_id() const

◆ initialSetup()

void ModularGapConductanceConstraint::initialSetup ( )
overridevirtual

set generated from the passed in vector of subdomain names

Reimplemented from ADMortarConstraint.

Definition at line 130 of file ModularGapConductanceConstraint.C.

131 {
133  const auto & subdomainIDs = _mesh.meshSubdomains();
134 
135  // make sure all subdomains are using the same coordinate system
136  Moose::CoordinateSystemType coord_system = feProblem().getCoordSystem(*subdomainIDs.begin());
137  for (auto subdomain : subdomainIDs)
138  if (feProblem().getCoordSystem(subdomain) != coord_system)
139  mooseError("ModularGapConductanceConstraint requires all subdomains to have the same "
140  "coordinate system.");
141 
142  // Select proper coordinate system and geometry (plate, cylinder, sphere)
144  _pars, coord_system, feProblem().getAxisymmetricRadialCoord(), _gap_geometry_type);
145 }
MooseMesh & _mesh
const InputParameters & _pars
const FEProblemBase & feProblem() const
CoordinateSystemType
virtual void setGapGeometryParameters(const InputParameters &params, const Moose::CoordinateSystemType coord_sys, unsigned int axisymmetric_radial_coord, GapGeometry &gap_geometry_type)
void mooseError(Args &&... args) const
enum ModularGapConductanceConstraint::GapGeometry _gap_geometry_type
Moose::CoordinateSystemType getCoordSystem(SubdomainID sid) const
const std::set< SubdomainID > & meshSubdomains() const

◆ setGapGeometryParameters()

void ModularGapConductanceConstraint::setGapGeometryParameters ( const InputParameters params,
const Moose::CoordinateSystemType  coord_sys,
unsigned int  axisymmetric_radial_coord,
GapGeometry gap_geometry_type 
)
privatevirtual

Definition at line 148 of file ModularGapConductanceConstraint.C.

Referenced by initialSetup().

153 {
154 
155  // Determine what type of gap geometry we are dealing with
156  // Either user input or from system's coordinate systems
157  if (gap_geometry_type == GapGeometry::AUTO)
158  {
159  if (coord_sys == Moose::COORD_XYZ)
160  gap_geometry_type = GapGeometry::PLATE;
161  else if (coord_sys == Moose::COORD_RZ)
162  gap_geometry_type = GapGeometry::CYLINDER;
163  else if (coord_sys == Moose::COORD_RSPHERICAL)
164  gap_geometry_type = GapGeometry::SPHERE;
165  else
166  mooseError("Internal Error");
167  }
168 
169  if (params.isParamValid("cylinder_axis_point_1") != params.isParamValid("cylinder_axis_point_2"))
170  paramError(
171  "cylinder_axis_point_1",
172  "Either specify both `cylinder_axis_point_1` and `cylinder_axis_point_2` or neither.");
173 
174  // Check consistency of geometry information
175  // Inform the user of needed input according to gap geometry (if not PLATE)
176  if (gap_geometry_type == GapGeometry::PLATE)
177  {
178  if (coord_sys == Moose::COORD_RSPHERICAL)
179  paramError("gap_geometry_type",
180  "'gap_geometry_type = PLATE' cannot be used with models having a spherical "
181  "coordinate system.");
182  }
183  else if (gap_geometry_type == GapGeometry::CYLINDER)
184  {
185  if (coord_sys == Moose::COORD_XYZ)
186  {
187  if (params.isParamValid("cylinder_axis_point_1") &&
188  params.isParamValid("cylinder_axis_point_2"))
189  {
190  _p1 = params.get<RealVectorValue>("cylinder_axis_point_1");
191  _p2 = params.get<RealVectorValue>("cylinder_axis_point_2");
192  }
193  else if (_mesh.dimension() == 3)
194  paramError("gap_geometry_type",
195  "For 'gap_geometry_type = CYLINDER' to be used with a Cartesian model in 3D, "
196  "'cylinder_axis_point_1' and 'cylinder_axis_point_2' must be specified.");
197  else
198  {
201  "ModularGapConductanceConstraint '", name(), "' deduced cylinder axis as ", _p1, _p2);
202  }
203  }
204  else if (coord_sys == Moose::COORD_RZ)
205  {
206  if (params.isParamValid("cylinder_axis_point_1") ||
207  params.isParamValid("cylinder_axis_point_2"))
208  paramError("cylinder_axis_point_1",
209  "The 'cylinder_axis_point_1' and 'cylinder_axis_point_2' cannot be specified "
210  "with axisymmetric models. The y-axis is used as the cylindrical axis of "
211  "symmetry.");
212 
213  if (axisymmetric_radial_coord == 0) // R-Z problem
214  {
215  _p1 = Point(0, 0, 0);
216  _p2 = Point(0, 1, 0);
217  }
218  else // Z-R problem
219  {
220  _p1 = Point(0, 0, 0);
221  _p2 = Point(1, 0, 0);
222  }
223  }
224  else if (coord_sys == Moose::COORD_RSPHERICAL)
225  paramError("gap_geometry_type",
226  "'gap_geometry_type = CYLINDER' cannot be used with models having a spherical "
227  "coordinate system.");
228  }
229  else if (gap_geometry_type == GapGeometry::SPHERE)
230  {
231  if (coord_sys == Moose::COORD_XYZ || coord_sys == Moose::COORD_RZ)
232  {
233  if (params.isParamValid("sphere_origin"))
234  _p1 = params.get<RealVectorValue>("sphere_origin");
235  else if (coord_sys == Moose::COORD_XYZ)
236  {
239  "ModularGapConductanceConstraint '", name(), "' deduced sphere origin as ", _p1);
240  }
241  else
242  paramError("gap_geometry_type",
243  "For 'gap_geometry_type = SPHERE' to be used with an axisymmetric "
244  "model, 'sphere_origin' must be specified.");
245  }
246  else if (coord_sys == Moose::COORD_RSPHERICAL)
247  {
248  if (params.isParamValid("sphere_origin"))
249  paramError("sphere_origin",
250  "The 'sphere_origin' cannot be specified with spherical models. x=0 is used "
251  "as the spherical origin.");
252  _p1 = Point(0, 0, 0);
253  }
254  }
255 }
MooseMesh & _mesh
void paramError(const std::string &param, Args... args) const
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
void deduceGeometryParameters()
Automatically set up axis/center for 2D cartesian problems with cylindrical/spherical gap geometry...
void mooseInfoRepeated(Args &&... args)
COORD_RSPHERICAL
const std::string & name() const
virtual unsigned int dimension() const
void mooseError(Args &&... args) const
Point & _p1
Points for geometric definitions.
bool isParamValid(const std::string &name) const

◆ validParams()

InputParameters ModularGapConductanceConstraint::validParams ( )
static

Definition at line 22 of file ModularGapConductanceConstraint.C.

Referenced by MortarGapHeatTransferAction::validParams().

23 {
25  params.addClassDescription(
26  "Computes the residual and Jacobian contributions for the 'Lagrange Multiplier' "
27  "implementation of the thermal contact problem. For more information, see the "
28  "detailed description here: http://tinyurl.com/gmmhbe9");
29  params.addParam<std::vector<UserObjectName>>("gap_flux_models",
30  "List of GapFluxModel user objects");
31  params.addCoupledVar("displacements", "Displacement variables");
32 
33  MooseEnum gap_geometry_type("AUTO PLATE CYLINDER SPHERE", "AUTO");
34  params.addParam<MooseEnum>(
35  "gap_geometry_type",
36  gap_geometry_type,
37  "Gap calculation type. The geometry type is used to compute "
38  "gap distances and scale fluxes to ensure energy balance. If AUTO is selected, the gap "
39  "geometry is automatically set via the mesh coordinate system.");
40  params.addRangeCheckedParam<Real>("max_gap", 1.0e6, "max_gap>=0", "A maximum gap size");
41  params.addParam<RealVectorValue>("cylinder_axis_point_1",
42  "Start point for line defining cylindrical axis");
43  params.addParam<RealVectorValue>("cylinder_axis_point_2",
44  "End point for line defining cylindrical axis");
45  params.addParam<RealVectorValue>("sphere_origin", "Origin for sphere geometry");
46 
47  // We should default use_displaced_mesh to true. If no displaced mesh exists
48  // FEProblemBase::addConstraint will automatically correct it to false. However,
49  // this will still prompt a call from AugmentSparsityOnInterface to get a displaced
50  // mortar interface since object._use_displaced_mesh = true.
51 
52  // These parameter groups have to match the MortarGapHeatTransferAction's
53  params.addParamNamesToGroup("gap_flux_models", "Gap flux models");
54  params.addParamNamesToGroup(
55  "gap_geometry_type max_gap cylinder_axis_point_1 cylinder_axis_point_2 sphere_origin",
56  "Gap geometry");
57 
58  return params;
59 }
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addCoupledVar(const std::string &name, const std::string &doc_string)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addClassDescription(const std::string &doc_string)
static InputParameters validParams()
void addRangeCheckedParam(const std::string &name, const T &value, const std::string &parsed_function, const std::string &doc_string)
void addParamNamesToGroup(const std::string &space_delim_names, const std::string group_name)

Friends And Related Function Documentation

◆ GapFluxModelBase

friend class GapFluxModelBase
friend

Definition at line 107 of file ModularGapConductanceConstraint.h.

Member Data Documentation

◆ _adjusted_length

ADReal ModularGapConductanceConstraint::_adjusted_length
private

◆ _disp_name

const std::vector<std::string> ModularGapConductanceConstraint::_disp_name
protected

Displacement variables.

Definition at line 43 of file ModularGapConductanceConstraint.h.

Referenced by ModularGapConductanceConstraint().

◆ _disp_primary

std::vector<const ADVariableValue *> ModularGapConductanceConstraint::_disp_primary
protected

◆ _disp_secondary

std::vector<const ADVariableValue *> ModularGapConductanceConstraint::_disp_secondary
protected

◆ _disp_x_var

const MooseVariable* const ModularGapConductanceConstraint::_disp_x_var
private

x-displacement variable

Definition at line 98 of file ModularGapConductanceConstraint.h.

Referenced by computeQpResidual().

◆ _disp_y_var

const MooseVariable* const ModularGapConductanceConstraint::_disp_y_var
private

y-displacement variable

Definition at line 100 of file ModularGapConductanceConstraint.h.

Referenced by computeQpResidual().

◆ _disp_z_var

const MooseVariable* const ModularGapConductanceConstraint::_disp_z_var
private

z-displacement variable

Definition at line 102 of file ModularGapConductanceConstraint.h.

Referenced by computeQpResidual().

◆ _gap_flux_model_names

std::vector<UserObjectName> ModularGapConductanceConstraint::_gap_flux_model_names
protected

Gap flux model names.

Definition at line 37 of file ModularGapConductanceConstraint.h.

Referenced by ModularGapConductanceConstraint().

◆ _gap_flux_models

std::vector<const GapFluxModelBase *> ModularGapConductanceConstraint::_gap_flux_models
protected

Gap flux models.

Definition at line 40 of file ModularGapConductanceConstraint.h.

Referenced by computeQpResidual(), and ModularGapConductanceConstraint().

◆ _gap_geometry_type

enum ModularGapConductanceConstraint::GapGeometry ModularGapConductanceConstraint::_gap_geometry_type
private

◆ _gap_width

ADReal ModularGapConductanceConstraint::_gap_width
private

Gap width to pass into flux models.

Definition at line 77 of file ModularGapConductanceConstraint.h.

Referenced by GapFluxModelBase::computeFluxInternal(), and computeQpResidual().

◆ _max_gap

const Real ModularGapConductanceConstraint::_max_gap
private

Definition at line 93 of file ModularGapConductanceConstraint.h.

Referenced by computeGapLength().

◆ _n_disp

const unsigned int ModularGapConductanceConstraint::_n_disp
protected

◆ _normal_pressure

ADReal ModularGapConductanceConstraint::_normal_pressure
private

Cached contact pressure for use by UserObjects.

Definition at line 105 of file ModularGapConductanceConstraint.h.

Referenced by GapFluxModelBase::computeFluxInternal().

◆ _p1

Point& ModularGapConductanceConstraint::_p1
private

Points for geometric definitions.

Definition at line 83 of file ModularGapConductanceConstraint.h.

Referenced by computeGapRadii(), deduceGeometryParameters(), and setGapGeometryParameters().

◆ _p2

Point& ModularGapConductanceConstraint::_p2
private

◆ _r1

ADReal ModularGapConductanceConstraint::_r1
private

Radii for quadrature points.

Definition at line 88 of file ModularGapConductanceConstraint.h.

Referenced by computeGapLength(), computeGapRadii(), and computeSurfaceIntegrationFactor().

◆ _r2

ADReal ModularGapConductanceConstraint::_r2
private

◆ _radius

ADReal ModularGapConductanceConstraint::_radius
private

◆ _surface_integration_factor

ADReal ModularGapConductanceConstraint::_surface_integration_factor
private

Factor to preserve energy balance (due to mismatch in primary/secondary differential surface sizes)

Definition at line 80 of file ModularGapConductanceConstraint.h.

Referenced by GapFluxModelBase::computeFluxInternal(), and computeQpResidual().


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