OpenLB 1.7
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
particleCreatorFunctions.h File Reference
#include <sstream>
#include <string>
#include <vector>
#include "particles/communication/particleParallelCreatorFunctions3D.h"
#include "particles/functions/particleContactForceFunctions.h"
#include "particles/functions/particleCreatorFunctions2D.h"
#include "particles/functions/particleCreatorFunctions3D.h"
#include "particles/particles.h"
+ Include dependency graph for particleCreatorFunctions.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  olb::particles::creators::SpawnData< T, D >
 

Namespaces

namespace  olb
 Top level namespace for all of OpenLB.
 
namespace  olb::particles
 
namespace  olb::particles::creators
 

Functions

template<typename T , unsigned D>
olb::particles::creators::calcParticleVolume (const std::vector< SpawnData< T, D > > &spawnData, const std::function< T(const std::size_t &)> &getParticleVolume)
 
template<typename T , unsigned D>
olb::particles::creators::calcParticleVolumeFraction (const std::vector< SpawnData< T, D > > &spawnData, const T fluidVolume, const std::function< T(const std::size_t &)> &getParticleVolume)
 
template<typename T , unsigned D>
void olb::particles::creators::extendSpawnData (std::vector< SpawnData< T, D > > &spawnData, const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const std::function< T(const std::size_t &)> &getCircumRadius, const std::function< T(const std::size_t &)> &getParticleVolume)
 
template<typename T , unsigned D>
std::vector< SpawnData< T, D > > olb::particles::creators::setParticles (const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const std::function< T(const std::size_t &)> &getCircumRadius, const std::function< T(const std::size_t &)> &getParticleVolume, const std::function< void(const SpawnData< T, D > &, const std::size_t &)> createParticle)
 
std::vector< std::vector< std::string > > olb::particles::creators::readParticlePositions (const std::string &filename)
 
template<typename T , unsigned D>
void olb::particles::creators::saveParticlePositions (const std::string &filename, const std::vector< SpawnData< T, D > > &spawnData, const std::function< std::string(const std::size_t &)> &evalIdentifier)
 
template<typename T , unsigned D>
std::vector< SpawnData< T, D > > olb::particles::creators::setParticles (const std::string &filename, const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const std::function< T(const std::size_t &)> &getParticleVolume, const std::function< void(const SpawnData< T, D > &, const std::string &)> createParticle)
 
template<typename T , unsigned D>
void olb::particles::creators::extendSpawnData (std::vector< SpawnData< T, D > > &spawnData, const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMin, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMax, const std::function< T(const std::size_t &)> &getParticleVolume)
 
template<typename T , unsigned D>
std::vector< SpawnData< T, D > > olb::particles::creators::setParticles (const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMin, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMax, const std::function< T(const std::size_t &)> &getParticleVolume, const std::function< void(const SpawnData< T, D > &, const std::size_t &)> createParticle)
 
template<typename T , unsigned D>
void olb::particles::creators::extendSpawnData (std::vector< SpawnData< T, D > > &spawnData, const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const T deltaX, const T contactDetectionDistance, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMin, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMax, const std::function< T(const std::size_t &, const SpawnData< T, D > &, const PhysR< T, D > &)> &signedDistanceToParticle, const std::function< T(const std::size_t &)> &getParticleVolume)
 
template<typename T , unsigned D>
std::vector< SpawnData< T, D > > olb::particles::creators::setParticles (const T wantedParticleVolumeFraction, IndicatorF< T, D > &fluidDomain, const T fluidDomainVolume, const T deltaX, const T contactDetectionDistance, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMin, const std::function< PhysR< T, D >(const std::size_t &, const PhysR< T, D > &)> &getMax, const std::function< T(const std::size_t &, const SpawnData< T, D > &, const PhysR< T, D > &)> &signedDistanceToParticle, const std::function< T(const std::size_t &)> &getParticleVolume, const std::function< void(const SpawnData< T, D > &, const std::size_t &)> createParticle)
 
template<typename T , typename PARTICLETYPE >
std::vector< SpawnData< T, PARTICLETYPE::d > > olb::particles::creators::updateParticlePositions (std::vector< SpawnData< T, PARTICLETYPE::d > > spawnData, XParticleSystem< T, PARTICLETYPE > &particleSystem, MPI_Comm particleCreatorComm=MPI_COMM_WORLD)
 Updates particle positions so that they can be easily written to a txt file with the function above.
 
template<typename T , typename PARTICLETYPE >
std::vector< SpawnData< T, PARTICLETYPE::d > > olb::particles::creators::saveUpdatedParticlePositions (const std::string &filename, const std::vector< SpawnData< T, PARTICLETYPE::d > > &originalSpawnData, const std::function< std::string(const std::size_t &)> &evalIdentifier, XParticleSystem< T, PARTICLETYPE > &particleSystem, MPI_Comm particleCreatorComm=MPI_COMM_WORLD)