
Public Member Functions | |
| UserDefOpEvaluator (const UserDefOpElement *expr, const RCP< const UserDefOpCommonEvaluator > &commonEval, const EvalContext &context) | |
| virtual | ~UserDefOpEvaluator () |
| virtual void | evalArgDerivs (const EvalManager &mgr, const Array< RCP< Array< double > > > &constArgRes, const Array< RCP< Array< RCP< EvalVector > > > > &vArgResults, Array< double > &constArgDerivs, Array< RCP< EvalVector > > &varArgDerivs) const |
| TEUCHOS_TIMER (evalTimer,"user defined nonlinear op evaluation") | |
| void | resetNumCalls () const |
Protected Member Functions | |
| Array< int > | findRequiredOrders (const ExprWithChildren *expr, const EvalContext &context) |
| const UserDefFunctorElement * | functor () const |
| const UserDefOpCommonEvaluator * | commonEval () const |
| int | myIndex () const |
Private Attributes | |
| Array< int > | argValueIndex_ |
| Array< int > | argValueIsConstant_ |
| const UserDefFunctorElement * | functor_ |
| RCP< const UserDefOpCommonEvaluator > | commonEval_ |
| int | maxOrder_ |
| int | numVarArgDerivs_ |
| int | numConstArgDerivs_ |
| bool | allArgsAreConstant_ |
Definition at line 51 of file SundanceUserDefOpEvaluator.hpp.
| UserDefOpEvaluator::UserDefOpEvaluator | ( | const UserDefOpElement * | expr, | |
| const RCP< const UserDefOpCommonEvaluator > & | commonEval, | |||
| const EvalContext & | context | |||
| ) |
Definition at line 50 of file SundanceUserDefOpEvaluator.cpp.
References Sundance::SparsitySuperset::deriv(), Sundance::UserDefOpElement::getArgDerivIndices(), Sundance::init(), Sundance::ExprWithChildren::numChildren(), Sundance::SparsitySuperset::numDerivs(), Sundance::MultipleDeriv::order(), Sundance::SparsitySuperset::state(), SUNDANCE_VERB_EXTREME, SUNDANCE_VERB_HIGH, SUNDANCE_VERB_LOW, Sundance::ExprBase::toString(), and Sundance::VectorDeriv.
| virtual Sundance::UserDefOpEvaluator::~UserDefOpEvaluator | ( | ) | [inline, virtual] |
Definition at line 60 of file SundanceUserDefOpEvaluator.hpp.
| const UserDefOpCommonEvaluator* Sundance::UserDefOpEvaluator::commonEval | ( | ) | const [inline, protected] |
Definition at line 86 of file SundanceUserDefOpEvaluator.hpp.
References commonEval_.
Referenced by resetNumCalls().
| void UserDefOpEvaluator::evalArgDerivs | ( | const EvalManager & | mgr, | |
| const Array< RCP< Array< double > > > & | constArgRes, | |||
| const Array< RCP< Array< RCP< EvalVector > > > > & | vArgResults, | |||
| Array< double > & | constArgDerivs, | |||
| Array< RCP< EvalVector > > & | varArgDerivs | |||
| ) | const [virtual] |
Implements Sundance::ChainRuleEvaluator.
Definition at line 187 of file SundanceUserDefOpEvaluator.cpp.
| Array< int > UserDefOpEvaluator::findRequiredOrders | ( | const ExprWithChildren * | expr, | |
| const EvalContext & | context | |||
| ) | [protected] |
Definition at line 152 of file SundanceUserDefOpEvaluator.cpp.
References Sundance::Set< Key, Compare >::begin(), Sundance::Set< Key, Compare >::elements(), Sundance::Set< Key, Compare >::end(), Sundance::ExprWithChildren::findQ_W(), Sundance::EvaluatableExpr::findR(), maxOrder_, Sundance::Set< Key, Compare >::put(), and SUNDANCE_VERB_HIGH.
| const UserDefFunctorElement* Sundance::UserDefOpEvaluator::functor | ( | ) | const [inline, protected] |
| int Sundance::UserDefOpEvaluator::myIndex | ( | ) | const [inline, protected] |
Definition at line 89 of file SundanceUserDefOpEvaluator.hpp.
References functor_, and Sundance::UserDefFunctorElement::myIndex().
| void UserDefOpEvaluator::resetNumCalls | ( | ) | const [virtual] |
Reimplemented from Sundance::ChainRuleEvaluator.
Definition at line 143 of file SundanceUserDefOpEvaluator.cpp.
References commonEval(), and Sundance::UserDefOpCommonEvaluator::markCacheAsInvalid().
| Sundance::UserDefOpEvaluator::TEUCHOS_TIMER | ( | evalTimer | , | |
| "user defined nonlinear op evaluation" | ||||
| ) |
bool Sundance::UserDefOpEvaluator::allArgsAreConstant_ [private] |
Definition at line 99 of file SundanceUserDefOpEvaluator.hpp.
Array<int> Sundance::UserDefOpEvaluator::argValueIndex_ [private] |
Definition at line 92 of file SundanceUserDefOpEvaluator.hpp.
Array<int> Sundance::UserDefOpEvaluator::argValueIsConstant_ [private] |
Definition at line 93 of file SundanceUserDefOpEvaluator.hpp.
RCP<const UserDefOpCommonEvaluator> Sundance::UserDefOpEvaluator::commonEval_ [private] |
const UserDefFunctorElement* Sundance::UserDefOpEvaluator::functor_ [private] |
Definition at line 94 of file SundanceUserDefOpEvaluator.hpp.
int Sundance::UserDefOpEvaluator::maxOrder_ [private] |
int Sundance::UserDefOpEvaluator::numConstArgDerivs_ [private] |
Definition at line 98 of file SundanceUserDefOpEvaluator.hpp.
int Sundance::UserDefOpEvaluator::numVarArgDerivs_ [private] |
Definition at line 97 of file SundanceUserDefOpEvaluator.hpp.