Chombo + EB + MF  3.2
Classes | Macros | Typedefs | Functions
ParticleDataI.H File Reference
#include "MPI_util.H"
#include "NamespaceHeader.H"
#include "NamespaceFooter.H"
Include dependency graph for ParticleDataI.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  CompCounts< P >
 

Macros

#define _PARTICLEDATAI_H_
 

Typedefs

typedef multimap< IntVect, boxids >::iterator RmIt
 

Functions

template<class P >
void collectValidParticles (List< P > &a_partValid, ParticleData< P > &a_PD, const LevelData< BaseFab< bool > > *a_mask, const RealVect a_meshSpacing, const int a_refRatio, const bool a_flip, const RealVect a_origin)
 
template<class P >
void collectValidParticles (ParticleData< P > &a_PDValid, ParticleData< P > &a_PD, const LevelData< BaseFab< bool > > *a_mask, const RealVect a_meshSpacing, const int a_refRatio, const bool a_flip, const RealVect a_origin)
 overloaded version of the above More...
 
void myswap (pair< const IntVect, boxids > &aa, pair< const IntVect, boxids > &bb)
 
template<class ForwardIterator >
void myrotate (ForwardIterator first, ForwardIterator middle, ForwardIterator last)
 

Macro Definition Documentation

◆ _PARTICLEDATAI_H_

#define _PARTICLEDATAI_H_

Typedef Documentation

◆ RmIt

typedef multimap<IntVect, boxids>::iterator RmIt

Function Documentation

◆ collectValidParticles() [1/2]

template<class P >
void collectValidParticles ( List< P > &  a_partValid,
ParticleData< P > &  a_PD,
const LevelData< BaseFab< bool > > *  a_mask,
const RealVect  a_meshSpacing,
const int  a_refRatio,
const bool  a_flip = false,
const RealVect  a_origin = RealVect(D_DECL6(0.0, 0.0, 0.0, 0.0, 0.0, 0.0)) 
)

Routine for transfering particles between AMR levels. Arguments: a_partValid: the destination to which particles will be sent if they meet the requirements. a_PD: the source from which the particles will be transfered. a_mask: this defines the valid region. If a_flip is false, a particle will be transfered from the source to the dest if it lies in a region of the domain where the mask is true. a_dx: particle position will be converted to integer indices by binning them by this cell spacing. a_refRatio: a_mask will be copied onto a boxlayout that has been refined or coarsened by this argument (refined if positive, coarsened if negative.) This is to allow comparison with mask arrays defined on arbitrary refinement levels a_flip if true, the sign of mask will be treated as reversed (i.e., this becomes a collectInvalidParticles function).

References CH_TIMERS, coarsen(), D_DECL6, ParticleData< P >::getBoxes(), LayoutIterator::ok(), ListIterator< T >::ok(), refine(), and List< T >::transfer().

Referenced by CompIntVect::operator()().

◆ collectValidParticles() [2/2]

template<class P >
void collectValidParticles ( ParticleData< P > &  a_PDValid,
ParticleData< P > &  a_PD,
const LevelData< BaseFab< bool > > *  a_mask,
const RealVect  a_meshSpacing,
const int  a_refRatio,
const bool  a_flip,
const RealVect  a_origin 
)

◆ myswap()

void myswap ( pair< const IntVect, boxids > &  aa,
pair< const IntVect, boxids > &  bb 
)
inline

Referenced by myrotate().

◆ myrotate()

template<class ForwardIterator >
void myrotate ( ForwardIterator  first,
ForwardIterator  middle,
ForwardIterator  last 
)

References myswap().

Referenced by ParticleData< P >::remapOutcast().