Peano
Loading...
Searching...
No Matches
particles.h File Reference
Include dependency graph for particles.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  toolbox
 
namespace  toolbox::particles
 

Functions

template<typename Iterator >
Iterator toolbox::particles::particleIsDuplicate (const typename Iterator::value_type &particle, Iterator begin, const Iterator &end)
 Check if there's already a particle at p's position in the set.
 
template<typename Particle >
bool toolbox::particles::particleWillStayWithinComputationalDomain (const Particle &particle, const tarch::la::Vector< Dimensions, double > &domainOffset, const tarch::la::Vector< Dimensions, double > &domainWidth)
 Return true if and only if.
 
template<typename Particle , typename ParticleSet >
void toolbox::particles::insertParticlesIntoCell (const peano4::datamanagement::CellMarker &marker, const std::vector< Particle * > &newParticles, peano4::datamanagement::VertexEnumerator< ParticleSet > &fineGridVertices, int spacetreeId)
 Insert particle into a cell.
 
template<typename Particle , typename ParticleSet >
void toolbox::particles::insertParticleIntoCell (const peano4::datamanagement::CellMarker &marker, Particle *newParticles, peano4::datamanagement::VertexEnumerator< ParticleSet > &fineGridVertices, int spacetreeId)
 Insert particle into cell.
 
void toolbox::particles::updateContainedInAdjacentCellProperty (const peano4::datamanagement::CellMarker &marker, const std::bitset< Dimensions > &assignedVertex, auto &particle)
 Update helper flag per particle for cell.
 
void toolbox::particles::updateContainedInAdjacentCellProperty (const peano4::datamanagement::VertexMarker &marker, auto &particle)
 We are.
 
void toolbox::particles::updateContainedInAdjacentCellProperty (const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > &h, auto &particle)
 Update internal marker of particle.
 
bool toolbox::particles::particleAssignedToVertexWillBeLocal (const tarch::la::Vector< Dimensions, double > &x, const peano4::datamanagement::VertexMarker &marker)
 
tarch::la::Vector< Dimensions, doubletoolbox::particles::mirrorParticleAlongPeriodicDomains (const tarch::la::Vector< Dimensions, double > &x, const peano4::datamanagement::VertexMarker &marker, const tarch::la::Vector< Dimensions, double > domainOffset, const tarch::la::Vector< Dimensions, double > domainSize, const std::bitset< Dimensions > periodicBC)
 Mirror a particle along the periodic domain boundaries.
 
tarch::la::Vector< Dimensions, doubletoolbox::particles::applyPeriodicBoundaryConditions (const tarch::la::Vector< Dimensions, double > &x, const tarch::la::Vector< Dimensions, double > domainOffset, const tarch::la::Vector< Dimensions, double > domainSize, const std::bitset< Dimensions > periodicBC)
 Applies the periodic boundary condition on particle coordinates x.
 

Variables

constexpr double toolbox::particles::SpatialDuplicateTolerance = 1e-6
 Default tolerance to decide when two particles are the same.