SPHinXsys  alpha version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SPH::LinearElasticSolid Class Reference

Isotropic linear elastic solid. Note that only basic parameters are used to set ElasticSolid parameters. More...

#include <elastic_solid.h>

Inherits SPH::ElasticSolid.

Inherited by SPH::FeneNeoHookeanSolid, SPH::NeoHookeanSolid, SPH::NeoHookeanSolidIncompressible, and SPH::OrthotropicSolid.

Public Member Functions

 LinearElasticSolid (Real rho0, Real youngs_modulus, Real poisson_ratio)
 
virtual Matd StressPK2 (Matd &deformation, size_t particle_index_i) override
 
virtual Matd StressCauchy (Matd &almansi_strain, Matd &F, size_t particle_index_i) override
 
virtual Real VolumetricKirchhoff (Real J) override
 
virtual std::string getRelevantStressMeasureName () override
 
Real getYoungsModulus ()
 
Real getPoissonRatio ()
 
Real getDensity ()
 
- Public Member Functions inherited from SPH::ElasticSolid
 ElasticSolid (Real rho0)
 
Real ReferenceSoundSpeed ()
 
Real TensileWaveSpeed ()
 
Real ShearWaveSpeed ()
 
Real YoungsModulus ()
 
Real ShearModulus ()
 
Real BulkModulus ()
 
Real PoissonRatio ()
 
virtual Matd NumericalDampingRightCauchy (Matd &deformation, Matd &deformation_rate, Real smoothing_length, size_t particle_index_i)
 
virtual Matd NumericalDampingLeftCauchy (Matd &deformation, Matd &deformation_rate, Real smoothing_length, size_t particle_index_i)
 
virtual Real PairNumericalDamping (Real dE_dt_ij, Real smoothing_length)
 
virtual Matd DeviatoricKirchhoff (const Matd &deviatoric_be)
 
virtual ElasticSolidThisObjectPtr () override
 
- Public Member Functions inherited from SPH::Solid
 Solid (Real rho0, Real contact_stiffness, Real contact_friction=0.0)
 
 Solid (Real rho0)
 
Real ContactFriction ()
 
Real ContactStiffness ()
 
- Public Member Functions inherited from SPH::BaseMaterial
 BaseMaterial (Real rho0)
 
virtual void assignBaseParticles (BaseParticles *base_particles)
 
std::string MaterialType ()
 
std::string LocalParametersName ()
 
Real ReferenceDensity ()
 
virtual void writeToXmlForReloadLocalParameters (const std::string &filefullpath)
 
virtual void readFromXmlForLocalParameters (const std::string &filefullpath)
 

Protected Member Functions

Real getBulkModulus (Real youngs_modulus, Real poisson_ratio)
 
Real getShearModulus (Real youngs_modulus, Real poisson_ratio)
 
Real getLambda (Real youngs_modulus, Real poisson_ratio)
 
- Protected Member Functions inherited from SPH::ElasticSolid
void setSoundSpeeds ()
 
- Protected Member Functions inherited from SPH::Solid
void setContactStiffness (Real c0)
 

Protected Attributes

Real lambda0_
 
- Protected Attributes inherited from SPH::ElasticSolid
Real E0_
 
Real G0_
 
Real K0_
 
Real nu_
 
Real c0_
 
Real ct0_
 
Real cs0_
 
- Protected Attributes inherited from SPH::Solid
Real contact_stiffness_
 
Real contact_friction_
 
- Protected Attributes inherited from SPH::BaseMaterial
std::string material_type_name_
 
std::string parameters_name_
 
Real rho0_
 
BaseParticlesbase_particles_
 
XmlEngine reload_material_xml_engine_
 
ParticleVariableList reload_local_parameters_
 

Detailed Description

Isotropic linear elastic solid. Note that only basic parameters are used to set ElasticSolid parameters.

Member Function Documentation

◆ getRelevantStressMeasureName()

virtual std::string SPH::LinearElasticSolid::getRelevantStressMeasureName ( )
inlineoverridevirtual

Define the calculation of the stress matrix for postprocessing

Implements SPH::ElasticSolid.

Reimplemented in SPH::LocallyOrthotropicMuscle, SPH::Muscle, SPH::FeneNeoHookeanSolid, and SPH::NeoHookeanSolid.

◆ getYoungsModulus()

Real SPH::LinearElasticSolid::getYoungsModulus ( )
inline

get methods

◆ StressCauchy()

Matd SPH::LinearElasticSolid::StressCauchy ( Matd &  almansi_strain,
Matd &  F,
size_t  particle_index_i 
)
overridevirtual

Cauchy stress through Eulerian Almansi strain tensor.

Implements SPH::ElasticSolid.

Reimplemented in SPH::NeoHookeanSolidIncompressible, and SPH::NeoHookeanSolid.

◆ StressPK2()

Matd SPH::LinearElasticSolid::StressPK2 ( Matd &  deformation,
size_t  particle_index_i 
)
overridevirtual

◆ VolumetricKirchhoff()

Real SPH::LinearElasticSolid::VolumetricKirchhoff ( Real  J)
overridevirtual

Volumetric Kirchhoff stress from determinate

Implements SPH::ElasticSolid.

Reimplemented in SPH::Muscle, SPH::OrthotropicSolid, SPH::NeoHookeanSolidIncompressible, and SPH::NeoHookeanSolid.


The documentation for this class was generated from the following files: