#include <MFront.h>
Public Member Functions | |
std::unique_ptr< typename MechanicsBase< DisplacementDim >::MaterialStateVariables > | createMaterialStateVariables () const override |
void | initializeInternalStateVariables (double const t, ParameterLib::SpatialPosition const &x, typename MechanicsBase< DisplacementDim >::MaterialStateVariables &material_state_variables) const override |
std::optional< std::tuple< KelvinVector, std::unique_ptr< typename MechanicsBase< DisplacementDim >::MaterialStateVariables >, KelvinMatrix > > | integrateStress (MaterialPropertyLib::VariableArray const &variable_array_prev, MaterialPropertyLib::VariableArray const &variable_array, double const t, ParameterLib::SpatialPosition const &x, double const dt, typename MechanicsBase< DisplacementDim >::MaterialStateVariables const &material_state_variables) const override |
std::vector< typename MechanicsBase< DisplacementDim >::InternalVariable > | getInternalVariables () const override |
double | getBulkModulus (double const t, ParameterLib::SpatialPosition const &x, KelvinMatrix const *const C) const override |
double | computeFreeEnergyDensity (double const t, ParameterLib::SpatialPosition const &x, double const dt, KelvinVector const &eps, KelvinVector const &sigma, typename MechanicsBase< DisplacementDim >::MaterialStateVariables const &material_state_variables) const override |
![]() | |
virtual std::optional< std::tuple< KelvinVector, std::unique_ptr< MaterialStateVariables >, KelvinMatrix > > | integrateStress (MaterialPropertyLib::VariableArray const &variable_array_prev, MaterialPropertyLib::VariableArray const &variable_array, double const t, ParameterLib::SpatialPosition const &x, double const dt, MaterialStateVariables const &material_state_variables) const =0 |
virtual ConstitutiveModel | getConstitutiveModel () const |
Gets the type of constitutive model. | |
virtual double | getTemperatureRelatedCoefficient (double const, double const, ParameterLib::SpatialPosition const &, double const, double const) const |
virtual double | computeFreeEnergyDensity (double const t, ParameterLib::SpatialPosition const &x, double const dt, KelvinVector const &eps, KelvinVector const &sigma, MaterialStateVariables const &material_state_variables) const =0 |
virtual | ~MechanicsBase ()=default |
Private Types | |
using | Base |
using | KelvinVector = typename Base::KelvinVector |
using | KelvinMatrix = typename Base::KelvinMatrix |
![]() | |
using | KelvinVector |
using | KelvinMatrix |
using | InternalVariable |
Private Attributes | |
OGSMFrontTangentOperatorBlocksView< DisplacementDim, ForcesGradsCombinations< boost::mp11::mp_list< Strain >, boost::mp11::mp_list< Stress >, boost::mp11::mp_list< Temperature > >::type > | blocks_view_ = this->createTangentOperatorBlocksView() |
Additional Inherited Members | |
![]() | |
using | KelvinVector |
using | KelvinMatrix |
![]() | |
MFrontGeneric (mgis::behaviour::Behaviour &&behaviour, std::vector< ParameterLib::Parameter< double > const * > &&material_properties, std::map< std::string, ParameterLib::Parameter< double > const * > &&state_variables_initial_properties, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system) | |
std::unique_ptr< typename MechanicsBase< DisplacementDim >::MaterialStateVariables > | createMaterialStateVariables () const |
void | initializeInternalStateVariables (double const t, ParameterLib::SpatialPosition const &x, typename MechanicsBase< DisplacementDim >::MaterialStateVariables &material_state_variables) const |
std::optional< std::tuple< OGSMFrontThermodynamicForcesData, std::unique_ptr< typename MechanicsBase< DisplacementDim >::MaterialStateVariables >, OGSMFrontTangentOperatorData > > | integrateStress (MaterialPropertyLib::VariableArray const &variable_array_prev, MaterialPropertyLib::VariableArray const &variable_array, double const t, ParameterLib::SpatialPosition const &x, double const dt, typename MechanicsBase< DisplacementDim >::MaterialStateVariables const &material_state_variables) const |
std::vector< InternalVariable > | getInternalVariables () const |
OGSMFrontTangentOperatorBlocksView< DisplacementDim, ForcesGradsCombinations > | createTangentOperatorBlocksView () const |
OGSMFrontThermodynamicForcesView< DisplacementDim, boost::mp11::mp_list< Stress > > | createThermodynamicForcesView () const |
double | getBulkModulus (double const, ParameterLib::SpatialPosition const &, KelvinMatrix const *const C) const |
double | computeFreeEnergyDensity (double const, ParameterLib::SpatialPosition const &, double const, KelvinVector const &, KelvinVector const &, typename MechanicsBase< DisplacementDim >::MaterialStateVariables const &) const |
|
private |
|
private |
|
private |
|
inlineoverride |
Definition at line 107 of file MFront.h.
|
inlineoverridevirtual |
Polymorphic creator for MaterialStateVariables objects specific for a material model.
Reimplemented from MaterialLib::Solids::MechanicsBase< DisplacementDim >.
Definition at line 40 of file MFront.h.
|
inlineoverridevirtual |
Reimplemented from MaterialLib::Solids::MechanicsBase< DisplacementDim >.
Definition at line 100 of file MFront.h.
|
inlineoverridevirtual |
Returns internal variables defined by the specific material model, if any.
Reimplemented from MaterialLib::Solids::MechanicsBase< DisplacementDim >.
Definition at line 95 of file MFront.h.
|
inlineoverridevirtual |
Reimplemented from MaterialLib::Solids::MechanicsBase< DisplacementDim >.
Definition at line 45 of file MFront.h.
|
inlineoverride |
Definition at line 58 of file MFront.h.
References MaterialLib::Solids::MFront::MFront< DisplacementDim >::blocks_view_, MaterialLib::Solids::MFront::MFrontGeneric< DisplacementDim, boost::mp11::mp_list< Strain >, boost::mp11::mp_list< Stress >, boost::mp11::mp_list< Temperature > >::createThermodynamicForcesView(), MaterialLib::Solids::MFront::MFrontGeneric< DisplacementDim, boost::mp11::mp_list< Strain >, boost::mp11::mp_list< Stress >, boost::mp11::mp_list< Temperature > >::integrateStress(), MaterialLib::Solids::MFront::strain, and MaterialLib::Solids::MFront::stress.
|
private |
Definition at line 126 of file MFront.h.
Referenced by MaterialLib::Solids::MFront::MFront< DisplacementDim >::integrateStress().