Public Member Functions | |
| ProductEvaluator (const ProductExpr *expr, const EvalContext &context) | |
| virtual | ~ProductEvaluator () |
| virtual void | internalEval (const EvalManager &mgr, Array< double > &constantResults, Array< RCP< EvalVector > > &vectorResults) const |
| TEUCHOS_TIMER (evalTimer,"product evaluation") | |
Private Types | |
| enum | ProductParity { VecVec, VecConst, ConstVec } |
Private Attributes | |
| int | maxOrder_ |
| Array< Array< int > > | resultIndex_ |
| Array< Array< int > > | resultIsConstant_ |
| Array< Array< int > > | hasWorkspace_ |
| Array< Array< int > > | workspaceIsLeft_ |
| Array< Array< int > > | workspaceIndex_ |
| Array< Array< int > > | workspaceCoeffIndex_ |
| Array< Array< int > > | workspaceCoeffIsConstant_ |
| Array< Array< Array< Array < int > > > > | ccTerms_ |
| Array< Array< Array< Array < int > > > > | cvTerms_ |
| Array< Array< Array< Array < int > > > > | vcTerms_ |
| Array< Array< Array< Array < int > > > > | vvTerms_ |
| Array< Array< Array< int > > > | startingVectors_ |
| Array< Array< ProductParity > > | startingParities_ |
Definition at line 57 of file SundanceProductEvaluator.hpp.
enum Sundance::ProductEvaluator::ProductParity [private] |
Definition at line 79 of file SundanceProductEvaluator.hpp.
| ProductEvaluator::ProductEvaluator | ( | const ProductExpr * | expr, |
| const EvalContext & | context | ||
| ) |
Definition at line 58 of file SundanceProductEvaluator.cpp.
References Sundance::Evaluator::addConstantIndex(), Sundance::Evaluator::addVectorIndex(), ccTerms_, Sundance::ConstantDeriv, Sundance::Evaluator::constantIndexMap(), ConstVec, cvTerms_, Sundance::EvalContext::evalSetupVerbosity(), hasWorkspace_, Sundance::BinaryEvaluator< ProductExpr >::leftEval(), Sundance::BinaryEvaluator< ProductExpr >::leftSparsity(), Sundance::MultipleDeriv::order(), Playa::Out::os(), Sundance::MultipleDeriv::productRulePermutations(), resultIndex_, resultIsConstant_, Sundance::BinaryEvaluator< ProductExpr >::rightEval(), Sundance::BinaryEvaluator< ProductExpr >::rightSparsity(), Sundance::SubtypeEvaluator< ProductExpr >::sparsity(), startingParities_, startingVectors_, SUNDANCE_MSG1, SUNDANCE_MSG2, SUNDANCE_MSG3, SUNDANCE_MSG4, Sundance::ExprBase::toString(), vcTerms_, VecConst, Sundance::Evaluator::vectorIndexMap(), VecVec, Playa::ObjectWithVerbosity::verb(), vvTerms_, workspaceCoeffIndex_, workspaceCoeffIsConstant_, workspaceIndex_, and workspaceIsLeft_.
| virtual Sundance::ProductEvaluator::~ProductEvaluator | ( | ) | [inline, virtual] |
Definition at line 66 of file SundanceProductEvaluator.hpp.
| void ProductEvaluator::internalEval | ( | const EvalManager & | mgr, |
| Array< double > & | constantResults, | ||
| Array< RCP< EvalVector > > & | vectorResults | ||
| ) | const [virtual] |
Implements Sundance::Evaluator.
Definition at line 433 of file SundanceProductEvaluator.cpp.
References Sundance::EvalVector::add_SV(), Sundance::EvalVector::add_SVV(), Playa::Out::os(), Sundance::EvalManager::popVector(), Sundance::EvalManager::showResults(), SUNDANCE_MSG1, SUNDANCE_MSG4, SUNDANCE_MSG5, and Sundance::EvalManager::verb().
| Sundance::ProductEvaluator::TEUCHOS_TIMER | ( | evalTimer | , |
| "product evaluation" | |||
| ) |
Array<Array<Array<Array<int> > > > Sundance::ProductEvaluator::ccTerms_ [private] |
Definition at line 91 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<Array<Array<int> > > > Sundance::ProductEvaluator::cvTerms_ [private] |
Definition at line 92 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::hasWorkspace_ [private] |
Definition at line 85 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
int Sundance::ProductEvaluator::maxOrder_ [private] |
Definition at line 81 of file SundanceProductEvaluator.hpp.
Array<Array<int> > Sundance::ProductEvaluator::resultIndex_ [private] |
Definition at line 82 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::resultIsConstant_ [private] |
Definition at line 83 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<ProductParity> > Sundance::ProductEvaluator::startingParities_ [private] |
Definition at line 97 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<Array<int> > > Sundance::ProductEvaluator::startingVectors_ [private] |
Definition at line 96 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<Array<Array<int> > > > Sundance::ProductEvaluator::vcTerms_ [private] |
Definition at line 93 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<Array<Array<int> > > > Sundance::ProductEvaluator::vvTerms_ [private] |
Definition at line 94 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::workspaceCoeffIndex_ [private] |
Definition at line 88 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::workspaceCoeffIsConstant_ [private] |
Definition at line 89 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::workspaceIndex_ [private] |
Definition at line 87 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().
Array<Array<int> > Sundance::ProductEvaluator::workspaceIsLeft_ [private] |
Definition at line 86 of file SundanceProductEvaluator.hpp.
Referenced by ProductEvaluator().