Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
ColData< PP > Class Template Reference

Mesh intersection (collision) coordinate data More...

#include <particleiterator.hpp>

Public Member Functions

 ColData (PP x, int dir)
 Constructor for collision at x into direction dir.
 
bool operator< (const ColData &cd) const
 Compare coldata entry times.
 

Static Public Member Functions

static void build_coldata_linear (std::vector< ColData > &coldata, const Mesh &mesh, const PP &x1, const PP &x2)
 Find mesh intersections of linearly interpolated particle trajectory segment.
 
static void build_coldata_poly (std::vector< ColData > &coldata, const Mesh &mesh, const PP &x1, const PP &x2)
 Find mesh intersections of polynomially interpolated particle trajectory segment.
 

Public Attributes

PP _x
 Mesh intersection coordinates.
 
int _dir
 Direction of particle at intersection. i: -1/+1, j: -2/+2, k: -3:/+3.
 

Detailed Description

template<class PP>
class ColData< PP >

Mesh intersection (collision) coordinate data

Contains one coordinate data and the direction of particle for one intersection between particle trajectory and mesh plane. Templated for particle point type (see ParticlePBase).

Templated for particle point type (see ParticlePBase).

Constructor & Destructor Documentation

template<class PP >
ColData< PP >::ColData ( PP  x,
int  dir 
)
inline

Constructor for collision at x into direction dir.

Member Function Documentation

template<class PP >
static void ColData< PP >::build_coldata_linear ( std::vector< ColData< PP > > &  coldata,
const Mesh mesh,
const PP &  x1,
const PP &  x2 
)
inlinestatic

Find mesh intersections of linearly interpolated particle trajectory segment.

Makes a linear interpolation between points x1 and x2 and searches intersection points of this line and mesh. Intersection points are saved to vector coldata in increasing time order.

template<class PP >
static void ColData< PP >::build_coldata_poly ( std::vector< ColData< PP > > &  coldata,
const Mesh mesh,
const PP &  x1,
const PP &  x2 
)
inlinestatic

Find mesh intersections of polynomially interpolated particle trajectory segment.

Makes a polynomial interpolation between points \ə x1 and x2 and searches intersection points of this line and mesh. Intersection points are saved to vector coldata in increasing time order.

template<class PP >
bool ColData< PP >::operator< ( const ColData< PP > &  cd) const
inline

Compare coldata entry times.

Used for sorting coldata entries.

Member Data Documentation

template<class PP >
int ColData< PP >::_dir

Direction of particle at intersection. i: -1/+1, j: -2/+2, k: -3:/+3.

template<class PP >
PP ColData< PP >::_x

Mesh intersection coordinates.


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