MGIS
Loading...
Searching...
No Matches
mgis::behaviour::Behaviour Struct Reference

structure describing a behaviour More...

#include </home/runner/work/MFrontGenericInterfaceSupport/MFrontGenericInterfaceSupport/include/MGIS/Behaviour/Behaviour.hxx>

Inheritance diagram for mgis::behaviour::Behaviour:
mgis::behaviour::BehaviourDescription

Public Member Functions

 Behaviour ()
 constructor
 
 Behaviour (Behaviour &&)
 move constructor
 
 Behaviour (const Behaviour &)
 copy constructor
 
Behaviouroperator= (Behaviour &&)
 move assignement
 
Behaviouroperator= (const Behaviour &)
 standard assignement
 
 ~Behaviour ()
 destructor
 
- Public Member Functions inherited from mgis::behaviour::BehaviourDescription
 ~BehaviourDescription ()
 destructor
 

Public Attributes

std::map< std::string, BehaviourInitializeFunction, std::less<> > initialize_functions
 list of initialize functions associated with the behaviour
 
BehaviourFctPtr b = nullptr
 pointer to the function implementing the behaviour
 
std::map< std::string, BehaviourPostProcessing, std::less<> > postprocessings
 list of post-processings associated with the behaviour
 
RotateBehaviourGradientsFctPtr rotate_gradients_ptr = nullptr
 pointer to a function implementing the rotation of the gradients from the global frame to the material frame.
 
RotateArrayOfBehaviourGradientsFctPtr rotate_array_of_gradients_ptr
 pointer to a function implementing the rotation of an array of gradients from the global frame to the material frame.
 
RotateBehaviourThermodynamicForcesFctPtr rotate_thermodynamic_forces_ptr
 pointer to a function implementing the rotation of the thermodynamic forces from the material frame to the global frame.
 
RotateArrayOfBehaviourThermodynamicForcesFctPtr rotate_array_of_thermodynamic_forces_ptr = nullptr
 pointer to a function implementing the rotation of an array of thermodynamic forces from the material frame to the global frame.
 
RotateBehaviourTangentOperatorBlocksFctPtr rotate_tangent_operator_blocks_ptr = nullptr
 pointer to a function implementing the rotation of the tangent operator blocks from the material frame to the global frame.
 
RotateArrayOfBehaviourTangentOperatorBlocksFctPtr rotate_array_of_tangent_operator_blocks_ptr = nullptr
 pointer to a function implementing the rotation of an array of tangent operator blocks from the material frame to the global frame.
 
std::vector< mgis::realoptions
 behaviour options
 
- Public Attributes inherited from mgis::behaviour::BehaviourDescription
std::string library
 name of the library providing the behaviour
 
std::string behaviour
 name of the behaviour
 
Hypothesis hypothesis
 modelling hypothesis
 
std::string function
 name of the function (build using the behaviour name and the modelling hypothesis)
 
std::string source
 name of the MFront source file used to generate the behaviour
 
std::string author
 author of the MFront file
 
std::string date
 date
 
std::string validator
 validator of the MFront file
 
std::string build_id
 build identifier
 
std::string tfel_version
 version of TFEL used to generate the behaviour
 
std::string unit_system
 unit system used by the behaviour
 
enum mgis::behaviour::BehaviourDescription::BehaviourType btype
 
enum mgis::behaviour::BehaviourDescription::Kinematic kinematic
 
Symmetry symmetry
 behaviour symmetry
 
std::vector< Variablegradients
 gradients
 
std::vector< Variablethermodynamic_forces
 thermodynamic forces associated to gradients
 
std::vector< Variablemps
 material properties
 
std::vector< Variableisvs
 internal state variables
 
std::vector< Variableesvs
 external state variables
 
std::vector< std::pair< Variable, Variable > > to_blocks
 tangent operator blocks
 
std::vector< std::string > params
 real parameters
 
std::vector< std::string > iparams
 integer parameters
 
std::vector< std::string > usparams
 unsigned short parameters
 
bool computesStoredEnergy
 this boolean is true if the behaviour computes the energy stored by the material per unit of volume in the reference configuration. The physical meaning of this energy depends on the behaviour considered.
 
bool computesDissipatedEnergy
 this boolean is true if the behaviour computes the energy dissipated by the material per unit of volume in the reference configuration. The physical meaning of this energy depends on the behaviour considered.
 

Additional Inherited Members

- Public Types inherited from mgis::behaviour::BehaviourDescription
enum  Symmetry { ISOTROPIC , ORTHOTROPIC }
 behaviour symmetry
 
enum  BehaviourType { GENERALBEHAVIOUR , STANDARDSTRAINBASEDBEHAVIOUR , STANDARDFINITESTRAINBEHAVIOUR , COHESIVEZONEMODEL }
 behaviour type
 
enum  Kinematic {
  UNDEFINEDKINEMATIC , SMALLSTRAINKINEMATIC , COHESIVEZONEKINEMATIC , FINITESTRAINKINEMATIC_F_CAUCHY ,
  FINITESTRAINKINEMATIC_ETO_PK1
}
 kinematic of the behaviour treated
 
- Static Public Attributes inherited from mgis::behaviour::BehaviourDescription
static constexpr const mgis::size_type nopts = 2
 maximum number of behaviour options, whatever the kind of behaviour treated.
 
- Protected Member Functions inherited from mgis::behaviour::BehaviourDescription
 BehaviourDescription ()
 constructor
 
 BehaviourDescription (BehaviourDescription &&)
 move constructor
 
 BehaviourDescription (const BehaviourDescription &)
 copy constructor
 
BehaviourDescriptionoperator= (BehaviourDescription &&)
 move assignement
 
BehaviourDescriptionoperator= (const BehaviourDescription &)
 standard assignement
 

Detailed Description

structure describing a behaviour

Member Data Documentation

◆ options

std::vector<mgis::real> mgis::behaviour::Behaviour::options

behaviour options

This is currently only meaningful for finite strain behaviours where the options stores:

  • the stress measure used
  • the consistent tangent operator expected

For finite strain behaviours, options[0] holds the stress measure used:

  • if options[0] < 0.5, the Cauchy stress is used
  • if 0.5 < options[0] < 1.5, the second Piola-Kirchoff stress is used
  • if 1.5 < options[0] < 2.5, the first Piola-Kirchoff stress is used

For finite strain behaviours, options[1] holds the consitent tangent operator returned by the behaviour:

  • if options[1]<0.5, the derivative of the Cauchy stress with respect to the deformation gradient is returned
  • if 0.5<options[1]<1.5, the derivative of the second Piola-Kirchoff stress with respect to the Green-Lagrange strain is returned
  • if 1.5<options[1]<2.5, the derivative of the first Piola-Kirchoff stress with respect to the deformation gradient is returned

◆ rotate_array_of_gradients_ptr

RotateArrayOfBehaviourGradientsFctPtr mgis::behaviour::Behaviour::rotate_array_of_gradients_ptr
Initial value:
=
nullptr

pointer to a function implementing the rotation of an array of gradients from the global frame to the material frame.

◆ rotate_thermodynamic_forces_ptr

RotateBehaviourThermodynamicForcesFctPtr mgis::behaviour::Behaviour::rotate_thermodynamic_forces_ptr
Initial value:
=
nullptr

pointer to a function implementing the rotation of the thermodynamic forces from the material frame to the global frame.


The documentation for this struct was generated from the following file: