#include <SmoothIntersection.H>
Public Member Functions | |
SmoothIntersection (const Vector< BaseIF * > &a_impFuncs, const Real &a_delta) | |
virtual | ~SmoothIntersection () |
Destructor. | |
virtual Real | value (const RealVect &a_point) const |
virtual Real | derivative (const IntVect &a_deriv, const RealVect &a_point) const |
return the partial derivative at the point | |
virtual BaseIF * | newImplicitFunction () const |
virtual Real | smoothMax (const IntVect &a_deriv, const RealVect &a_point, const int &a_closestIF, const int &a_nextClosestIF) const |
max(a,b) = 0.5*(a+b + | a-b |) | |
void | findClosest (int &a_closestIF, int &a_nextClosestIF, int &a_numWithinDelta, const RealVect &a_point) const |
Protected Attributes | |
int | m_numFuncs |
Vector< BaseIF * > | m_impFuncs |
Real | m_delta |
IntVect | m_ivDebug |
Real | m_dxDebug |
RealVect | m_rvDebug |
Private Member Functions | |
SmoothIntersection () | |
SmoothIntersection (const SmoothIntersection &a_inputIF) | |
void | operator= (const SmoothIntersection &a_inputIF) |
SmoothIntersection::SmoothIntersection | ( | const Vector< BaseIF * > & | a_impFuncs, | |
const Real & | a_delta | |||
) |
Constructor specifying any number of implicit functions as inputs.
virtual SmoothIntersection::~SmoothIntersection | ( | ) | [virtual] |
Destructor.
SmoothIntersection::SmoothIntersection | ( | ) | [inline, private] |
References MayDay::Abort().
SmoothIntersection::SmoothIntersection | ( | const SmoothIntersection & | a_inputIF | ) | [inline, private] |
References MayDay::Abort().
Return the value of the function at a_point.
Implements BaseIF.
virtual BaseIF* SmoothIntersection::newImplicitFunction | ( | ) | const [virtual] |
Return a newly allocated derived class. The responsibility for deleting the memory is left to the calling function.
Implements BaseIF.
virtual Real SmoothIntersection::smoothMax | ( | const IntVect & | a_deriv, | |
const RealVect & | a_point, | |||
const int & | a_closestIF, | |||
const int & | a_nextClosestIF | |||
) | const [virtual] |
max(a,b) = 0.5*(a+b + | a-b |)
loops through all the functions
void SmoothIntersection::findClosest | ( | int & | a_closestIF, | |
int & | a_nextClosestIF, | |||
int & | a_numWithinDelta, | |||
const RealVect & | a_point | |||
) | const |
void SmoothIntersection::operator= | ( | const SmoothIntersection & | a_inputIF | ) | [inline, private] |
References MayDay::Abort().
int SmoothIntersection::m_numFuncs [protected] |
Vector<BaseIF*> SmoothIntersection::m_impFuncs [protected] |
Real SmoothIntersection::m_delta [protected] |
IntVect SmoothIntersection::m_ivDebug [protected] |
Real SmoothIntersection::m_dxDebug [protected] |
RealVect SmoothIntersection::m_rvDebug [protected] |