Chombo + EB
3.0
|
#include <TransformIF.H>
Public Member Functions | |
TransformIF (const BaseIF &a_impFunc) | |
TransformIF (const TransformIF &a_inputIF) | |
Copy constructor. More... | |
virtual | ~TransformIF () |
Destructor. More... | |
void | translate (const RealVect &a_trans) |
void | scale (const Real &a_scale) |
void | scale (const RealVect &a_scale) |
void | rotate (const Real &a_angle, const RealVect &a_point=RealVect::Zero, const RealVect &a_axis=BASISREALV(0)) |
void | rotate (const RealVect &a_axis1, const RealVect &a_axis2, const RealVect &a_point=RealVect::Zero) |
virtual Real | value (const RealVect &a_point) const |
Real | value (const IndexTM< Real, GLOBALDIM > &a_point) const |
virtual BaseIF * | newImplicitFunction () const |
virtual bool | fastIntersection (const RealVect &a_lo, const RealVect &a_hi) const |
virtual GeometryService::InOut | InsideOutside (const RealVect &a_lo, const RealVect &a_hi) const |
virtual void | boxLayoutChanged (const DisjointBoxLayout &a_newBoxLayout, const RealVect &a_dx) |
Public Member Functions inherited from BaseIF | |
BaseIF () | |
Default constructor. More... | |
virtual | ~BaseIF () |
Default destructor. More... | |
virtual Real | value (const IndexTM< int, GLOBALDIM > &a_partialDerivative, const IndexTM< Real, GLOBALDIM > &a_point) const |
virtual bool | fastIntersection (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual GeometryService::InOut | InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual void | print (ostream &out) const |
Protected Member Functions | |
TransformIF (const BaseIF &a_impFunc, const Real a_transform[SpaceDim+1][SpaceDim+1], const Real a_invTransform[SpaceDim+1][SpaceDim+1]) | |
void | vectorMultiply (RealVect &m_outPoint, const Real m_intrans[SpaceDim+1][SpaceDim+1], const RealVect &m_inPoint) const |
void | vectorMultiply (IndexTM< Real, GLOBALDIM > &m_outPoint, const Real m_intrans[SpaceDim+1][SpaceDim+1], const IndexTM< Real, GLOBALDIM > &m_inPoint) const |
void | matrixIdentity (Real m_trans[SpaceDim+1][SpaceDim+1]) const |
void | matrixMultiply (Real m_outTrans[SpaceDim+1][SpaceDim+1], const Real m_intrans1[SpaceDim+1][SpaceDim+1], const Real m_intrans2[SpaceDim+1][SpaceDim+1]) const |
void | matrixTranslate (Real m_trans[SpaceDim+1][SpaceDim+1], const RealVect &m_translate) const |
void | matrixScale (Real m_trans[SpaceDim+1][SpaceDim+1], const RealVect &m_scale) const |
Protected Attributes | |
Real | m_transform [SpaceDim+1][SpaceDim+1] |
Real | m_invTransform [SpaceDim+1][SpaceDim+1] |
BaseIF * | m_impFunc |
Private Member Functions | |
TransformIF () | |
void | operator= (const TransformIF &a_inputIF) |
Additional Inherited Members | |
Static Public Member Functions inherited from BaseIF | |
static void | corners (const Box &a_region, const RealVect &a_origin, const Real &a_dx, RealVect &a_lo, RealVect &a_hi) |
This implicit function is a tranformed version of the implicit function passed in the constructor. Various transformations (in 2D and 3D) are allowed including translating, scaling, and rotations.
TransformIF::TransformIF | ( | const BaseIF & | a_impFunc | ) |
Constructor specifying the implicit function
TransformIF::TransformIF | ( | const TransformIF & | a_inputIF | ) |
Copy constructor.
|
virtual |
Destructor.
|
protected |
Constructor for the factory
|
inlineprivate |
References MayDay::Abort().
Referenced by boxLayoutChanged().
void TransformIF::translate | ( | const RealVect & | a_trans | ) |
Translate by a_trans
void TransformIF::scale | ( | const Real & | a_scale | ) |
Scale (uniformly) by a_scale
void TransformIF::scale | ( | const RealVect & | a_scale | ) |
Scale in each direction (idir) by a_scale[idir]
void TransformIF::rotate | ( | const Real & | a_angle, |
const RealVect & | a_point = RealVect::Zero , |
||
const RealVect & | a_axis = BASISREALV(0) |
||
) |
In 2D - rotate by a_angle about a_point, a_axis is ignored. In 3D - rotate by a_angle about the line in space specified by a_point and and a_axis.
void TransformIF::rotate | ( | const RealVect & | a_axis1, |
const RealVect & | a_axis2, | ||
const RealVect & | a_point = RealVect::Zero |
||
) |
About a_point, Rotate vector a_axis1 to align with vector a_axis2
Return the value of the function at a_point.
Implements BaseIF.
Return the value of the function at a_point (of type INdexTM).
Reimplemented from BaseIF.
|
virtual |
Return a newly allocated derived class. The responsibility for deleting the memory is left to the calling function.
Implements BaseIF.
|
virtual |
Reimplemented from BaseIF.
|
virtual |
Reimplemented from BaseIF.
|
inlinevirtual |
Pass this call onto the IFs contained in this IF class.
Reimplemented from BaseIF.
References BaseIF::boxLayoutChanged(), m_impFunc, SpaceDim, and TransformIF().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
inlineprivate |
References MayDay::Abort().
|
protected |
Referenced by boxLayoutChanged().