Action class for creating constraints, kernels, and user objects necessary for mechanical contact. More...
#include <ContactAction.h>
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
ContactAction (const InputParameters ¶ms) | |
virtual void | act () override |
virtual void | addRelationshipManagers (Moose::RelationshipManagerType input_rm_type) override |
virtual void | addRelationshipManagers (Moose::RelationshipManagerType when_type) |
bool | addRelationshipManagers (Moose::RelationshipManagerType when_type, const InputParameters &moose_object_pars) |
void | timedAct () |
MooseObjectName | uniqueActionName () const |
const std::string & | specificTaskName () const |
const std::set< std::string > & | getAllTasks () const |
void | appendTask (const std::string &task) |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
PerfGraph & | perfGraph () |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &name, const std::string *param=nullptr) 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 MooseEnum | getModelEnum () |
Get contact model. More... | |
static MooseEnum | getFormulationEnum () |
Get contact formulation. More... | |
static MooseEnum | getSystemEnum () |
Get contact system. More... | |
static MooseEnum | getSmoothingEnum () |
Get smoothing type. More... | |
static MooseEnum | getProximityMethod () |
Get proximity method for automatic pairing. More... | |
static InputParameters | commonParameters () |
Define parameters used by multiple contact objects. More... | |
Public Attributes | |
const ConsoleStream | _console |
Static Public Attributes | |
static constexpr auto | SYSTEM |
static constexpr auto | NAME |
Protected Member Functions | |
bool | addRelationshipManagers (Moose::RelationshipManagerType when_type, const InputParameters &moose_object_pars) |
void | associateWithParameter (const std::string ¶m_name, InputParameters ¶ms) const |
void | associateWithParameter (const InputParameters &from_params, const std::string ¶m_name, InputParameters ¶ms) const |
const T & | getMeshProperty (const std::string &data_name, const std::string &prefix) |
const T & | getMeshProperty (const std::string &data_name) |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name, const std::string &prefix) const |
bool | hasMeshProperty (const std::string &data_name) const |
bool | hasMeshProperty (const std::string &data_name) const |
std::string | meshPropertyName (const std::string &data_name) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const |
std::string | timedSectionName (const std::string §ion_name) const |
Static Protected Member Functions | |
static std::string | meshPropertyName (const std::string &data_name, const std::string &prefix) |
Protected Attributes | |
std::vector< std::pair< BoundaryName, BoundaryName > > | _boundary_pairs |
Primary/Secondary boundary name pairs for mechanical contact. More... | |
std::vector< BoundaryName > | _automatic_pairing_boundaries |
List of all possible boundaries for contact for automatic pairing (optional) More... | |
const ContactModel | _model |
Contact model type enum. More... | |
const ContactFormulation | _formulation |
Contact formulation. More... | |
bool | _use_dual |
Whether to use the dual Mortar approach. More... | |
const bool | _generate_mortar_mesh |
Whether to generate the mortar mesh (useful in a restart simulation e.g.). More... | |
const bool | _mortar_dynamics |
Whether mortar dynamic contact constraints are to be used. More... | |
std::string | _registered_identifier |
std::string | _specific_task_name |
std::set< std::string > | _all_tasks |
ActionWarehouse & | _awh |
const std::string & | _current_task |
std::shared_ptr< MooseMesh > & | _mesh |
std::shared_ptr< MooseMesh > & | _displaced_mesh |
std::shared_ptr< FEProblemBase > & | _problem |
PerfID | _act_timer |
MooseApp & | _app |
const std::string | _type |
const std::string | _name |
const InputParameters & | _pars |
Factory & | _factory |
ActionFactory & | _action_factory |
MooseApp & | _pg_moose_app |
const std::string | _prefix |
const Parallel::Communicator & | _communicator |
Private Member Functions | |
void | addMortarContact () |
Generate mesh and other Moose objects for Mortar contact. More... | |
void | addNodeFaceContact () |
Generate constraints for node to face contact. More... | |
void | addContactPressureAuxKernel () |
Add single contact pressure auxiliary kernel for various contact action objects. More... | |
void | removeRepeatedPairs () |
Remove repeated contact pairs from _boundary_pairs. More... | |
void | createSidesetPairsFromGeometry () |
Create contact pairs between all boundaries whose centroids are within a user-specified distance of each other. More... | |
void | createSidesetsFromNodeProximity () |
Create contact pairs between all boundaries by determining that nodes on both boundaries are close enough. More... | |
Action class for creating constraints, kernels, and user objects necessary for mechanical contact.
Definition at line 44 of file ContactAction.h.
ContactAction::ContactAction | ( | const InputParameters & | params | ) |
Definition at line 279 of file ContactAction.C.
|
overridevirtual |
Implements Action.
Definition at line 449 of file ContactAction.C.
|
private |
Add single contact pressure auxiliary kernel for various contact action objects.
Definition at line 635 of file ContactAction.C.
Referenced by act().
|
private |
Generate mesh and other Moose objects for Mortar contact.
Definition at line 701 of file ContactAction.C.
Referenced by act().
|
private |
Generate constraints for node to face contact.
Definition at line 1152 of file ContactAction.C.
Referenced by act().
bool Action::addRelationshipManagers |
virtual void Action::addRelationshipManagers |
|
overridevirtual |
Reimplemented from Action.
Definition at line 681 of file ContactAction.C.
|
static |
Define parameters used by multiple contact objects.
Definition at line 1568 of file ContactAction.C.
Referenced by MechanicalContactConstraint::validParams(), and validParams().
|
private |
Create contact pairs between all boundaries whose centroids are within a user-specified distance of each other.
Definition at line 1379 of file ContactAction.C.
Referenced by addNodeFaceContact().
|
private |
Create contact pairs between all boundaries by determining that nodes on both boundaries are close enough.
Definition at line 1241 of file ContactAction.C.
Referenced by addNodeFaceContact().
|
static |
Get contact formulation.
Definition at line 1509 of file ContactAction.C.
Referenced by commonParameters().
|
static |
Get contact model.
Definition at line 1497 of file ContactAction.C.
Referenced by commonParameters(), and validParams().
|
static |
Get proximity method for automatic pairing.
Definition at line 1503 of file ContactAction.C.
Referenced by validParams().
|
static |
Get smoothing type.
Definition at line 1562 of file ContactAction.C.
Referenced by commonParameters().
|
static |
|
private |
Remove repeated contact pairs from _boundary_pairs.
Definition at line 408 of file ContactAction.C.
Referenced by ContactAction(), createSidesetPairsFromGeometry(), and createSidesetsFromNodeProximity().
|
static |
Definition at line 72 of file ContactAction.C.
|
protected |
List of all possible boundaries for contact for automatic pairing (optional)
Definition at line 97 of file ContactAction.h.
Referenced by addNodeFaceContact(), ContactAction(), createSidesetPairsFromGeometry(), createSidesetsFromNodeProximity(), and removeRepeatedPairs().
|
protected |
Primary/Secondary boundary name pairs for mechanical contact.
Definition at line 94 of file ContactAction.h.
Referenced by act(), addMortarContact(), addNodeFaceContact(), addRelationshipManagers(), ContactAction(), createSidesetPairsFromGeometry(), createSidesetsFromNodeProximity(), and removeRepeatedPairs().
|
protected |
Contact formulation.
Definition at line 103 of file ContactAction.h.
Referenced by act(), addMortarContact(), addNodeFaceContact(), addRelationshipManagers(), and ContactAction().
|
protected |
Whether to generate the mortar mesh (useful in a restart simulation e.g.).
Definition at line 109 of file ContactAction.h.
Referenced by addMortarContact().
|
protected |
Contact model type enum.
Definition at line 100 of file ContactAction.h.
Referenced by act(), addMortarContact(), and ContactAction().
|
protected |
Whether mortar dynamic contact constraints are to be used.
Definition at line 112 of file ContactAction.h.
Referenced by addMortarContact().
|
protected |
Whether to use the dual Mortar approach.
Definition at line 106 of file ContactAction.h.
Referenced by addMortarContact(), and ContactAction().