Public Member Functions | |
| EvalContext () | |
| EvalContext (const RegionQuadCombo &rqc, const Set< int > &needsDiffOrder, int contextID) | |
| void | setSetupVerbosity (int v) const |
| int | setupVerbosity () const |
| void | setEvalSetupVerbosity (int v) const |
| int | evalSetupVerbosity () const |
| bool | operator< (const EvalContext &other) const |
| std::string | toString () const |
| std::string | brief () const |
| int | topLevelDiffOrder () const |
| bool | needsDerivOrder (int order) const |
Static Public Member Functions | |
| static int | nextID () |
Private Attributes | |
| int | setupVerbosity_ |
| int | evalSetupVerbosity_ |
| int | maxDiffOrder_ |
| RCP< OrderedTriple< Set< int > , int, RegionQuadCombo > > | data_ |
Related Functions | |
(Note that these are not member functions.) | |
| ostream & | operator<< (std::ostream &os, const Sundance::EvalContext &c) |
| std::string | toString (const Sundance::EvalContext &h) |
Different contexts might require the same expression to be evaluated to different orders of functional differentiation; for example, in setting up a linear system, second-order derivatives are required, but in evaluating a functional only zeroth derivs are required. An EvaluationContext is used as a key to associate an evaluator and its corresponding set of functional derivatives with a context.
They key consists of three parts: first, an integer identifier indicating the caller, e.g., an assembler or functional evaluator, second, a set indicating which orders of differentiation are required by the top level caller, and third, a region-quadrature combination.
Definition at line 75 of file SundanceEvalContext.hpp.
| Sundance::EvalContext::EvalContext | ( | ) | [inline] |
Empty ctor
Definition at line 79 of file SundanceEvalContext.hpp.
| Sundance::EvalContext::EvalContext | ( | const RegionQuadCombo & | rqc, |
| const Set< int > & | needsDiffOrder, | ||
| int | contextID | ||
| ) | [inline] |
Construct with a region-quadrature combination and an identifier of the construcing context.
Definition at line 85 of file SundanceEvalContext.hpp.
| std::string Sundance::EvalContext::brief | ( | ) | const [inline] |
Write a short description to a std::string
Definition at line 122 of file SundanceEvalContext.hpp.
References data_, toString(), and Teuchos::toString().
Referenced by Sundance::Assembler::init().
| int Sundance::EvalContext::evalSetupVerbosity | ( | ) | const [inline] |
Get the verbosity level to be used during setup of evaluators for expressions in this context
Definition at line 107 of file SundanceEvalContext.hpp.
References evalSetupVerbosity_.
Referenced by Sundance::ProductEvaluator::ProductEvaluator(), Sundance::ExprWithChildren::setupEval(), Sundance::EvaluatableExpr::setupEval(), Sundance::SumEvaluator::SumEvaluator(), Sundance::SymbolicFuncElementEvaluator::SymbolicFuncElementEvaluator(), and Sundance::UnaryEvaluator< DiffOp >::UnaryEvaluator().
| bool Sundance::EvalContext::needsDerivOrder | ( | int | order | ) | const [inline] |
Indicate whether or not a given order of differentiation is needed in this context
Definition at line 134 of file SundanceEvalContext.hpp.
References data_.
Referenced by Sundance::SymbPreprocessor::setupVariations().
| static int Sundance::EvalContext::nextID | ( | ) | [inline, static] |
Return a unique context ID
Definition at line 138 of file SundanceEvalContext.hpp.
Referenced by Sundance::EquationSet::init().
| bool Sundance::EvalContext::operator< | ( | const EvalContext & | other | ) | const [inline] |
Comparison operator for use in maps
Definition at line 110 of file SundanceEvalContext.hpp.
References data_.
| void Sundance::EvalContext::setEvalSetupVerbosity | ( | int | v | ) | const [inline] |
Set the verbosity level to be used during setup of evaluators for expressions in this context
Definition at line 103 of file SundanceEvalContext.hpp.
References evalSetupVerbosity_.
Referenced by Sundance::EquationSet::init().
| void Sundance::EvalContext::setSetupVerbosity | ( | int | v | ) | const [inline] |
Set the verbosity level to be used during preprocessing of expressions in this context
Definition at line 95 of file SundanceEvalContext.hpp.
References setupVerbosity_.
Referenced by Sundance::EquationSet::init(), and Sundance::SymbPreprocessor::setupVariations().
| int Sundance::EvalContext::setupVerbosity | ( | ) | const [inline] |
Return the verbosity level to be used during preprocessing of expressions in this context
Definition at line 99 of file SundanceEvalContext.hpp.
References setupVerbosity_.
Referenced by Sundance::CellDiameterExprEvaluator::CellDiameterExprEvaluator(), Sundance::CellVectorEvaluator::CellVectorEvaluator(), Sundance::ChainRuleEvaluator::ChainRuleEvaluator(), Sundance::EvaluatableExpr::computeInputR(), Sundance::ConstantEvaluator::ConstantEvaluator(), Sundance::CoordExprEvaluator::CoordExprEvaluator(), Sundance::CurveNormEvaluator::CurveNormEvaluator(), Sundance::DerivOfSymbFuncEvaluator::DerivOfSymbFuncEvaluator(), Sundance::DiffOpEvaluator::DiffOpEvaluator(), Sundance::ExprWithChildren::displayNonzeros(), Sundance::EvaluatableExpr::findDerivSubset(), Sundance::ExprWithChildren::findQ_W(), Sundance::ChainRuleEvaluator::init(), Sundance::ExplicitFunctionalDerivativeElement::internalDetermineR(), Sundance::DiscreteFuncElement::internalDetermineR(), Sundance::SymbolicFuncElement::internalDetermineR(), Sundance::DiffOp::internalDetermineR(), Sundance::ExprWithChildren::internalDetermineR(), Sundance::EvaluatableExpr::internalDetermineR(), Sundance::ZeroExpr::internalFindC(), Sundance::ConstantExpr::internalFindC(), Sundance::ExplicitFunctionalDerivativeElement::internalFindC(), Sundance::UnknownParameterElement::internalFindC(), Sundance::ExprWithChildren::internalFindC(), Sundance::DiscreteFuncElement::internalFindC(), Sundance::DiffOp::internalFindC(), Sundance::SymbolicFuncElement::internalFindC(), Sundance::ProductExpr::internalFindQ_V(), Sundance::ExprWithChildren::internalFindQ_V(), Sundance::ProductExpr::internalFindQ_W(), Sundance::UnaryMinus::internalFindQ_W(), Sundance::ExprWithChildren::internalFindQ_W(), Sundance::ExplicitFunctionalDerivativeElement::internalFindV(), Sundance::ConstantExpr::internalFindV(), Sundance::UnknownParameterElement::internalFindV(), Sundance::ExprWithChildren::internalFindV(), Sundance::DiscreteFuncElement::internalFindV(), Sundance::DiffOp::internalFindV(), Sundance::SymbolicFuncElement::internalFindV(), Sundance::ZeroExpr::internalFindW(), Sundance::ConstantExpr::internalFindW(), Sundance::ExplicitFunctionalDerivativeElement::internalFindW(), Sundance::UnknownParameterElement::internalFindW(), Sundance::ExprWithChildren::internalFindW(), Sundance::DiscreteFuncElement::internalFindW(), Sundance::DiffOp::internalFindW(), Sundance::SymbolicFuncElement::internalFindW(), Sundance::DiffOp::requestMultiIndexAtEvalPoint(), Sundance::SymbPreprocessor::setupVariations(), and Sundance::EvaluatableExpr::sparsitySuperset().
| int Sundance::EvalContext::topLevelDiffOrder | ( | ) | const [inline] |
Definition at line 130 of file SundanceEvalContext.hpp.
References maxDiffOrder_.
Referenced by Sundance::ChainRuleEvaluator::internalEval(), and Sundance::SymbPreprocessor::setupVariations().
| std::string Sundance::EvalContext::toString | ( | ) | const [inline] |
Write to a std::string
Definition at line 114 of file SundanceEvalContext.hpp.
References data_, and Teuchos::toString().
Referenced by brief(), operator<<(), and toString().
| ostream & operator<< | ( | std::ostream & | os, |
| const Sundance::EvalContext & | c | ||
| ) | [related] |
Definition at line 152 of file SundanceEvalContext.hpp.
References toString().
| std::string toString | ( | const Sundance::EvalContext & | h | ) | [related] |
Definition at line 163 of file SundanceEvalContext.hpp.
References toString().
RCP<OrderedTriple<Set<int>, int, RegionQuadCombo> > Sundance::EvalContext::data_ [private] |
Definition at line 143 of file SundanceEvalContext.hpp.
Referenced by brief(), needsDerivOrder(), operator<(), and toString().
int Sundance::EvalContext::evalSetupVerbosity_ [mutable, private] |
Definition at line 141 of file SundanceEvalContext.hpp.
Referenced by evalSetupVerbosity(), and setEvalSetupVerbosity().
int Sundance::EvalContext::maxDiffOrder_ [private] |
Definition at line 142 of file SundanceEvalContext.hpp.
Referenced by topLevelDiffOrder().
int Sundance::EvalContext::setupVerbosity_ [mutable, private] |
Definition at line 140 of file SundanceEvalContext.hpp.
Referenced by setSetupVerbosity(), and setupVerbosity().