ESyS-Particle  2.3.4
esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec > Class Template Reference

#include <IntersectionVolCalculator.h>

Inheritance diagram for esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >:
Collaboration diagram for esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >:

Classes

class  Vertex
 
class  VertexBox
 
class  VolumeSphere
 

Public Types

typedef TmplVec Vec
 
typedef DimBasicSphere< tmplDim, VecBasicSphere
 
typedef DimBasicBox< tmplDim, VecBasicBox
 
typedef DimPlane< tmplDim, VecPlane
 

Public Member Functions

 IntersectionVolCalculator (const BasicBox &box)
 
const VolumeSpheregetSphere () const
 
void setSphere (const BasicSphere &sphere)
 
const BasicBoxgetBox () const
 
const VertexBoxgetVertexBox () const
 
double getInsidePointVolume (const Vec &pt) const
 
double getTwoPlaneVolume (const Vec &pt, const int orientDim) const
 
double getOutsidePointVolume (const Vec &pt) const
 
double getVolume (const Vertex &vtx)
 
double getVertexVolume (const BasicSphere &sphere)
 
bool sphereContainsBox (const BasicSphere &sphere) const
 
double getVolume (const BasicSphere &sphere)
 

Static Public Member Functions

static Vec getNormal (int dim)
 
static Vec getNegNormal (int dim)
 
static Vec componentMin (const Vec &p1, const Vec &p2)
 
static Vec componentMax (const Vec &p1, const Vec &p2)
 

Private Attributes

VolumeSphere m_sphere
 
VertexBox m_box
 

Member Typedef Documentation

◆ BasicBox

template<int tmplDim, typename TmplVec >
typedef DimBasicBox<tmplDim,Vec> esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::BasicBox

◆ BasicSphere

template<int tmplDim, typename TmplVec >
typedef DimBasicSphere<tmplDim,Vec> esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::BasicSphere

◆ Plane

template<int tmplDim, typename TmplVec >
typedef DimPlane<tmplDim,Vec> esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::Plane

◆ Vec

template<int tmplDim, typename TmplVec >
typedef TmplVec esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::Vec

Constructor & Destructor Documentation

◆ IntersectionVolCalculator()

template<int tmplDim, typename TmplVec >
esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::IntersectionVolCalculator ( const BasicBox box)

Member Function Documentation

◆ componentMax()

template<int tmplDim, typename TmplVec >
IntersectionVolCalculator< tmplDim, TmplVec >::Vec esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::componentMax ( const Vec p1,
const Vec p2 
)
static

◆ componentMin()

template<int tmplDim, typename TmplVec >
IntersectionVolCalculator< tmplDim, TmplVec >::Vec esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::componentMin ( const Vec p1,
const Vec p2 
)
static

◆ getBox()

template<int tmplDim, typename TmplVec >
const IntersectionVolCalculator< tmplDim, TmplVec >::BasicBox & esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getBox

◆ getInsidePointVolume()

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getInsidePointVolume ( const Vec pt) const

◆ getNegNormal()

template<int tmplDim, typename TmplVec >
IntersectionVolCalculator< tmplDim, TmplVec >::Vec esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getNegNormal ( int  dim)
static

◆ getNormal()

template<int tmplDim, typename TmplVec >
IntersectionVolCalculator< tmplDim, TmplVec >::Vec esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getNormal ( int  dim)
static

◆ getOutsidePointVolume()

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getOutsidePointVolume ( const Vec pt) const

References esys::lsm::impl::DimBasicBox< tmplDim, TmplVec >::getMaxPt().

Here is the call graph for this function:

◆ getSphere()

template<int tmplDim, typename TmplVec >
const IntersectionVolCalculator< tmplDim, TmplVec >::VolumeSphere & esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getSphere

◆ getTwoPlaneVolume()

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getTwoPlaneVolume ( const Vec pt,
const int  orientDim 
) const

References esys::lsm::impl::DimPlane< tmplDim, TmplVec >::getDistanceTo(), and esys::lsm::impl::square().

Here is the call graph for this function:

◆ getVertexBox()

template<int tmplDim, typename TmplVec >
const IntersectionVolCalculator< tmplDim, TmplVec >::VertexBox & esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getVertexBox

◆ getVertexVolume()

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getVertexVolume ( const BasicSphere sphere)

◆ getVolume() [1/2]

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getVolume ( const BasicSphere sphere)

References esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::getVolume().

Here is the call graph for this function:

◆ getVolume() [2/2]

template<int tmplDim, typename TmplVec >
double esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::getVolume ( const Vertex vtx)

References esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::Vertex::getPoint().

Here is the call graph for this function:

◆ setSphere()

template<int tmplDim, typename TmplVec >
void esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::setSphere ( const BasicSphere sphere)

◆ sphereContainsBox()

template<int tmplDim, typename TmplVec >
bool esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::sphereContainsBox ( const BasicSphere sphere) const

References esys::lsm::impl::DimBasicSphere< tmplDim, TmplVec >::intersectsWith().

Here is the call graph for this function:

Member Data Documentation

◆ m_box

template<int tmplDim, typename TmplVec >
VertexBox esys::lsm::impl::IntersectionVolCalculator< tmplDim, TmplVec >::m_box
private

◆ m_sphere


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