30 #ifndef ELASTIC_DYNAMICS_H 31 #define ELASTIC_DYNAMICS_H 33 #include "all_particle_dynamics.h" 36 #include "all_body_relations.h" 45 template <
typename VariableType>
47 template <
typename VariableType>
50 namespace solid_dynamics
55 typedef DataDelegateSimple<SolidBody, ElasticSolidParticles, ElasticSolid> ElasticSolidDataSimple;
56 typedef DataDelegateInner<SolidBody, ElasticSolidParticles, ElasticSolid> ElasticSolidDataInner;
86 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
104 Real smoothing_length_, c0_;
105 Real ReduceFunction(
size_t index_i, Real dt = 0.0)
override;
122 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
155 Real rho0_, inv_rho0_;
157 Real smoothing_length_;
159 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
175 Real numerical_dissipation_factor_;
176 Real inv_W0_ = 1.0 / body_->sph_adaptation_->getKernel()->W0(Vecd(0));
178 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override;
179 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
192 const Real one_over_dimensions_ = 1.0 / (Real)Dimensions;
194 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override;
221 const Real one_over_dimensions_ = 1.0 / (Real)Dimensions;
222 const Real correction_factor_ = 1.07;
224 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override;
225 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
241 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override;
242 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
243 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
247 #endif //ELASTIC_DYNAMICS_H
prepare data for inner particle dynamics
Definition: base_particle_dynamics.h:216
Decompose the stress into particle stress includes isotropic stress and the stress due to non-homogen...
Definition: elastic_dynamics.h:212
Simple particle dynamics without considering particle interaction.
Definition: particle_dynamics_algorithms.h:48
This is the particle dynamics aplliable for all type bodies.
Declaration of solidbody which is used for Solid BCs and derived from RealBody.
Definition: solid_body.h:46
Definition: elastic_dynamics.h:185
computing stress relaxation process by verlet time stepping This is the second step ...
Definition: elastic_dynamics.h:233
computing stress relaxation process by verlet time stepping This is the first step ...
Definition: elastic_dynamics.h:167
Base abstract class for reduce.
Definition: particle_dynamics_algorithms.h:69
update particle normal directions for elastic solid
Definition: elastic_dynamics.h:77
base class for elastic relaxation
Definition: elastic_dynamics.h:129
computing stress relaxation process by verlet time stepping This is the first step ...
Definition: elastic_dynamics.h:148
This class includes an initialization, an interaction and a update steps.
Definition: particle_dynamics_algorithms.h:181
This is the class for particle interaction with other particles.
Definition: particle_dynamics_algorithms.h:115
Computing the acoustic time step size computing time step size.
Definition: elastic_dynamics.h:94
This is the derived class of base particles.
The abstract relation within a SPH body.
Definition: base_body_relation.h:117
prepare data for simple particle dynamics.
Definition: base_particle_dynamics.h:185
This is the base classes of kernel functions. Implementation will be implemented in derived classes...
These are classes for define properties of elastic solid materials. These classes are based on isotro...
This is the class for bodies used for solid BCs or Elastic structure.
set initial condition for a solid body with different material This is a abstract class to be overrid...
Definition: elastic_dynamics.h:63
Definition: solid_body_supplementary.cpp:9