SPHinXsys  alpha version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SPH::fluid_dynamics::EmitterInflowInjecting Class Reference

Inject particles into the computational domain. More...

#include <fluid_boundary.h>

Inherits SPH::PartSimpleDynamicsByParticle, and SPH::DataDelegateSimple< BodyType, ParticlesType, MaterialType >.

Public Member Functions

 EmitterInflowInjecting (FluidBody &fluid_body, BodyAlignedBoxByParticle &aligned_box_part, size_t body_buffer_width, int axis_direction, bool positive)
 
virtual void parallel_exec (Real dt=0.0) override
 
AlignedBoxShapegetBodyPartByParticle ()
 
- Public Member Functions inherited from SPH::PartSimpleDynamicsByParticle
 PartSimpleDynamicsByParticle (SPHBody &sph_body, BodyPartByParticle &body_part)
 
virtual void exec (Real dt=0.0) override
 
- Public Member Functions inherited from SPH::PartDynamicsByParticle
 PartDynamicsByParticle (SPHBody &sph_body, BodyPartByParticle &body_part)
 
- Public Member Functions inherited from SPH::ParticleDynamics< void >
 ParticleDynamics (SPHBody &sph_body)
 
SPHBodygetSPHBody ()
 
- Public Member Functions inherited from SPH::DataDelegateSimple< BodyType, ParticlesType, MaterialType >
 DataDelegateSimple (SPHBody &sph_body)
 
BodyType * getBody ()
 
ParticlesType * getParticles ()
 
MaterialType * getMaterial ()
 

Protected Member Functions

virtual void checkLowerBound (size_t unsorted_index_i, Real dt=0.0)
 
virtual void checkUpperBound (size_t unsorted_index_i, Real dt=0.0)
 
virtual void Update (size_t unsorted_index_i, Real dt=0.0) override
 
- Protected Member Functions inherited from SPH::ParticleDynamics< void >
void setBodyUpdated ()
 
virtual void setupDynamics (Real dt=0.0)
 

Protected Attributes

StdLargeVec< Vecd > & pos_
 
StdLargeVec< Real > & rho_
 
StdLargeVec< Real > & p_
 
const int axis_
 
size_t body_buffer_width_
 
AlignedBoxShapealigned_box_
 
ParticleFunctor checking_bound_
 
- Protected Attributes inherited from SPH::PartSimpleDynamicsByParticle
ParticleFunctor functor_update_
 
- Protected Attributes inherited from SPH::PartDynamicsByParticle
IndexVectorbody_part_particles_
 
- Protected Attributes inherited from SPH::ParticleDynamics< void >
SPHBodysph_body_
 
SPHAdaptationsph_adaptation_
 
BaseParticlesbase_particles_
 
- Protected Attributes inherited from SPH::DataDelegateSimple< BodyType, ParticlesType, MaterialType >
BodyType * body_
 
ParticlesType * particles_
 
MaterialType * material_
 
StdLargeVec< size_t > & sorted_id_
 
StdLargeVec< size_t > & unsorted_id_
 

Additional Inherited Members

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

Detailed Description

Inject particles into the computational domain.

Member Function Documentation

◆ checkLowerBound()

void SPH::fluid_dynamics::EmitterInflowInjecting::checkLowerBound ( size_t  unsorted_index_i,
Real  dt = 0.0 
)
protectedvirtual

Buffer Particle state copied from real particle.
Realize the buffer particle by increasing the number of real particle in the body.

◆ checkUpperBound()

void SPH::fluid_dynamics::EmitterInflowInjecting::checkUpperBound ( size_t  unsorted_index_i,
Real  dt = 0.0 
)
protectedvirtual

Buffer Particle state copied from real particle.

Realize the buffer particle by increasing the number of real particle in the body.
Periodic bounding.

◆ parallel_exec()

virtual void SPH::fluid_dynamics::EmitterInflowInjecting::parallel_exec ( Real  dt = 0.0)
inlineoverridevirtual

This class is only implemented in sequential due to memory conflicts.

Reimplemented from SPH::PartSimpleDynamicsByParticle.

Member Data Documentation

◆ axis_

const int SPH::fluid_dynamics::EmitterInflowInjecting::axis_
protected

the axis direction for bounding


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