musica (C++)
Loading...
Searching...
No Matches
elastoplastic::core::ElastoplasticMaterial< T > Struct Template Reference

#include <elastoplasticmaterial.hpp>

Inheritance diagram for elastoplastic::core::ElastoplasticMaterial< T >:
Collaboration diagram for elastoplastic::core::ElastoplasticMaterial< T >:

Public Member Functions

 ElastoplasticMaterial (const std::unordered_map< std::string, T > &props={})
 Constructor.
T E ()
T nu ()
T G ()
T K ()
T M ()
T lame ()
T ne ()
T kp ()
T Ad ()
T e0 ()
T c ()
T phi ()
T phid ()
T thetat ()
T psi ()
T me ()
T epsilon ()
T eref ()
T pref ()
T Lambda ()
T xi ()
T np ()
T nd ()
T epsr ()
T ea ()
Public Member Functions inherited from constitutive::MaterialBase< T >
 MaterialBase (const std::unordered_map< std::string, T > &props={})
 Constructor.
virtual ~MaterialBase ()=default
 Destructor.
virtual void initialize (StateVariable< T > &sv)
 Initialize the material.
T & operator[] (const std::string &key)
 Access material properties.
T operator[] (const std::string &key) const
 Access material properties.
void __setitem__ (const std::string &key, const T value)
 Set item.
bool __contains__ (const std::string &key) const
 Determine if the material has a property, to be used in Python.
T at (const std::string &key) const
 Access material properties.
T get (const std::string &key, const T default_=0.0) const
void set (const std::string &key, const T value)
 Set material properties.
T sin_phi_mises (const T ba=0.0, const T Ra=1.0) const
 Friction angle sine of Von Mises failure criteria.
T sin_phi_tresca (const T ba=0.0, const T Ra=1.0) const
 Friction angle sine of Tresca failure criteria.
T sin_phi_smp (const T ba=0.0, const T Ra=1.0) const
 Friction angle sine of SMP failure criteria.
T sin_phi_combined (const T ba=0.0, const T Ra=1.0, const T weight_mises=0.0, const T weight_tresca=0.0, const T weight_mohr_coulomb=1.0, const T weight_smp=0.0) const
 Sine of combined friction angle.
T phi_combined (const T ba=0.0, const T Ra=1.0, const T weight_mises=0.0, const T weight_tresca=0.0, const T weight_mohr_coulomb=1.0, const T weight_smp=0.0) const
 Combined friction angle.
T mu (T ba=0.0, T Ra=1.0, T weight_mises=0.0, T weight_tresca=0.0, T weight_mohr_coulomb=1.0, T weight_smp=0.0) const
 friction coefficient
T Mc (T ba=0.0, T Ra=1.0, T weight_mises=0.0, T weight_tresca=0.0, T weight_mohr_coulomb=1.0, T weight_smp=0.0) const
 Get the critical state slope for compression.
T Me (T ba=0.0, T Ra=1.0, T weight_mises=0.0, T weight_tresca=0.0, T weight_mohr_coulomb=1.0, T weight_smp=0.0) const
 Get the critical state slope for extension.

Static Public Member Functions

static std::unordered_map< std::string, T > simsand (const std::vector< T > &props)
 Create a simsand material.
static std::unordered_map< std::string, T > simsand (T *props)
 Create a simsand material.
static std::unordered_map< std::string, T > j2yang (const std::vector< T > &props)
 Create a j2yang material.
static std::unordered_map< std::string, T > j2yang (T *props)
 Create a j2yang material.
static std::unordered_map< std::string, T > mohrcoulomb (const std::vector< T > &props)
 Create a mohrcoulomb material.
static std::unordered_map< std::string, T > mohrcoulomb (T *props)
 Create a mohrcoulomb material.
static std::unordered_map< std::string, T > elastic (const std::vector< T > &props)
 Create a elastic material.
static std::unordered_map< std::string, T > elastic (T *props)
 Create a elastic material.
Static Public Member Functions inherited from constitutive::MaterialBase< T >
static std::unordered_map< std::string, T > create (const std::vector< std::string > &keys, const std::vector< T > &values)
 Create a material.

Additional Inherited Members

Public Attributes inherited from constitutive::MaterialBase< T >
std::unordered_map< std::string, T > props = {}
 Material properties.

Constructor & Destructor Documentation

◆ ElastoplasticMaterial()

template<typename T>
elastoplastic::core::ElastoplasticMaterial< T >::ElastoplasticMaterial ( const std::unordered_map< std::string, T > & props = {})
inlineexplicit

Constructor.

Parameters
propsMaterial properties

References constitutive::MaterialBase< T >::props.

Member Function Documentation

◆ Ad()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::Ad ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ c()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::c ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ E()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::E ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ e0()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::e0 ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ ea()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::ea ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ elastic() [1/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::elastic ( const std::vector< T > & props)
inlinestatic

Create a elastic material.

Parameters
propsMaterial properties
Returns
elastic material

References constitutive::MaterialBase< T >::create(), and constitutive::MaterialBase< T >::props.

Referenced by elastic().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ elastic() [2/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::elastic ( T * props)
inlinestatic

Create a elastic material.

Parameters
propsMaterial properties
Returns
elastic material

References elastic(), and constitutive::MaterialBase< T >::props.

Here is the call graph for this function:

◆ epsilon()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::epsilon ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ epsr()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::epsr ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ eref()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::eref ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ G()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::G ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ j2yang() [1/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::j2yang ( const std::vector< T > & props)
inlinestatic

Create a j2yang material.

Parameters
propsMaterial properties
Returns
j2yang material

References constitutive::MaterialBase< T >::create(), and constitutive::MaterialBase< T >::props.

Referenced by j2yang().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ j2yang() [2/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::j2yang ( T * props)
inlinestatic

Create a j2yang material.

Parameters
propsMaterial properties
Returns
j2yang material

References j2yang(), and constitutive::MaterialBase< T >::props.

Here is the call graph for this function:

◆ K()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::K ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ kp()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::kp ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ Lambda()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::Lambda ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ lame()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::lame ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ M()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::M ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ me()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::me ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ mohrcoulomb() [1/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::mohrcoulomb ( const std::vector< T > & props)
inlinestatic

Create a mohrcoulomb material.

Parameters
propsMaterial properties
Returns
mohrcoulomb material

References constitutive::MaterialBase< T >::create(), and constitutive::MaterialBase< T >::props.

Referenced by mohrcoulomb().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mohrcoulomb() [2/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::mohrcoulomb ( T * props)
inlinestatic

Create a mohrcoulomb material.

Parameters
propsMaterial properties
Returns
mohrcoulomb material

References mohrcoulomb(), and constitutive::MaterialBase< T >::props.

Here is the call graph for this function:

◆ nd()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::nd ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ ne()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::ne ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ np()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::np ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ nu()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::nu ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ phi()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::phi ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ phid()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::phid ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ pref()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::pref ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ psi()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::psi ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ simsand() [1/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::simsand ( const std::vector< T > & props)
inlinestatic

Create a simsand material.

Parameters
propsMaterial properties
Returns
simsand material

References constitutive::MaterialBase< T >::create(), and constitutive::MaterialBase< T >::props.

Referenced by simsand().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simsand() [2/2]

template<typename T>
std::unordered_map< std::string, T > elastoplastic::core::ElastoplasticMaterial< T >::simsand ( T * props)
inlinestatic

Create a simsand material.

Parameters
propsMaterial properties
Returns
simsand material

References constitutive::MaterialBase< T >::props, and simsand().

Here is the call graph for this function:

◆ thetat()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::thetat ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

◆ xi()

template<typename T>
T elastoplastic::core::ElastoplasticMaterial< T >::xi ( )
inline

References constitutive::MaterialBase< T >::get().

Here is the call graph for this function:

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