ASL  0.1.7
Advanced Simulation Library
Public Member Functions | List of all members
asl::FDElasticityIncompressibleStatic Class Reference

Numerical method which computes homogenious isotropic elasticity equation. More...

#include <aslFDElasticity.h>

Inheritance diagram for asl::FDElasticityIncompressibleStatic:
Inheritance graph
[legend]
Collaboration diagram for asl::FDElasticityIncompressibleStatic:
Collaboration graph
[legend]

Public Member Functions

 FDElasticityIncompressibleStatic ()
 
 FDElasticityIncompressibleStatic (Data d, Param bM, Param sM, const VectorTemplate *vT)
 
 ~FDElasticityIncompressibleStatic ()
 
virtual void init ()
 Builds the necesery internal data and kernels. More...
 
virtual void execute ()
 Executes the numerical procedure. More...
 
Data getPressureData () const
 
 FDElasticityIncompressibleStatic ()
 
 FDElasticityIncompressibleStatic (Data d, Param bM, Param sM, const VectorTemplate *vT)
 
 ~FDElasticityIncompressibleStatic ()
 
virtual void init ()
 Builds the necesery internal data and kernels. More...
 
virtual void execute ()
 Executes the numerical procedure. More...
 
Data getPressureData () const
 
- Public Member Functions inherited from asl::ElasticityCommonA
 ElasticityCommonA ()
 
 ElasticityCommonA (Data d, Param bM, Param sM, const VectorTemplate *vT)
 
 ~ElasticityCommonA ()
 
void setVectorTemplate (const VectorTemplate *vT)
 
VectorTemplate getVectorTemplate ()
 
void setForce (Param f)
 
Data getDisplacementData () const
 
Data getDisplacementInternalData () const
 
const Param getBulkModulus () const
 
const Param getShearModulus () const
 
 ElasticityCommonA ()
 
 ElasticityCommonA (Data d, Param bM, Param sM, const VectorTemplate *vT)
 
 ~ElasticityCommonA ()
 
void setVectorTemplate (const VectorTemplate *vT)
 
VectorTemplate getVectorTemplate ()
 
void setForce (Param f)
 
Data getDisplacementData () const
 
Data getDisplacementInternalData () const
 
const Param getBulkModulus () const
 
const Param getShearModulus () const
 
- Public Member Functions inherited from asl::NumMethod
virtual ~NumMethod ()
 
virtual ~NumMethod ()
 

Additional Inherited Members

- Public Types inherited from asl::ElasticityCommonA
typedef SPDataWithGhostNodesACLData Data
 
typedef acl::VectorOfElements Param
 
typedef SPDataWithGhostNodesACLData Data
 
typedef acl::VectorOfElements Param
 
- Public Attributes inherited from asl::ElasticityCommonA
const VectorTemplatevectorTemplate
 
- Protected Attributes inherited from asl::ElasticityCommonA
std::unique_ptr< acl::Kernelkernel
 
Data displacementData
 
Data displacementInternalData
 
Param bulkModulus
 
Param shearModulus
 
Param force
 

Detailed Description

Numerical method which computes homogenious isotropic elasticity equation.

\[ \rho\ddot u_j =(K+\mu/3)\nabla_j \nabla_k u_k+ \mu \Delta u_j \]

where

This implementation is aided to improve stability for incompressible materials. Let us reformulate the elasticity equation by the following way:

\[ \rho\ddot u_j =\mu (\Delta u_j - \nabla_j p), \]

\[ p = -\frac{K+\mu/3}{\mu} \nabla_k u_k. \]

The second equation leads to an instability for low values of the Poisson ration (for nearly incompressible materials). Therefore the last equation we would like to replace by a relaxation one:

\[ \dot p = - w\left( \frac{K+\mu/3}{\mu} \nabla_k u_k + p\right), \]

where \( w \) is a relaxation parameter.

Definition at line 98 of file aslFDElasticity.h.

Constructor & Destructor Documentation

◆ FDElasticityIncompressibleStatic() [1/4]

asl::FDElasticityIncompressibleStatic::FDElasticityIncompressibleStatic ( )

◆ FDElasticityIncompressibleStatic() [2/4]

asl::FDElasticityIncompressibleStatic::FDElasticityIncompressibleStatic ( Data  d,
Param  bM,
Param  sM,
const VectorTemplate vT 
)
Parameters
dis a displacement field
bMis the bulk modulus
sMis the shear modulus
vTis a vector template

◆ ~FDElasticityIncompressibleStatic() [1/2]

asl::FDElasticityIncompressibleStatic::~FDElasticityIncompressibleStatic ( )

◆ FDElasticityIncompressibleStatic() [3/4]

asl::FDElasticityIncompressibleStatic::FDElasticityIncompressibleStatic ( )

◆ FDElasticityIncompressibleStatic() [4/4]

asl::FDElasticityIncompressibleStatic::FDElasticityIncompressibleStatic ( Data  d,
Param  bM,
Param  sM,
const VectorTemplate vT 
)
Parameters
dis a displacement field
bMis the bulk modulus
sMis the shear modulus
vTis a vector template

◆ ~FDElasticityIncompressibleStatic() [2/2]

asl::FDElasticityIncompressibleStatic::~FDElasticityIncompressibleStatic ( )

Member Function Documentation

◆ execute() [1/2]

virtual void asl::FDElasticityIncompressibleStatic::execute ( )
virtual

Executes the numerical procedure.

Implements asl::ElasticityCommonA.

◆ execute() [2/2]

virtual void asl::FDElasticityIncompressibleStatic::execute ( )
virtual

Executes the numerical procedure.

Implements asl::ElasticityCommonA.

◆ getPressureData() [1/2]

ElasticityCommonA::Data asl::FDElasticityIncompressibleStatic::getPressureData ( ) const
inline

Definition at line 244 of file aslFDElasticity.h.

◆ getPressureData() [2/2]

Data asl::FDElasticityIncompressibleStatic::getPressureData ( ) const
inline

◆ init() [1/2]

virtual void asl::FDElasticityIncompressibleStatic::init ( )
virtual

Builds the necesery internal data and kernels.

Implements asl::ElasticityCommonA.

◆ init() [2/2]

virtual void asl::FDElasticityIncompressibleStatic::init ( )
virtual

Builds the necesery internal data and kernels.

Implements asl::ElasticityCommonA.


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