SPH
Public Member Functions | Protected Attributes | List of all members
FrozenParticles Class Reference

Boundary condition that nulls all highest derivates of selected particles. More...

#include <Boundary.h>

Inheritance diagram for FrozenParticles:
IBoundaryCondition Polymorphic WindTunnel

Public Member Functions

 FrozenParticles ()
 Constructs boundary conditions with no particles frozen. More...
 
 ~FrozenParticles ()
 
 FrozenParticles (SharedPtr< IDomain > domain, const Float radius)
 Constructs boundary conditions with frozen particles near boundary. More...
 
void freeze (const Size flag)
 Adds body ID particles of which shall be frozen by boundary conditions. More...
 
void thaw (const Size flag)
 Remove a body from the list of frozen bodies. More...
 
virtual void initialize (Storage &UNUSED(storage)) override
 
virtual void finalize (Storage &storage) override
 Applies the boundary conditions after the derivatives are computed. More...
 
- Public Member Functions inherited from IBoundaryCondition
virtual void initialize (Storage &storage)=0
 Applies the boundary conditions before the derivatives are computed. More...
 
- Public Member Functions inherited from Polymorphic
virtual ~Polymorphic ()
 

Protected Attributes

SharedPtr< IDomaindomain
 
Float radius
 
std::set< Sizefrozen
 
Array< Floatdistances
 
Array< Sizeidxs
 

Detailed Description

Boundary condition that nulls all highest derivates of selected particles.

Term can freeze particles close to the boundary and/or particles of given body or list of bodies. This will cause the particles to keep quantity values given by their initial conditions and move with initial velocity. The 'frozen' particles affect other particles normally and contribute to all integrals, such as total mometum or energy.

Definition at line 160 of file Boundary.h.

Constructor & Destructor Documentation

◆ FrozenParticles() [1/2]

FrozenParticles::FrozenParticles ( )
default

Constructs boundary conditions with no particles frozen.

These can be later added using freeze function.

◆ ~FrozenParticles()

FrozenParticles::~FrozenParticles ( )
default

◆ FrozenParticles() [2/2]

FrozenParticles::FrozenParticles ( SharedPtr< IDomain domain,
const Float  radius 
)

Constructs boundary conditions with frozen particles near boundary.

Parameters
domainDomain defining the boundary
radiusSearch radius (in units of smoothing length) up to which the particles will be frozen.

Definition at line 194 of file Boundary.cpp.

Member Function Documentation

◆ finalize()

void FrozenParticles::finalize ( Storage storage)
overridevirtual

Applies the boundary conditions after the derivatives are computed.

Called every time step after equations are evaluated (finalized).

Implements IBoundaryCondition.

Reimplemented in WindTunnel.

Definition at line 208 of file Boundary.cpp.

◆ freeze()

void FrozenParticles::freeze ( const Size  flag)

Adds body ID particles of which shall be frozen by boundary conditions.

Definition at line 199 of file Boundary.cpp.

◆ initialize()

virtual void FrozenParticles::initialize ( Storage UNUSEDstorage)
inlineoverridevirtual

Reimplemented in WindTunnel.

Definition at line 192 of file Boundary.h.

◆ thaw()

void FrozenParticles::thaw ( const Size  flag)

Remove a body from the list of frozen bodies.

Remove a body from the list of frozen bodies. If the body is not on the list, nothing happens.

If the body is not on the list, nothing happens.

Definition at line 204 of file Boundary.cpp.

Member Data Documentation

◆ distances

Array<Float> FrozenParticles::distances
protected

Definition at line 167 of file Boundary.h.

◆ domain

SharedPtr<IDomain> FrozenParticles::domain
protected

Definition at line 162 of file Boundary.h.

◆ frozen

std::set<Size> FrozenParticles::frozen
protected

Definition at line 165 of file Boundary.h.

◆ idxs

Array<Size> FrozenParticles::idxs
protected

Definition at line 168 of file Boundary.h.

◆ radius

Float FrozenParticles::radius
protected

Definition at line 163 of file Boundary.h.


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