Petsc implementation of the contact line search (based on the Petsc LineSearchShell) More...
#include <PetscContactLineSearch.h>
Public Types | |
| typedef DataFileName | DataFileParameterType |
Public Member Functions | |
| PetscContactLineSearch (const InputParameters ¶meters) | |
| virtual void | lineSearch () override |
| void | printContactInfo (const std::set< dof_id_type > &contact_set) |
| Method for printing the contact information. More... | |
| void | insertSet (const std::set< dof_id_type > &mech_set) |
| Unionize sets from different constraints. More... | |
| virtual void | reset () |
| Reset the line search data. More... | |
| void | zeroIts () |
| size_t | nlIts () const |
| virtual void | timestepSetup () |
| virtual void | customSetup (const ExecFlagType &) |
| virtual void | initialSetup () |
| virtual bool | enabled () const |
| std::shared_ptr< MooseObject > | getSharedPtr () |
| std::shared_ptr< const MooseObject > | getSharedPtr () const |
| bool | isKokkosObject () const |
| MooseApp & | getMooseApp () const |
| const std::string & | type () const |
| const std::string & | name () const |
| std::string | typeAndName () const |
| MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
| MooseObjectName | uniqueName () const |
| const InputParameters & | parameters () 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 ¶m1, const std::string ¶m2) const |
| const T * | queryParam (const std::string &name) 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 | haveParameter (const std::string &name) const |
| bool | isParamValid (const std::string &name) const |
| bool | isParamSetByUser (const std::string &name) const |
| void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
| void | paramError (const std::string ¶m, Args... args) const |
| void | paramWarning (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 |
| 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 | mooseDeprecatedNoTrace (Args &&... args) const |
| void | mooseInfo (Args &&... args) const |
| void | callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr, const bool show_trace=true) const |
| std::string | getDataFileName (const std::string ¶m) const |
| std::string | getDataFileNameByName (const std::string &relative_path) const |
| std::string | getDataFilePath (const std::string &relative_path) 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 ¶ms, std::string msg, const bool with_prefix, const hit::Node *node, const bool show_trace=true) |
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 |
Protected Member Functions | |
| void | flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const |
| InvalidSolutionID | registerInvalidSolutionInternal (const std::string &message, const bool warning) const |
Protected Attributes | |
| PetscNonlinearSolver< Real > * | _solver |
| std::set< dof_id_type > | _current_contact_state |
| The current contact set. More... | |
| std::set< dof_id_type > | _old_contact_state |
| The old contact set. More... | |
| Real | _user_ksp_rtol |
| the linear tolerance set by the user in the input file More... | |
| bool | _user_ksp_rtol_set |
| Whether the user linear tolerance has been set yet in this object. More... | |
| Real | _contact_lambda |
| The multiplier of the newton step. More... | |
| unsigned | _allowed_lambda_cuts |
| How many times the linsearch is allowed to cut lambda. More... | |
| Real | _contact_ltol |
| What the linear tolerance should be while the contact state is changing. More... | |
| bool | _affect_ltol |
| Whether to modify the linear tolerance. More... | |
| FEProblem & | _fe_problem |
| size_t | _nl_its |
| const bool & | _enabled |
| MooseApp & | _app |
| Factory & | _factory |
| ActionFactory & | _action_factory |
| const std::string & | _type |
| const std::string & | _name |
| const InputParameters & | _pars |
| const Parallel::Communicator & | _communicator |
Petsc implementation of the contact line search (based on the Petsc LineSearchShell)
Definition at line 28 of file PetscContactLineSearch.h.
| PetscContactLineSearch::PetscContactLineSearch | ( | const InputParameters & | parameters | ) |
Definition at line 25 of file PetscContactLineSearch.C.
|
inherited |
Unionize sets from different constraints.
Definition at line 53 of file ContactLineSearchBase.C.
Referenced by MechanicalContactConstraint::residualEnd().
|
overridevirtual |
Reimplemented from LineSearch.
Definition at line 36 of file PetscContactLineSearch.C.
|
inherited |
Method for printing the contact information.
Definition at line 44 of file ContactLineSearchBase.C.
Referenced by lineSearch().
|
virtualinherited |
Reset the line search data.
Definition at line 63 of file ContactLineSearchBase.C.
Referenced by MechanicalContactConstraint::timestepSetup().
|
static |
Definition at line 20 of file PetscContactLineSearch.C.
|
protectedinherited |
Whether to modify the linear tolerance.
Definition at line 77 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
How many times the linsearch is allowed to cut lambda.
Definition at line 71 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
The multiplier of the newton step.
Definition at line 68 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
What the linear tolerance should be while the contact state is changing.
Definition at line 74 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
The current contact set.
Definition at line 58 of file ContactLineSearchBase.h.
Referenced by ContactLineSearchBase::insertSet(), lineSearch(), and ContactLineSearchBase::reset().
|
protectedinherited |
The old contact set.
Definition at line 60 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protected |
Definition at line 38 of file PetscContactLineSearch.h.
Referenced by lineSearch(), and PetscContactLineSearch().
|
protectedinherited |
the linear tolerance set by the user in the input file
Definition at line 63 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
Whether the user linear tolerance has been set yet in this object.
Definition at line 65 of file ContactLineSearchBase.h.
Referenced by lineSearch().
1.8.14