|
T | CSL (int idx, const StateVariable< T > &sv0, StateVariable< T > &sv) override |
| calculate the critical state line
|
|
| ContactLawBase (const std::map< std::string, T > &props={}) |
| constructor
|
|
virtual | ~ContactLawBase ()=default |
| destructor
|
|
virtual std::vector< std::string > | symmetricContactScalars () |
| Symmetric contact scalar variables.
|
|
virtual std::vector< std::string > | symmetricContactVectors () |
| Symmetric contact vector variables.
|
|
virtual void | initialize (StateVariable< T > &sv) |
| initialize the contact law
|
|
ContactLawBase & | operator= (const ContactLawBase &other) |
| move operator
|
|
T | frictionCoefficient (int idx, const StateVariable< T > &sv0, const StateVariable< T > &sv) |
| calculate the friction coefficient combined with different criteria
|
|
Eigen::Matrix< T, 3, 3 > | forceDisplacement (int idx, Eigen::Matrix< T, 3, 1 > &ddisp, Eigen::Matrix< T, 3, 3 > &Ke, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| integrate the force-displacement relation
|
|
virtual Eigen::Matrix< T, 3, 3 > | elasticStiffness (int idx, T fn, const StateVariable< T > &sv0, const StateVariable< T > &sv)=0 |
| Calculate the elastic stiffness matrix.
|
|
|
std::shared_ptr< Material< T > > | material |
| Material properties.
|
|
std::string | name = "Undefined" |
| Name of the contact law.
|
|
std::string | type = "Undefined" |
| Type of the contact law.
|
|
int | nstatev_custom = 0 |
| Number of custom state variables.
|
|
bool | plastic_displacement = false |
| Flag to save the plastic displacement in the state variables.
|
|
std::shared_ptr< Options< T > > | options = std::shared_ptr<Options<T>>(new Options<T>()) |
| options for the micromechanical model
|
|
std::shared_ptr< DebugVariable< T > > | debugVariable = std::shared_ptr<DebugVariable<T>>(new DebugVariable<T>()) |
| debug variable
|
|
int | _phase = 0 |
| index of the phase
|
|
int | _step = 0 |
| current step
|
|
int | _mixedLoad = 0 |
| number of mixed load steps
|
|
int | _integration = 0 |
| number of integration steps
|
|
int | _increment = 0 |
| number of contact increments
|
|
int | _plasticCorrection = 0 |
| number of contact plastic corrections
|
|
T | tanphip (int idx, const StateVariable< T > &sv0, StateVariable< T > &sv) |
|
T | tanphipt (int idx, const StateVariable< T > &sv0, StateVariable< T > &sv) |
|
virtual Eigen::Matrix< T, 3, 3 > | integrate (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const Eigen::Matrix< T, 3, 3 > &Ke, const StateVariable< T > &sv0, StateVariable< T > &sv)=0 |
| integrate the force-displacement contact law, with a number of increments.
|
|
Eigen::Matrix< T, 3, 3 > | increment (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const Eigen::Matrix< T, 3, 3 > &Ke, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| Calculate one increment.
|
|
virtual Eigen::Matrix< T, 3, 3 > | stiffness (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv)=0 |
| calculate the elastoplastic stiffness matrix
|
|
virtual void | check (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| check the convergence of the contact law
|
|
virtual void | preIntegration (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| pre-processing before the integration
|
|
virtual void | postIntegration (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| post-processing after the integration
|
|
virtual void | preIncrement (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| pre-processing before the increment
|
|
virtual void | postIncrement (int idx, const Eigen::Matrix< T, 3, 1 > &ddisp, const StateVariable< T > &sv0, StateVariable< T > &sv) |
| post-processing after the increment
|
|