![]() |
|
Supplies a 'constant heat flux' to a cuboidal region (specified by two corner points) by adding a random velocity at each time step to each particle therein, increasing the granular temperature (velocity variance). More...
#include <DropletBoundary.h>
Classes | |
struct | Droplet |
Public Member Functions | |
DropletBoundary () | |
DropletBoundary (const DropletBoundary &other) | |
~DropletBoundary () override | |
DropletBoundary * | copy () const override |
Used to create a copy of the object NB: purely virtual function. More... | |
std::string | getName () const override |
A purely virtual function. More... | |
void | checkBoundaryAfterParticlesMove (ParticleHandler &pH) override |
Runs at the end of each time step. More... | |
void | read (std::istream &is) override |
Reads some boundary properties from an std::istream. More... | |
void | write (std::ostream &os) const override |
Writes the boundary properties to an std::ostream. More... | |
void | setGenerateDroplets (std::function< void(DropletBoundary &)> generateDroplets) |
void | setRemoveDroplets (std::function< bool(const Droplet &)> removeDroplets) |
void | writeVTK (std::fstream &file) override |
void | setRemoveDropletsAtWalls (bool removeDroplets) |
void | setDropletSpecies (const ParticleSpecies *species) |
void | setDropletTemperature (double temperature) |
void | actionsBeforeTimeLoop () override |
Virtual function that does something after DPMBase::setupInitialConditions but before the first time step. More... | |
void | addDroplet (const Vec3D &position, const Vec3D &velocity, double radius) |
void | addDroplet (const Vec3D &position, const Vec3D &velocity, double radius, double liquidVolume) |
std::vector< Droplet > & | getDroplets () |
double | getDropletVolume () const |
double | getAbsorbedVolume () const |
double | getLostVolume () const |
double | getTotalInsertedVolume () const |
void | setLiquidFilmVolumeMaxFraction (double volumeFraction) |
Sets the fraction of the particle volume that indicates the maximum amount of liquid a particle may hold. More... | |
void | setLiquidFilmVolumeMaxFractionFromRadiusFraction (double radiusFraction) |
Sets the fraction of the particle volume that indicates the maximum amount of liquid a particle may hold, based on a liquid film thickness specified by a fraction of the particle radius. More... | |
![]() | |
BaseBoundary () | |
default constructor. More... | |
BaseBoundary (const BaseBoundary &b) | |
copy constructor More... | |
~BaseBoundary () override | |
destructor More... | |
virtual void | createPeriodicParticle (BaseParticle *p UNUSED, ParticleHandler &pH UNUSED) |
Creates a periodic particle in case of periodic boundaries in serial build. More... | |
virtual void | createPeriodicParticles (ParticleHandler &pH UNUSED) |
Creates periodic copies of given particle in case of periodic boundaries. More... | |
virtual void | checkBoundaryBeforeTimeStep (DPMBase *md) |
Virtual function that does things before each time step. More... | |
virtual void | modifyGhostAfterCreation (BaseParticle *particle, int i) |
void | setHandler (BoundaryHandler *handler) |
Sets the boundary's BoundaryHandler. More... | |
BoundaryHandler * | getHandler () const |
Returns the boundary's BoundaryHandler. More... | |
![]() | |
BaseObject ()=default | |
Default constructor. More... | |
BaseObject (const BaseObject &p)=default | |
Copy constructor, copies all the objects BaseObject contains. More... | |
virtual | ~BaseObject ()=default |
virtual destructor More... | |
virtual void | moveInHandler (unsigned int index) |
Except that it is virtual, it does the same thing as setIndex() does. More... | |
void | setIndex (unsigned int index) |
Allows one to assign an index to an object in the handler/container. More... | |
void | setId (unsigned long id) |
Assigns a unique identifier to each object in the handler (container) which remains constant even after the object is deleted from the container/handler. More... | |
unsigned int | getIndex () const |
Returns the index of the object in the handler. More... | |
unsigned int | getId () const |
Returns the unique identifier of any particular object. More... | |
void | setGroupId (unsigned groupId) |
unsigned | getGroupId () const |
Public Attributes | |
unsigned | checkCount = 3 |
Private Member Functions | |
void | addHeatTransfer (BaseParticle *particle, double liquidVolume) |
double | getSpeciesHeatCapacity (const ParticleSpecies *species) const |
Private Attributes | |
std::function< void(DropletBoundary &)> | generateDroplets_ = [] (DropletBoundary&) {} |
std::function< bool(const Droplet &)> | removeDroplets_ = [] (const Droplet&) { return false; } |
std::vector< Droplet > | droplets_ |
double | dropletVolume_ = 0 |
double | absorbedVolume_ = 0 |
double | lostVolume_ = 0 |
bool | removeDropletsAtWalls_ = true |
const ParticleSpecies * | dropletSpecies_ = nullptr |
double | dropletTemperature_ = -1.0 |
double | liquidFilmVolumeMaxFraction_ = constants::inf |
Supplies a 'constant heat flux' to a cuboidal region (specified by two corner points) by adding a random velocity at each time step to each particle therein, increasing the granular temperature (velocity variance).
Note, you need to create a species for the droplets that has liquidVolumeMax-0, or the contact happens at a non-zero distance
|
inline |
Referenced by copy().
|
inline |
References absorbedVolume_, droplets_, dropletSpecies_, dropletTemperature_, dropletVolume_, generateDroplets_, liquidFilmVolumeMaxFraction_, lostVolume_, removeDroplets_, and removeDropletsAtWalls_.
|
inlineoverride |
|
inlineoverridevirtual |
Virtual function that does something after DPMBase::setupInitialConditions but before the first time step.
Can be used to perform actions before the time loop, but after setupInitialConditions.
Reimplemented from BaseBoundary.
References checkCount, dropletSpecies_, dropletTemperature_, ERROR, BaseHandler< T >::getDPMBase(), BaseBoundary::getHandler(), BaseHandler< T >::getLastObject(), getSpeciesHeatCapacity(), logger, removeDropletsAtWalls_, DPMBase::speciesHandler, and WARN.
|
inline |
References constants::pi, Eigen::bfloat16_impl::pow(), UniformPSDSelfTest::radius, and Jeffery_Solution::velocity().
Referenced by main(), read(), NozzleDemo::setupInitialConditions(), and NozzleSelfTest::setupInitialConditions().
|
inline |
References droplets_, dropletVolume_, UniformPSDSelfTest::radius, and Jeffery_Solution::velocity().
|
private |
References dropletSpecies_, dropletTemperature_, ParticleSpecies::getDensity(), and getSpeciesHeatCapacity().
Referenced by checkBoundaryAfterParticlesMove().
|
overridevirtual |
Runs at the end of each time step.
Reimplemented from BaseBoundary.
References absorbedVolume_, addHeatTransfer(), LiquidFilm< Particle >::addLiquidVolume(), b, checkCount, droplets_, dropletSpecies_, dropletVolume_, generateDroplets_, BaseHandler< T >::getDPMBase(), BaseBoundary::getHandler(), ParticleSpecies::getMassFromRadius(), i, constants::inf, liquidFilmVolumeMaxFraction_, logger, lostVolume_, m, max, min, p, Eigen::numext::q, removeDroplets_, removeDropletsAtWalls_, and w.
|
inlineoverridevirtual |
Used to create a copy of the object NB: purely virtual function.
Implements BaseBoundary.
References DropletBoundary().
|
inline |
References absorbedVolume_.
|
inline |
References droplets_.
Referenced by NozzleDemo::printTime(), and NozzleSelfTest::printTime().
|
inline |
References dropletVolume_.
|
inline |
References lostVolume_.
|
inlineoverridevirtual |
|
private |
References ThermalSpecies< NormalForceSpecies >::getHeatCapacity(), logger, and WARN.
Referenced by actionsBeforeTimeLoop(), and addHeatTransfer().
|
inline |
References absorbedVolume_, dropletVolume_, and lostVolume_.
Referenced by main(), NozzleDemo::setupInitialConditions(), and NozzleSelfTest::setupInitialConditions().
|
overridevirtual |
Reads some boundary properties from an std::istream.
Reads a number of boundary properties from the given std::istream.
[in,out] | is | the istream |
Implements BaseBoundary.
References absorbedVolume_, addDroplet(), checkCount, droplets_, dropletTemperature_, dropletVolume_, i, helpers::isNext(), liquidFilmVolumeMaxFraction_, helpers::lookAhead(), lostVolume_, n, UniformPSDSelfTest::radius, BaseBoundary::read(), removeDropletsAtWalls_, oomph::Global_string_for_annotation::string(), and Jeffery_Solution::velocity().
|
inline |
References dropletSpecies_.
|
inline |
References dropletTemperature_.
|
inline |
References generateDroplets_.
Referenced by main(), NozzleDemo::setupInitialConditions(), and NozzleSelfTest::setupInitialConditions().
|
inline |
Sets the fraction of the particle volume that indicates the maximum amount of liquid a particle may hold.
References liquidFilmVolumeMaxFraction_, and logger.
|
inline |
Sets the fraction of the particle volume that indicates the maximum amount of liquid a particle may hold, based on a liquid film thickness specified by a fraction of the particle radius.
References liquidFilmVolumeMaxFraction_, logger, and Eigen::bfloat16_impl::pow().
|
inline |
References removeDroplets_.
|
inline |
References removeDropletsAtWalls_.
|
overridevirtual |
Writes the boundary properties to an std::ostream.
Writes the boundary properties to an std::ostream.
[out] | os | the ostream the properties are to be written to. |
Implements BaseBoundary.
References absorbedVolume_, checkCount, droplets_, dropletTemperature_, dropletVolume_, liquidFilmVolumeMaxFraction_, lostVolume_, removeDropletsAtWalls_, and BaseBoundary::write().
|
overridevirtual |
Reimplemented from BaseBoundary.
|
private |
Referenced by checkBoundaryAfterParticlesMove(), DropletBoundary(), getAbsorbedVolume(), getTotalInsertedVolume(), read(), and write().
unsigned DropletBoundary::checkCount = 3 |
Referenced by actionsBeforeTimeLoop(), checkBoundaryAfterParticlesMove(), read(), and write().
|
private |
Referenced by addDroplet(), checkBoundaryAfterParticlesMove(), DropletBoundary(), getDroplets(), read(), write(), and writeVTK().
|
private |
|
private |
Referenced by actionsBeforeTimeLoop(), addHeatTransfer(), DropletBoundary(), read(), setDropletTemperature(), and write().
|
private |
Referenced by addDroplet(), checkBoundaryAfterParticlesMove(), DropletBoundary(), getDropletVolume(), getTotalInsertedVolume(), read(), and write().
|
private |
Referenced by checkBoundaryAfterParticlesMove(), DropletBoundary(), and setGenerateDroplets().
|
private |
|
private |
Referenced by checkBoundaryAfterParticlesMove(), DropletBoundary(), getLostVolume(), getTotalInsertedVolume(), read(), and write().
|
private |
Referenced by checkBoundaryAfterParticlesMove(), DropletBoundary(), and setRemoveDroplets().
|
private |
Referenced by actionsBeforeTimeLoop(), checkBoundaryAfterParticlesMove(), DropletBoundary(), read(), setRemoveDropletsAtWalls(), and write().