Chombo + EB
3.0
|
#include <HelixIF.H>
Public Member Functions | |
HelixIF (const BaseIF &a_impFunc, const Real &a_rate, const bool &a_inside, const bool &a_vertical=true) | |
HelixIF (const HelixIF &a_inputIF) | |
Copy constructor. More... | |
virtual | ~HelixIF () |
Destructor. More... | |
virtual Real | value (const RealVect &a_point) const |
virtual BaseIF * | newImplicitFunction () const |
virtual void | boxLayoutChanged (const DisjointBoxLayout &a_newBoxLayout, const RealVect &a_dx) |
![]() | |
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 bool | fastIntersection (const RealVect &a_low, const RealVect &a_high) const |
virtual GeometryService::InOut | InsideOutside (const Box &a_region, const ProblemDomain &a_domain, const RealVect &a_origin, const Real &a_dx) const |
virtual GeometryService::InOut | InsideOutside (const RealVect &a_low, const RealVect &a_high) const |
virtual Real | value (const IndexTM< Real, GLOBALDIM > &a_point) const |
virtual void | print (ostream &out) const |
Protected Attributes | |
BaseIF * | m_impFunc |
Real | m_rate |
bool | m_inside |
bool | m_vertical |
Real | m_minz |
Real | m_maxz |
Private Member Functions | |
HelixIF () | |
void | operator= (const HelixIF &a_inputIF) |
Additional Inherited Members | |
![]() | |
static void | corners (const Box &a_region, const RealVect &a_origin, const Real &a_dx, RealVect &a_lo, RealVect &a_hi) |
This implicit function takes one implicit function and move it along a helix in 3D. In 2D the implicit function is simply returned.
In 3D, if a_vertical is false, the given function is restricted to the x-y plane (z = 0), and this restricted function is rotated around the z-axis at the specified rate as z changes.
In 3D, if a_vertical is true, the given function is restricted to the x-y plane (z = 0), but this x-y cross section is oriented vertically and swept in a helix at the specified rate.
In 2D, the given function is simply returned.
HelixIF::HelixIF | ( | const BaseIF & | a_impFunc, |
const Real & | a_rate, | ||
const bool & | a_inside, | ||
const bool & | a_vertical = true |
||
) |
Constructor specifying one implicit function to be rotated, the rotation rate, and whether the domain is on the inside (a_inside), i.e. where the function is negative.
HelixIF::HelixIF | ( | const HelixIF & | a_inputIF | ) |
Copy constructor.
|
virtual |
Destructor.
|
inlineprivate |
References MayDay::Abort().
Return the value of the function at a_point.
Implements BaseIF.
|
virtual |
Return a newly allocated derived class. The responsibility for deleting the memory is left to the calling function.
Implements BaseIF.
|
inlinevirtual |
Pass this call onto the IFs contained in this IF class.
Reimplemented from BaseIF.
References BaseIF::boxLayoutChanged(), and m_impFunc.
|
inlineprivate |
References MayDay::Abort().
|
protected |
Referenced by boxLayoutChanged().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |