Chombo + EB + MF  3.2
Public Types | Public Member Functions | Public Attributes | List of all members
IFData< dim > Class Template Reference

#include <IFData.H>

Public Types

typedef IndexTM< int, dimEdgeIndex
 
typedef map< EdgeIndex, RealEdgeIntersections
 
typedef IndexTM< int, dimVertex
 
typedef map< Vertex, int > CornerSigns
 
typedef IndexTM< int, dimIvDim
 
typedef IndexTM< Real, dimRvDim
 
typedef map< IvDim, RvDimNormalDerivatives
 

Public Member Functions

 IFData ()
 
 IFData (const IFData< dim > &a_IFData)
 
 IFData (const BaseIF &a_function, const RvDim &a_dx, const RvDim &a_origin, const int &a_maxOrder)
 
 IFData (IFSlicer< dim > *a_function, const RvDim &a_dx, const RvDim &a_origin, const int &a_maxOrder)
 
 IFData (const IFData< dim+1 > &a_hInfo, const int &a_maxOrder, const int &a_idir, const int &a_hilo)
 
 ~IFData ()
 
void setNormalDerivatives ()
 
void makeCornerSigns ()
 
void findIntersectionPts ()
 
void defineLocalCoords ()
 
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 BrentRootFinder (const RvDim &a_loPt, const RvDim &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 operator= (const IFData &a_ifData)
 
void setChangingDirection ()
 
bool searchNormalDir (const int i) const
 

Public Attributes

CornerSigns m_cornerSigns
 
EdgeIntersections m_intersections
 
IFSlicer< dim > * m_function
 
CoordinateSystem< dimm_globalCoord
 
CoordinateSystem< dimm_cellCenterCoord
 
CoordinateSystem< dimm_parentCoord
 
CoordinateSystem< dimm_localCoord
 
int m_maxOrder
 
NormalDerivatives m_normalDerivatives
 
bool m_badNormal
 
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 > IFData< dim >::EdgeIntersections
template<int dim>
typedef IndexTM<int,dim> IFData< dim >::Vertex
template<int dim>
typedef map<Vertex,int > IFData< dim >::CornerSigns
template<int dim>
typedef IndexTM<int,dim> IFData< dim >::IvDim
template<int dim>
typedef IndexTM<Real,dim> IFData< dim >::RvDim
template<int dim>
typedef map<IvDim,RvDim > IFData< dim >::NormalDerivatives

Constructor & Destructor Documentation

template<int dim>
IFData< dim >::IFData ( )
template<int dim>
IFData< dim >::IFData ( const IFData< dim > &  a_IFData)
template<int dim>
IFData< dim >::IFData ( const BaseIF a_function,
const RvDim a_dx,
const RvDim a_origin,
const int &  a_maxOrder 
)
template<int dim>
IFData< dim >::IFData ( IFSlicer< dim > *  a_function,
const RvDim a_dx,
const RvDim a_origin,
const int &  a_maxOrder 
)
template<int dim>
IFData< dim >::IFData ( const IFData< dim+1 > &  a_hInfo,
const int &  a_maxOrder,
const int &  a_idir,
const int &  a_hilo 
)
template<int dim>
IFData< dim >::~IFData ( )

Member Function Documentation

template<int dim>
void IFData< dim >::setNormalDerivatives ( )
template<int dim>
void IFData< dim >::makeCornerSigns ( )

References CH_TIME, dim, IN, MACHINEPRECISION, ON, and OUT.

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

template<int dim>
void IFData< dim >::findIntersectionPts ( )

References CH_TIME, and LARGEINTVAL.

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

template<int dim>
void IFData< dim >::defineLocalCoords ( )

the stuff below makes convergence tests do weird things but makes for better answers

References CH_TIME, dim, and LocalCoordMoveSwitch::s_turnOffMoveLocalCoords.

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

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

References CH_TIME, dim, and LARGEINTVAL.

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

References MayDay::Abort(), CH_TIME, dim, IN, LARGEINTVAL, ON, and OUT.

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

References CH_TIME, dim, and LARGEREALVAL.

template<int dim>
Real IFData< dim >::BrentRootFinder ( const RvDim a_loPt,
const RvDim a_hiPt,
const int &  a_edgeDir 
) const
template<int dim>
void IFData< dim >::checkIntersection ( bool &  a_hiOn,
bool &  a_loOn,
const Real a_pt 
) const

References MACHINEPRECISION.

template<int dim>
void IFData< dim >::remakeCornerSigns ( )

References IN, ON, and OUT.

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

References dim, and GLOBALDIM.

Referenced by operator<<().

template<int dim>
void IFData< dim >::operator= ( const IFData< dim > &  a_ifData)
template<int dim>
void IFData< dim >::setChangingDirection ( )
template<int dim>
bool IFData< dim >::searchNormalDir ( const int  i) const

Member Data Documentation

template<int dim>
CornerSigns IFData< dim >::m_cornerSigns
template<int dim>
EdgeIntersections IFData< dim >::m_intersections
template<int dim>
IFSlicer<dim>* IFData< dim >::m_function
template<int dim>
CoordinateSystem<dim> IFData< dim >::m_globalCoord
template<int dim>
CoordinateSystem<dim> IFData< dim >::m_cellCenterCoord
template<int dim>
CoordinateSystem<dim> IFData< dim >::m_parentCoord
template<int dim>
CoordinateSystem<dim> IFData< dim >::m_localCoord
template<int dim>
int IFData< dim >::m_maxOrder
template<int dim>
NormalDerivatives IFData< dim >::m_normalDerivatives
template<int dim>
bool IFData< dim >::m_badNormal
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: