#include <NormalDerivativeNew.H>
This computes the derivatives of the normal of a sliced implicit function
Public Types | |
typedef IndexTM< int, dim > | IvDim |
typedef IndexTM< Real, dim > | RvDim |
typedef map< IvDim, Real, LexLT< IvDim > > | ScalarPowerMap |
typedef map< IvDim, RvDim, LexLT< IvDim > > | NormalDerivativeMap |
Public Member Functions | |
NormalDerivativeNew () | |
Null constructor. | |
virtual | ~NormalDerivativeNew () |
Destructor. | |
Real | normal (const int &a_direction, const RvDim &a_point, const IFSlicer< dim > *a_implicitFunction) const |
Evaluate the normal of a BaseIF subclass. | |
NormalDerivativeMap | calculateAll (const int &a_maxP, const RvDim &a_point, const IFSlicer< dim > *a_implicitFunction) |
Evaluate all derivatives of the normal of an IFSlicer class. | |
Protected Member Functions | |
void | calculatePhiDerivs (ScalarPowerMap &a_phiDerivs, const RvDim &a_point, const IFSlicer< dim > *a_implicitFunction, const int &a_maxPartial) |
void | addLDeriv (ScalarPowerMap &a_lDerivs, ScalarPowerMap &a_phiDerivs, NormalDerivativeMap &a_nDerivs, const IvDim &a_deriv) |
void | addNDeriv (NormalDerivativeMap &a_nDerivs, ScalarPowerMap &a_phiDerivs, ScalarPowerMap &a_lDerivs, const IvDim &a_deriv) |
Static Protected Member Functions | |
static int | nChoosek (const IvDim &a_n, const IvDim &a_k) |
Private Member Functions | |
NormalDerivativeNew (const NormalDerivativeNew &a_input) | |
void | operator= (const NormalDerivativeNew &a_input) |
typedef IndexTM<int,dim> NormalDerivativeNew< dim >::IvDim |
typedef map<IvDim,Real,LexLT<IvDim> > NormalDerivativeNew< dim >::ScalarPowerMap |
typedef map<IvDim,RvDim,LexLT<IvDim> > NormalDerivativeNew< dim >::NormalDerivativeMap |
NormalDerivativeNew< dim >::NormalDerivativeNew | ( | ) | [inline] |
Null constructor.
Null constructor
NormalDerivativeNew< dim >::~NormalDerivativeNew | ( | ) | [inline, virtual] |
Destructor.
Destructor
NormalDerivativeNew< dim >::NormalDerivativeNew | ( | const NormalDerivativeNew< dim > & | a_input | ) | [inline, private] |
References MayDay::Abort().
NormalDerivativeMap NormalDerivativeNew< dim >::calculateAll | ( | const int & | a_maxP, | |
const RvDim & | a_point, | |||
const IFSlicer< dim > * | a_implicitFunction | |||
) | [inline] |
Evaluate all derivatives of the normal of an IFSlicer class.
Evaluate all derivatives of the normal, a_maxP specifies the max sum of derivatives to take in any coordinate direction, a_point is the point in space to evaluate the derivatives, and a_ifSlicer is a sliced function whose gradient is the normal.
References NormalDerivativeNew< dim >::addLDeriv(), NormalDerivativeNew< dim >::addNDeriv(), BoxIterator::begin(), NormalDerivativeNew< dim >::calculatePhiDerivs(), dim, BoxIterator::ok(), IndexTM< T, N >::sum(), IntVect::Unit, IndexTM< T, N >::Zero, and IntVect::Zero.
Referenced by IFData< dim >::setNormalDerivatives().
void NormalDerivativeNew< dim >::calculatePhiDerivs | ( | ScalarPowerMap & | a_phiDerivs, | |
const RvDim & | a_point, | |||
const IFSlicer< dim > * | a_implicitFunction, | |||
const int & | a_maxPartial | |||
) | [inline, protected] |
References BoxIterator::begin(), dim, BoxIterator::ok(), IntVect::Unit, IFSlicer< dim >::value(), and IntVect::Zero.
Referenced by NormalDerivativeNew< dim >::calculateAll().
void NormalDerivativeNew< dim >::addLDeriv | ( | ScalarPowerMap & | a_lDerivs, | |
ScalarPowerMap & | a_phiDerivs, | |||
NormalDerivativeMap & | a_nDerivs, | |||
const IvDim & | a_deriv | |||
) | [inline, protected] |
References dim, NormalDerivativeNew< dim >::nChoosek(), and IndexTM< T, N >::Zero.
Referenced by NormalDerivativeNew< dim >::calculateAll().
void NormalDerivativeNew< dim >::addNDeriv | ( | NormalDerivativeMap & | a_nDerivs, | |
ScalarPowerMap & | a_phiDerivs, | |||
ScalarPowerMap & | a_lDerivs, | |||
const IvDim & | a_deriv | |||
) | [inline, protected] |
References dim, NormalDerivativeNew< dim >::nChoosek(), and IndexTM< T, N >::Zero.
Referenced by NormalDerivativeNew< dim >::calculateAll().
static int NormalDerivativeNew< dim >::nChoosek | ( | const IvDim & | a_n, | |
const IvDim & | a_k | |||
) | [inline, static, protected] |
References CH_assert, dim, and IndexTM< T, N >::Zero.
Referenced by NormalDerivativeNew< dim >::addLDeriv(), and NormalDerivativeNew< dim >::addNDeriv().
void NormalDerivativeNew< dim >::operator= | ( | const NormalDerivativeNew< dim > & | a_input | ) | [inline, private] |
References MayDay::Abort().