Petsc implementation of the contact line search (based on the Petsc LineSearchShell) More...
#include <PetscContactLineSearch.h>
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... | |
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... | |
Petsc implementation of the contact line search (based on the Petsc LineSearchShell)
Definition at line 36 of file PetscContactLineSearch.h.
PetscContactLineSearch::PetscContactLineSearch | ( | const InputParameters & | parameters | ) |
Definition at line 29 of file PetscContactLineSearch.C.
|
inherited |
Unionize sets from different constraints.
Definition at line 54 of file ContactLineSearchBase.C.
Referenced by MechanicalContactConstraint::residualEnd().
|
overridevirtual |
Definition at line 40 of file PetscContactLineSearch.C.
|
inherited |
Method for printing the contact information.
Definition at line 45 of file ContactLineSearchBase.C.
Referenced by lineSearch().
|
virtualinherited |
Reset the line search data.
Definition at line 64 of file ContactLineSearchBase.C.
Referenced by MechanicalContactConstraint::timestepSetup().
|
protectedinherited |
Whether to modify the linear tolerance.
Definition at line 79 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
How many times the linsearch is allowed to cut lambda.
Definition at line 73 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
The multiplier of the newton step.
Definition at line 70 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
What the linear tolerance should be while the contact state is changing.
Definition at line 76 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
The current contact set.
Definition at line 60 of file ContactLineSearchBase.h.
Referenced by ContactLineSearchBase::insertSet(), lineSearch(), and ContactLineSearchBase::reset().
|
protectedinherited |
The old contact set.
Definition at line 62 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protected |
Definition at line 44 of file PetscContactLineSearch.h.
Referenced by lineSearch(), and PetscContactLineSearch().
|
protectedinherited |
the linear tolerance set by the user in the input file
Definition at line 65 of file ContactLineSearchBase.h.
Referenced by lineSearch().
|
protectedinherited |
Whether the user linear tolerance has been set yet in this object.
Definition at line 67 of file ContactLineSearchBase.h.
Referenced by lineSearch().