34 #include "all_particle_dynamics.h" 37 #include "riemann_solver.h" 42 namespace eulerian_compressible_fluid_dynamics
44 typedef DataDelegateSimple<EulerianFluidBody, CompressibleFluidParticles, CompressibleFluid> CompressibleFluidDataSimple;
45 typedef DataDelegateInner<EulerianFluidBody, CompressibleFluidParticles, CompressibleFluid> CompressibleFluidDataInner;
64 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
100 Real smoothing_length_;
104 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
120 Real smoothing_length_;
121 Real ReduceFunction(
size_t index_i, Real dt = 0.0)
override;
122 Real OutputResult(Real reduced_value)
override;
151 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override;
152 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
160 template <
class RiemannSolverType>
166 RiemannSolverType riemann_solver_;
169 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
185 virtual void Initialization(
size_t index_i, Real dt = 0.0)
override{};
186 virtual void Update(
size_t index_i, Real dt = 0.0)
override;
193 template <
class RiemannSolverType>
199 RiemannSolverType riemann_solver_;
202 virtual void Interaction(
size_t index_i, Real dt = 0.0)
override;
prepare data for inner particle dynamics
Definition: base_particle_dynamics.h:216
Simple particle dynamics without considering particle interaction.
Definition: particle_dynamics_algorithms.h:48
Here, we define the algorithm classes for fluid dynamics within the body.
virtual void setupDynamics(Real dt=0.0) override
Definition: eulerian_compressible_fluid_dynamics_inner.cpp:30
Pure abstract base class for all fluid relaxation schemes.
Definition: eulerian_compressible_fluid_dynamics_inner.h:129
A wrapper to provide an ownership for a new derived object which previous often generated by new a ra...
Definition: ownership.h:90
Base abstract class for reduce.
Definition: particle_dynamics_algorithms.h:69
Eulerian Fluid body uses smoothing length to particle spacing 1.3.
Definition: fluid_body.h:60
Computing the acoustic time step size.
Definition: eulerian_compressible_fluid_dynamics_inner.h:111
Set initial condition for a fluid body. This is a abstract class to be override for case specific ini...
Definition: eulerian_compressible_fluid_dynamics_inner.h:72
This class includes an initialization, an interaction and a update steps.
Definition: particle_dynamics_algorithms.h:181
Abstract base class for all pressure relaxation schemes.
Definition: eulerian_compressible_fluid_dynamics_inner.h:144
Template density relaxation scheme in HLLC Riemann solver with and without limiter.
Definition: eulerian_compressible_fluid_dynamics_inner.h:194
the viscosity force induced acceleration
Definition: eulerian_compressible_fluid_dynamics_inner.h:90
This is the class for particle interaction with other particles.
Definition: particle_dynamics_algorithms.h:115
SPHBody is a base body with basic data and functions. Its derived class can be a real fluid body...
Definition: base_body.h:61
Here, we define the base external force class.
Describe the compressible fluid which is used model compressible fluids. Here, we have ideal gas equa...
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...
Definition: eulerian_compressible_fluid_dynamics_inner.h:47
Abstract base class for all density relaxation schemes.
Definition: eulerian_compressible_fluid_dynamics_inner.h:178
The gravity force, derived class of External force.
Definition: external_force.h:55
Definition: solid_body_supplementary.cpp:9
Template class for pressure relaxation scheme with the Riemann solver as template variable...
Definition: eulerian_compressible_fluid_dynamics_inner.h:161