SPHinXsys  alpha version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SPH::ParticleDynamics< ReturnType > Class Template Referenceabstract

The base class for all particle dynamics This class contains the only two interface functions available for particle dynamics. An specific implementation should be realized. More...

#include <base_particle_dynamics.h>

Inherits SPH::GlobalStaticVariables.

Inherited by SPH::PartDynamicsByCellReduce< ReturnType, ReduceOperation >, SPH::PartDynamicsByParticleReduce< ReturnType, ReduceOperation >, and SPH::ParticleDynamicsReduce< ReturnType, ReduceOperation >.

Public Member Functions

 ParticleDynamics (SPHBody &sph_body)
 
SPHBodygetSPHBody ()
 
virtual ReturnType exec (Real dt=0.0)=0
 
virtual ReturnType parallel_exec (Real dt=0.0)=0
 

Protected Member Functions

void setBodyUpdated ()
 
virtual void setupDynamics (Real dt=0.0)
 

Protected Attributes

SPHBodysph_body_
 
SPHAdaptationsph_adaptation_
 
BaseParticlesbase_particles_
 

Additional Inherited Members

- Static Public Attributes inherited from SPH::GlobalStaticVariables
static Real physical_time_ = 0.0
 

Detailed Description

template<class ReturnType = void>
class SPH::ParticleDynamics< ReturnType >

The base class for all particle dynamics This class contains the only two interface functions available for particle dynamics. An specific implementation should be realized.

Member Function Documentation

◆ exec()

template<class ReturnType = void>
virtual ReturnType SPH::ParticleDynamics< ReturnType >::exec ( Real  dt = 0.0)
pure virtual

The only two functions can be called from outside One is for sequential execution, the other is for parallel.

Implemented in SPH::relax_dynamics::ShellRelaxationStepInner, SPH::MirrorBoundaryConditionInAxisDirection, SPH::MirrorBoundaryConditionInAxisDirection::UpdatingGhostStates, SPH::relax_dynamics::ShellNormalDirectionPrediction, SPH::MirrorBoundaryConditionInAxisDirection::MirrorBounding, SPH::relax_dynamics::RelaxationStepComplex, SPH::solid_dynamics::ClampConstrainSolidBodyRegion, SPH::PartDynamicsByParticleReduce< ReturnType, ReduceOperation >, SPH::PartDynamicsByParticleReduce< Real, ReduceSum< Real > >, SPH::PartDynamicsByParticleReduce< SimTK::SpatialVec, ReduceSum< SimTK::SpatialVec > >, SPH::BodyParticleDynamics, SPH::relax_dynamics::RelaxationStepInner, SPH::RelaxationOfAllDiffusionSpeciesRK2< FirstStageType >, SPH::RelaxationOfAllDiffusionSpeciesRK2< RelaxationOfAllDiffusionSpeciesComplex< RealBody, SolidParticles, Solid, RealBody, SolidParticles, Solid > >, SPH::RelaxationOfAllDiffusionSpeciesRK2< RelaxationOfAllDiffusionSpeciesInner< RealBody, SolidParticles, Solid > >, SPH::InteractionDynamicsSplitting, SPH::OpenBoundaryConditionInAxisDirection::ParticleTypeTransfer, SPH::ParticleDynamics1Level, SPH::PartDynamicsByCellReduce< ReturnType, ReduceOperation >, SPH::PartDynamicsByCellReduce< Real, ReduceMax >, SPH::InteractionDynamicsWithUpdate, SPH::PartDynamicsByCell, SPH::PartInteractionDynamicsByParticle1Level, SPH::InteractionDynamics, SPH::PeriodicConditionInAxisDirection::PeriodicCondition, SPH::PartInteractionDynamicsByParticleWithUpdate, SPH::PartInteractionDynamicsByParticle, SPH::GetDiffusionTimeStepSize< BodyType, BaseParticlesType, BaseMaterialType >, SPH::GetDiffusionTimeStepSize< RealBody, SolidParticles, Solid >, SPH::PeriodicConditionInAxisDirection::PeriodicBounding, SPH::ParticleDynamicsReduce< ReturnType, ReduceOperation >, SPH::ParticleDynamicsReduce< Vecd, ReduceSum< Vecd > >, SPH::ParticleDynamicsReduce< VariableType, ReduceSum< VariableType > >, SPH::ParticleDynamicsReduce< Real, ReduceSum< Real > >, SPH::ParticleDynamicsReduce< bool, ReduceAND >, SPH::ParticleDynamicsReduce< Real, ReduceMin >, SPH::ParticleDynamicsReduce< Vecd, ReduceUpperBound >, SPH::ParticleDynamicsReduce< Real, ReduceMax >, SPH::ParticleDynamicsReduce< Vecd, ReduceLowerBound >, SPH::ParticleDynamicsReduce< bool, ReduceOR >, SPH::PartSimpleDynamicsByParticle, and SPH::ParticleDynamicsSimple.

◆ setupDynamics()

template<class ReturnType = void>
virtual void SPH::ParticleDynamics< ReturnType >::setupDynamics ( Real  dt = 0.0)
inlineprotectedvirtual

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