IFData< dim > Class Template Reference

#include <IFData.H>

Collaboration diagram for IFData< dim >:

Collaboration graph
[legend]

List of all members.

template<int dim>
class IFData< dim >


Public Types

typedef IndexTM< int, dimEdgeIndex
typedef map< EdgeIndex, Real,
LexLT< EdgeIndex > > 
EdgeIntersections
typedef IndexTM< int, dimVertex
typedef map< Vertex, int,
LexLT< Vertex > > 
CornerSigns
typedef IndexTM< Real, dimRvect

Public Member Functions

 IFData ()
 IFData (const IFData< dim > &a_info)
 IFData (const BaseIF &a_function, const Rvect &a_dx, const RvgDim &a_globalCellCenter, const Vector< int > &a_normalDir=Vector< int >())
 IFData (const IFData< dim+1 > &a_hInfo, const int &a_idir, const int &a_hilo)
 ~IFData ()
void reduceGradNormal (const Vector< IndexTM< Real, GLOBALDIM > > &a_gradNormal, const IndexTM< Real, GLOBALDIM > &a_normal)
void setNormal ()
void makeCornerSigns ()
void findIntersectionPts ()
bool isConnected (int &a_edgeDir, const Vertex &a_vertex1, const Vertex &a_vertex2)
void makeEdgeKey (const int &a_edgeDir, const Vertex &a_vertex1, const Vertex &a_vertex2)
Real rootFinder (const EdgeIndex &a_thisEdge)
Real midPtRootFinder (const Rvect &a_loPt, const Rvect &a_hiPt) const
Real BrentRootFinder (const RvgDim &a_loPt, const RvgDim &a_hiPt, const int &a_edgeDir) const
void checkIntersection (bool &a_hiOn, bool &a_loOn, const Real &a_pt) const
void remakeCornerSigns ()
void print (ostream &out) const
void dump () const
void operator= (const IFData &a_ifData)
RvgDim relCoord (const Vertex &a_vertex)
void setChangingDirection ()
bool searchNormalDir (const int i) const

Public Attributes

CornerSigns m_cornerSigns
EdgeIntersections m_intersections
BaseIFm_function
Rvect m_dx
RvgDim m_globalCellCenter
Vector< int > m_normalDir
Vector< int > m_changingDir
Rvect m_normal
Vector< IndexTM< Real, dim > > m_gradNormal
bool m_allVerticesIn
bool m_allVerticesOut
bool m_allVerticesOn

Member Typedef Documentation

template<int dim>
typedef IndexTM<int,dim> IFData< dim >::EdgeIndex

template<int dim>
typedef map<EdgeIndex,Real,LexLT<EdgeIndex> > IFData< dim >::EdgeIntersections

template<int dim>
typedef IndexTM<int,dim> IFData< dim >::Vertex

template<int dim>
typedef map<Vertex,int,LexLT<Vertex> > IFData< dim >::CornerSigns

template<int dim>
typedef IndexTM<Real,dim> IFData< dim >::Rvect


Constructor & Destructor Documentation

template<int dim>
IFData< dim >::IFData (  )  [inline]

template<int dim>
IFData< dim >::IFData ( const IFData< dim > &  a_info  )  [inline]

template<int dim>
IFData< dim >::IFData ( const BaseIF a_function,
const Rvect a_dx,
const RvgDim a_globalCellCenter,
const Vector< int > &  a_normalDir = Vector<int>() 
) [inline]

template<int dim>
IFData< dim >::IFData ( const IFData< dim+1 > &  a_hInfo,
const int &  a_idir,
const int &  a_hilo 
) [inline]

template<int dim>
IFData< dim >::~IFData (  )  [inline]


Member Function Documentation

template<int dim>
void IFData< dim >::reduceGradNormal ( const Vector< IndexTM< Real, GLOBALDIM > > &  a_gradNormal,
const IndexTM< Real, GLOBALDIM > &  a_normal 
) [inline]

template<int dim>
void IFData< dim >::setNormal (  )  [inline]

template<int dim>
void IFData< dim >::makeCornerSigns (  )  [inline]

template<int dim>
void IFData< dim >::findIntersectionPts (  )  [inline]

template<int dim>
bool IFData< dim >::isConnected ( int &  a_edgeDir,
const Vertex a_vertex1,
const Vertex a_vertex2 
) [inline]

References dim, and LARGEINTVAL.

Referenced by IFData< dim >::findIntersectionPts().

template<int dim>
void IFData< dim >::makeEdgeKey ( const int &  a_edgeDir,
const Vertex a_vertex1,
const Vertex a_vertex2 
) [inline]

template<int dim>
Real IFData< dim >::rootFinder ( const EdgeIndex a_thisEdge  )  [inline]

template<int dim>
Real IFData< dim >::midPtRootFinder ( const Rvect a_loPt,
const Rvect a_hiPt 
) const [inline]

template<int dim>
Real IFData< dim >::BrentRootFinder ( const RvgDim a_loPt,
const RvgDim a_hiPt,
const int &  a_edgeDir 
) const [inline]

template<int dim>
void IFData< dim >::checkIntersection ( bool &  a_hiOn,
bool &  a_loOn,
const Real a_pt 
) const [inline]

References MACHINEPRECISION.

Referenced by IFData< dim >::makeEdgeKey().

template<int dim>
void IFData< dim >::remakeCornerSigns (  )  [inline]

template<int dim>
void IFData< dim >::print ( ostream &  out  )  const [inline]

template<int dim>
void IFData< dim >::dump (  )  const [inline]

References pout(), and IFData< dim >::print().

template<int dim>
void IFData< dim >::operator= ( const IFData< dim > &  a_ifData  )  [inline]

template<int dim>
IndexTM< Real, GLOBALDIM > IFData< dim >::relCoord ( const Vertex a_vertex  )  [inline]

template<int dim>
void IFData< dim >::setChangingDirection (  )  [inline]

template<int dim>
bool IFData< dim >::searchNormalDir ( const int  i  )  const [inline]


Member Data Documentation

template<int dim>
CornerSigns IFData< dim >::m_cornerSigns

template<int dim>
BaseIF* IFData< dim >::m_function

template<int dim>
Rvect IFData< dim >::m_dx

template<int dim>
RvgDim IFData< dim >::m_globalCellCenter

template<int dim>
Vector<int> IFData< dim >::m_normalDir

template<int dim>
Vector<int> IFData< dim >::m_changingDir

template<int dim>
Rvect IFData< dim >::m_normal

template<int dim>
Vector<IndexTM<Real,dim> > IFData< dim >::m_gradNormal

template<int dim>
bool IFData< dim >::m_allVerticesIn

template<int dim>
bool IFData< dim >::m_allVerticesOut

template<int dim>
bool IFData< dim >::m_allVerticesOn


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

Generated on Tue Apr 14 14:23:37 2009 for Chombo + EB by  doxygen 1.5.5