29 #ifndef PARTICLE_DYNAMICS_DISSIPATION_H 30 #define PARTICLE_DYNAMICS_DISSIPATION_H 32 #include "all_particle_dynamics.h" 36 typedef DataDelegateInner<SPHBody, BaseParticles, BaseMaterial> DissipationDataInner;
37 typedef DataDelegateContact<SPHBody, BaseParticles, BaseMaterial,
38 SPHBody, BaseParticles, BaseMaterial, DataDelegateEmptyBase>
39 DissipationDataContact;
40 typedef DataDelegateContact<SPHBody, BaseParticles, BaseMaterial,
41 SolidBody, SolidParticles, Solid, DataDelegateEmptyBase>
42 DissipationDataWithWall;
44 template <
typename VariableType>
60 template <
typename VariableType>
67 void resetDampingCoefficient(Real reset_ratio) {
eta_ *= reset_ratio; };
72 StdLargeVec<VariableType> &variable_;
76 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
79 template <
typename VariableType>
91 StdVec<StdLargeVec<Real> *> contact_Vol_, contact_mass_;
92 StdVec<StdLargeVec<VariableType> *> contact_variable_;
96 template <
typename BaseVariableType>
108 StdVec<StdLargeVec<Real> *> wall_Vol_;
109 StdVec<StdLargeVec<VariableType> *> wall_variable_;
120 template <
typename VariableType>
126 void resetDampingCoefficient(Real reset_ratio) {
eta_ *= reset_ratio; };
130 StdLargeVec<VariableType> &variable_;
133 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
136 template <
typename VariableType>
146 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
149 StdVec<StdLargeVec<Real> *> contact_Vol_, contact_mass_;
150 StdVec<StdLargeVec<VariableType> *> contact_variable_;
170 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
173 StdVec<StdLargeVec<Real> *> wall_Vol_;
174 StdVec<StdLargeVec<VariableType> *> wall_variable_;
182 template <
typename VariableType>
185 SolidBody, SolidParticles, Solid>
192 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
197 StdLargeVec<VariableType> &variable_;
198 StdVec<StdLargeVec<Real> *> wall_Vol_;
199 StdVec<StdLargeVec<VariableType> *> wall_variable_;
209 template <
class DampingAlgorithmType>
217 template <
typename... ConstructorArgs>
221 virtual void exec(Real dt = 0.0)
override;
222 virtual void parallel_exec(Real dt = 0.0)
override;
225 #endif // PARTICLE_DYNAMICS_DISSIPATION_H
prepare data for inner particle dynamics
Definition: base_particle_dynamics.h:216
The base relation between a SPH body and its contact SPH bodies.
Definition: base_body_relation.h:136
virtual void Interaction(size_t index_i, Real dt=0.0) override
Definition: particle_dynamics_dissipation.hpp:348
Real eta_
Definition: particle_dynamics_dissipation.h:67
Definition: particle_dynamics_dissipation.h:98
Definition: particle_dynamics_dissipation.h:61
virtual void updateStates(size_t index_i, Real dt, const ErrorAndParameters< VariableType > &error_and_parameters) override
Definition: particle_dynamics_dissipation.hpp:130
Definition: particle_dynamics_dissipation.h:45
Real eta_
Definition: particle_dynamics_dissipation.h:131
virtual ErrorAndParameters< VariableType > computeErrorAndParameters(size_t index_i, Real dt=0.0) override
Definition: particle_dynamics_dissipation.hpp:98
This is for the splitting algorithm.
Definition: particle_dynamics_algorithms.h:202
Damping to wall by which the wall velocity is not updated and the mass of wall particle is not consid...
Definition: particle_dynamics_dissipation.h:183
Definition: particle_dynamics_dissipation.h:137
The relation combined an inner and a contact body relation. The interaction is in a inner-boundary-co...
Definition: complex_body_relation.h:42
virtual void Interaction(size_t index_i, Real dt=0.0) override
Definition: particle_dynamics_dissipation.hpp:278
virtual ErrorAndParameters< VariableType > computeErrorAndParameters(size_t index_i, Real dt=0.0) override
Definition: particle_dynamics_dissipation.hpp:181
Damping with wall by which the wall velocity is not updated and the mass of wall particle is not cons...
Definition: particle_dynamics_dissipation.h:160
virtual void Interaction(size_t index_i, Real dt=0.0) override
Definition: particle_dynamics_dissipation.hpp:401
The abstract relation within a SPH body.
Definition: base_body_relation.h:117
Definition: particle_dynamics_dissipation.h:80
A quantity damping by a pairwise splitting scheme this method modifies the quantity directly Note tha...
Definition: particle_dynamics_dissipation.h:121
A random choice method for obstaining static equilibrium state Note that, if periodic boundary condit...
Definition: particle_dynamics_dissipation.h:210
Definition: solid_body_supplementary.cpp:9