Public Member Functions | |
ProductExpr (const RCP< ScalarExpr > &a, const RCP< ScalarExpr > &b) | |
virtual | ~ProductExpr () |
virtual bool | isHungryDiffOp () const |
virtual Evaluator * | createEvaluator (const EvaluatableExpr *expr, const EvalContext &context) const |
virtual Set< MultiSet< int > > | internalFindQ_W (int order, const EvalContext &context) const |
virtual Set< MultiSet< int > > | internalFindQ_V (int order, const EvalContext &context) const |
virtual bool | isProduct () const |
virtual bool | isLinearInTests () const |
virtual bool | isLinearForm (const Expr &u) const |
virtual bool | isQuadraticForm (const Expr &u) const |
virtual RCP< ExprBase > | getRcp () |
Protected Member Functions | |
virtual bool | parenthesizeSelf () const |
virtual bool | parenthesizeOperands () const |
virtual const std::string & | xmlTag () const |
virtual const std::string & | opChar () const |
Definition at line 51 of file SundanceProductExpr.hpp.
ProductExpr::ProductExpr | ( | const RCP< ScalarExpr > & | a, | |
const RCP< ScalarExpr > & | b | |||
) |
Definition at line 47 of file SundanceProductExpr.cpp.
virtual Sundance::ProductExpr::~ProductExpr | ( | ) | [inline, virtual] |
virtual dtor
Definition at line 59 of file SundanceProductExpr.hpp.
Evaluator * ProductExpr::createEvaluator | ( | const EvaluatableExpr * | expr, | |
const EvalContext & | context | |||
) | const [virtual] |
virtual RCP<ExprBase> Sundance::ProductExpr::getRcp | ( | ) | [inline, virtual] |
Set< MultiSet< int > > ProductExpr::internalFindQ_V | ( | int | order, | |
const EvalContext & | context | |||
) | const [virtual] |
Reimplemented from Sundance::ExprWithChildren.
Definition at line 133 of file SundanceProductExpr.cpp.
References Sundance::EvaluatableExpr::findV(), Sundance::BinaryExpr::leftEvaluatable(), Sundance::Set< Key, Compare >::put(), Sundance::BinaryExpr::rightEvaluatable(), Sundance::EvalContext::setupVerbosity(), Sundance::Set< Key, Compare >::size(), SUNDANCE_MSG2, and Playa::ObjectWithVerbosity::verb().
Set< MultiSet< int > > ProductExpr::internalFindQ_W | ( | int | order, | |
const EvalContext & | context | |||
) | const [virtual] |
Reimplemented from Sundance::ExprWithChildren.
Definition at line 84 of file SundanceProductExpr.cpp.
References Sundance::EvaluatableExpr::findW(), Sundance::BinaryExpr::leftEvaluatable(), Sundance::Set< Key, Compare >::put(), Sundance::BinaryExpr::rightEvaluatable(), Sundance::EvalContext::setupVerbosity(), Sundance::Set< Key, Compare >::size(), SUNDANCE_MSG2, SUNDANCE_MSG3, and Playa::ObjectWithVerbosity::verb().
bool ProductExpr::isHungryDiffOp | ( | ) | const [virtual] |
Indicate whether this expression is a "hungry" differential operator that is awaiting an argument.
Reimplemented from Sundance::ScalarExpr.
Definition at line 59 of file SundanceProductExpr.cpp.
References Sundance::ScalarExpr::isHungryDiffOp(), and Sundance::BinaryExpr::rightScalar().
virtual bool Sundance::ProductExpr::isLinearForm | ( | const Expr & | u | ) | const [inline, virtual] |
Indicate whether the expression is linear in the given functions
Reimplemented from Sundance::ScalarExpr.
Definition at line 99 of file SundanceProductExpr.hpp.
References Sundance::ScalarExpr::isLinearForm(), Sundance::BinaryExpr::leftScalar(), and Sundance::BinaryExpr::rightScalar().
virtual bool Sundance::ProductExpr::isLinearInTests | ( | ) | const [inline, virtual] |
Indicate whether the expression is linear with respect to test functions
Reimplemented from Sundance::ScalarExpr.
Definition at line 85 of file SundanceProductExpr.hpp.
References Sundance::ScalarExpr::hasTestFunctions(), Sundance::ScalarExpr::isLinearInTests(), Sundance::BinaryExpr::leftScalar(), and Sundance::BinaryExpr::rightScalar().
virtual bool Sundance::ProductExpr::isProduct | ( | ) | const [inline, virtual] |
Reimplemented from Sundance::ExprWithChildren.
Definition at line 80 of file SundanceProductExpr.hpp.
virtual bool Sundance::ProductExpr::isQuadraticForm | ( | const Expr & | u | ) | const [inline, virtual] |
Indicate whether the expression is a quadratic form in the given functions
Reimplemented from Sundance::ScalarExpr.
Definition at line 108 of file SundanceProductExpr.hpp.
References Sundance::ScalarExpr::isIndependentOf(), Sundance::ScalarExpr::isLinearForm(), Sundance::ScalarExpr::isQuadraticForm(), Sundance::BinaryExpr::leftScalar(), and Sundance::BinaryExpr::rightScalar().
const std::string & ProductExpr::opChar | ( | ) | const [protected, virtual] |
Implements Sundance::BinaryExpr.
Definition at line 74 of file SundanceProductExpr.cpp.
References Sundance::BinaryExpr::sign().
virtual bool Sundance::ProductExpr::parenthesizeOperands | ( | ) | const [inline, protected, virtual] |
virtual bool Sundance::ProductExpr::parenthesizeSelf | ( | ) | const [inline, protected, virtual] |
const std::string & ProductExpr::xmlTag | ( | ) | const [protected, virtual] |
Implements Sundance::BinaryExpr.
Definition at line 66 of file SundanceProductExpr.cpp.
References Sundance::BinaryExpr::sign().