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
 
- 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
 
- Public Member Functions inherited from asl::NumMethod
virtual ~NumMethod ()
 

Additional Inherited Members

- Public Types inherited from asl::ElasticityCommonA
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/2]

asl::FDElasticityIncompressibleStatic::FDElasticityIncompressibleStatic ( )

◆ FDElasticityIncompressibleStatic() [2/2]

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()

asl::FDElasticityIncompressibleStatic::~FDElasticityIncompressibleStatic ( )

Member Function Documentation

◆ execute()

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

Executes the numerical procedure.

Implements asl::ElasticityCommonA.

◆ getPressureData()

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

Definition at line 244 of file aslFDElasticity.h.

◆ init()

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: