Sundance::UserDefOpCommonEvaluator Class Reference

Inheritance diagram for Sundance::UserDefOpCommonEvaluator:

Sundance::ObjectWithClassVerbosity< Evaluator > Playa::ObjectWithVerbosity

List of all members.

Public Member Functions

 UserDefOpCommonEvaluator (const UserDefFunctor *op, const UserDefOpElement *expr, const EvalContext &context)
virtual ~UserDefOpCommonEvaluator ()
void evalAllComponents (const EvalManager &mgr, const Array< RCP< Array< double > > > &constArgDerivVals, const Array< RCP< Array< RCP< EvalVector > > > > &vArgDerivVals) const
const Array< double > & constArgDerivCache (int elemIndex) const
const Array< RCP< EvalVector > > & varArgDerivCache (int elemIndex) const
bool cacheIsValid () const
void markCacheAsValid () const
void markCacheAsInvalid () const
int maxDiffOrder () const
void updateMaxOrder (int maxOrder) const

Protected Member Functions

const UserDefFunctorfunctor () const

Private Attributes

int maxOrder_
Array< int > argValueIndex_
Array< int > argValueIsConstant_
Array< RCP< Array< double > > > constArgDerivCache_
Array< Array< RCP< EvalVector > > > varArgDerivCache_
bool cacheIsValid_
const UserDefFunctorfunctor_


Detailed Description

UserDefOpCommonEvaluator provides a single evaluation point for all components of a vector-valued functor.

Definition at line 52 of file SundanceUserDefOpCommonEvaluator.hpp.


Constructor & Destructor Documentation

UserDefOpCommonEvaluator::UserDefOpCommonEvaluator ( const UserDefFunctor op,
const UserDefOpElement expr,
const EvalContext context 
)

virtual Sundance::UserDefOpCommonEvaluator::~UserDefOpCommonEvaluator (  )  [inline, virtual]

Definition at line 61 of file SundanceUserDefOpCommonEvaluator.hpp.


Member Function Documentation

bool Sundance::UserDefOpCommonEvaluator::cacheIsValid (  )  const [inline]

Indicate whether the cached argument derivative values are valid

Definition at line 81 of file SundanceUserDefOpCommonEvaluator.hpp.

References cacheIsValid_.

const Array<double>& Sundance::UserDefOpCommonEvaluator::constArgDerivCache ( int  elemIndex  )  const [inline]

Get the cached constant-valued argument derivative values for the specified vector component

Definition at line 72 of file SundanceUserDefOpCommonEvaluator.hpp.

References constArgDerivCache_.

void UserDefOpCommonEvaluator::evalAllComponents ( const EvalManager mgr,
const Array< RCP< Array< double > > > &  constArgDerivVals,
const Array< RCP< Array< RCP< EvalVector > > > > &  vArgDerivVals 
) const

Evaluate all vector components at the specified argument values.

Definition at line 99 of file SundanceUserDefOpCommonEvaluator.cpp.

References Sundance::EvalManager::popVector(), SUNDANCE_MSG2, SUNDANCE_MSG3, and Sundance::EvalManager::verb().

const UserDefFunctor* Sundance::UserDefOpCommonEvaluator::functor (  )  const [inline, protected]

Access the functor that implements this operator

Definition at line 99 of file SundanceUserDefOpCommonEvaluator.hpp.

References functor_.

void Sundance::UserDefOpCommonEvaluator::markCacheAsInvalid (  )  const [inline]

Mark the cache as invalid

Definition at line 87 of file SundanceUserDefOpCommonEvaluator.hpp.

References cacheIsValid_.

Referenced by Sundance::UserDefOpEvaluator::resetNumCalls().

void Sundance::UserDefOpCommonEvaluator::markCacheAsValid (  )  const [inline]

Mark the cache as valid.

Definition at line 84 of file SundanceUserDefOpCommonEvaluator.hpp.

References cacheIsValid_.

int Sundance::UserDefOpCommonEvaluator::maxDiffOrder (  )  const [inline]

Definition at line 90 of file SundanceUserDefOpCommonEvaluator.hpp.

References maxOrder_.

void Sundance::UserDefOpCommonEvaluator::updateMaxOrder ( int  maxOrder  )  const [inline]

Definition at line 93 of file SundanceUserDefOpCommonEvaluator.hpp.

References maxOrder_.

const Array<RCP<EvalVector> >& Sundance::UserDefOpCommonEvaluator::varArgDerivCache ( int  elemIndex  )  const [inline]

Get the cached vector-valued argument derivative values for the specified vector component

Definition at line 77 of file SundanceUserDefOpCommonEvaluator.hpp.

References varArgDerivCache_.


Member Data Documentation

Definition at line 103 of file SundanceUserDefOpCommonEvaluator.hpp.

Definition at line 104 of file SundanceUserDefOpCommonEvaluator.hpp.

Array<RCP<Array<double> > > Sundance::UserDefOpCommonEvaluator::constArgDerivCache_ [mutable, private]

Definition at line 105 of file SundanceUserDefOpCommonEvaluator.hpp.

Referenced by constArgDerivCache().

Definition at line 108 of file SundanceUserDefOpCommonEvaluator.hpp.

Referenced by functor().

Definition at line 102 of file SundanceUserDefOpCommonEvaluator.hpp.

Referenced by maxDiffOrder(), and updateMaxOrder().

Array<Array<RCP<EvalVector> > > Sundance::UserDefOpCommonEvaluator::varArgDerivCache_ [mutable, private]

Definition at line 106 of file SundanceUserDefOpCommonEvaluator.hpp.

Referenced by varArgDerivCache().

Site Contact