Public Member Functions | |
UserDefFunctor (const std::string &name, int domainDim, int rangeDim) | |
virtual | ~UserDefFunctor () |
const std::string & | name (int elemIndex) const |
const std::string & | name () const |
virtual void | evaluationCallback (int nPoints, int maxDiffOrder, const double **in, double **out) const =0 |
virtual void | eval0 (const Array< double > &in, double *outVals) const |
virtual void | eval1 (const Array< double > &in, double *outVals, double *outDerivs) const |
int | domainDim () const |
int | rangeDim () const |
virtual int | maxOrder () const =0 |
void | reset () const |
Private Attributes | |
const std::string | name_ |
Array< string > | elemNames_ |
const int | domainDim_ |
const int | rangeDim_ |
Definition at line 58 of file SundanceUserDefFunctor.hpp.
UserDefFunctor::UserDefFunctor | ( | const std::string & | name, | |
int | domainDim, | |||
int | rangeDim | |||
) |
ctor
Definition at line 44 of file SundanceUserDefFunctor.cpp.
References domainDim_, elemNames_, name_, rangeDim_, and Sundance::toString().
virtual Sundance::UserDefFunctor::~UserDefFunctor | ( | ) | [inline, virtual] |
Definition at line 65 of file SundanceUserDefFunctor.hpp.
int Sundance::UserDefFunctor::domainDim | ( | ) | const [inline] |
Definition at line 96 of file SundanceUserDefFunctor.hpp.
References domainDim_.
Referenced by Sundance::PointwiseUserDefFunctor2::eval0(), Sundance::PointwiseUserDefFunctor1::eval0(), Sundance::PointwiseUserDefFunctor2::eval1(), Sundance::PointwiseUserDefFunctor2::evaluationCallback(), Sundance::PointwiseUserDefFunctor1::evaluationCallback(), Sundance::PointwiseUserDefFunctor0::evaluationCallback(), and Sundance::UserDefOpCommonEvaluator::UserDefOpCommonEvaluator().
void UserDefFunctor::eval0 | ( | const Array< double > & | in, | |
double * | outVals | |||
) | const [virtual] |
void UserDefFunctor::eval1 | ( | const Array< double > & | in, | |
double * | outVals, | |||
double * | outDerivs | |||
) | const [virtual] |
Evaluate the expression and its derivative. The values should be put into the outVals array. The derivatives should be put into the outDerivs array, ordered with the domain index running fastest. That is,
Definition at line 80 of file SundanceUserDefFunctor.cpp.
References name_.
virtual void Sundance::UserDefFunctor::evaluationCallback | ( | int | nPoints, | |
int | maxDiffOrder, | |||
const double ** | in, | |||
double ** | out | |||
) | const [pure virtual] |
virtual int Sundance::UserDefFunctor::maxOrder | ( | ) | const [pure virtual] |
const std::string& Sundance::UserDefFunctor::name | ( | ) | const [inline] |
Definition at line 71 of file SundanceUserDefFunctor.hpp.
References name_.
Referenced by Sundance::PointwiseUserDefFunctor2::evaluationCallback(), Sundance::PointwiseUserDefFunctor1::evaluationCallback(), and Sundance::PointwiseUserDefFunctor0::evaluationCallback().
const std::string& Sundance::UserDefFunctor::name | ( | int | elemIndex | ) | const [inline] |
int Sundance::UserDefFunctor::rangeDim | ( | ) | const [inline] |
Definition at line 99 of file SundanceUserDefFunctor.hpp.
References rangeDim_.
Referenced by Sundance::PointwiseUserDefFunctor2::eval0(), Sundance::PointwiseUserDefFunctor1::eval0(), Sundance::PointwiseUserDefFunctor2::eval1(), Sundance::PointwiseUserDefFunctor2::evaluationCallback(), Sundance::PointwiseUserDefFunctor1::evaluationCallback(), and Sundance::PointwiseUserDefFunctor0::evaluationCallback().
void Sundance::UserDefFunctor::reset | ( | ) | const |
const int Sundance::UserDefFunctor::domainDim_ [private] |
Definition at line 110 of file SundanceUserDefFunctor.hpp.
Referenced by domainDim(), and UserDefFunctor().
Array<string> Sundance::UserDefFunctor::elemNames_ [private] |
Definition at line 109 of file SundanceUserDefFunctor.hpp.
Referenced by name(), and UserDefFunctor().
const std::string Sundance::UserDefFunctor::name_ [private] |
Definition at line 108 of file SundanceUserDefFunctor.hpp.
Referenced by eval0(), eval1(), name(), and UserDefFunctor().
const int Sundance::UserDefFunctor::rangeDim_ [private] |
Definition at line 111 of file SundanceUserDefFunctor.hpp.
Referenced by rangeDim(), and UserDefFunctor().