Sundance::ScalarExpr Class Reference

Inheritance diagram for Sundance::ScalarExpr:

Sundance::ExprBase Playa::Handleable< ExprBase > Sundance::Derivative Sundance::EvaluatableExpr Sundance::FuncElementBase Sundance::SumOfIntegrals Sundance::CellDiameterExpr Sundance::CellVectorExpr Sundance::CoordExpr Sundance::CurveNormExpr Sundance::DiscreteFuncElement Sundance::ExprWithChildren Sundance::FunctionalPolynomial Sundance::SpatiallyConstantExpr Sundance::SymbolicFuncElement Sundance::DiscreteFuncElement Sundance::SymbolicFuncElement Sundance::SumOfBCs

List of all members.

Public Member Functions

 ScalarExpr ()
virtual ~ScalarExpr ()
virtual bool isConstant () const
virtual bool isImmutable () const
virtual bool isHungryDiffOp () const
virtual bool isIndependentOf (const Expr &u) const
virtual bool isLinearInTests () const
virtual bool everyTermHasTestFunctions () const
virtual bool hasTestFunctions () const
virtual bool hasUnkFunctions () const
virtual bool isLinearForm (const Expr &u) const
virtual bool isQuadraticForm (const Expr &u) const
virtual void getUnknowns (Set< int > &unkID, Array< Expr > &unks) const
virtual void getTests (Set< int > &varID, Array< Expr > &vars) const
virtual bool lessThan (const ScalarExpr *other) const =0


Detailed Description

Definition at line 53 of file SundanceScalarExpr.hpp.


Constructor & Destructor Documentation

ScalarExpr::ScalarExpr (  ) 

empty ctor

Definition at line 39 of file SundanceScalarExpr.cpp.

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

virtual destructor

Definition at line 60 of file SundanceScalarExpr.hpp.


Member Function Documentation

virtual bool Sundance::ScalarExpr::everyTermHasTestFunctions (  )  const [inline, virtual]

virtual void Sundance::ScalarExpr::getTests ( Set< int > &  varID,
Array< Expr > &  vars 
) const [inline, virtual]

Find all the test functions in this expression.

Reimplemented in Sundance::ExprWithChildren.

Definition at line 106 of file SundanceScalarExpr.hpp.

Referenced by Sundance::ExprWithChildren::getTests(), and Sundance::Expr::getTests().

virtual void Sundance::ScalarExpr::getUnknowns ( Set< int > &  unkID,
Array< Expr > &  unks 
) const [inline, virtual]

Find all the unknown functions in this expression.

Reimplemented in Sundance::ExprWithChildren.

Definition at line 103 of file SundanceScalarExpr.hpp.

Referenced by Sundance::ExprWithChildren::getUnknowns(), and Sundance::Expr::getUnknowns().

virtual bool Sundance::ScalarExpr::hasTestFunctions (  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::hasUnkFunctions (  )  const [inline, virtual]

Indicate whether the expression contains unknown functions

Reimplemented from Sundance::ExprBase.

Reimplemented in Sundance::ExprWithChildren.

Definition at line 92 of file SundanceScalarExpr.hpp.

Referenced by Sundance::ExprWithChildren::hasUnkFunctions().

virtual bool Sundance::ScalarExpr::isConstant (  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::isHungryDiffOp (  )  const [inline, virtual]

Indicate whether this expression is a "hungry" differential operator that is awaiting an argument.

Reimplemented in Sundance::ProductExpr, Sundance::SumExpr, and Sundance::Derivative.

Definition at line 72 of file SundanceScalarExpr.hpp.

Referenced by Sundance::SumExpr::isHungryDiffOp(), Sundance::ProductExpr::isHungryDiffOp(), and Sundance::BinaryExpr::toText().

virtual bool Sundance::ScalarExpr::isImmutable (  )  const [inline, virtual]

Indicate whether this expression is an immutable constant

Reimplemented in Sundance::ConstantExpr.

Definition at line 68 of file SundanceScalarExpr.hpp.

virtual bool Sundance::ScalarExpr::isIndependentOf ( const Expr u  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::isLinearForm ( const Expr u  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::isLinearInTests (  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::isQuadraticForm ( const Expr u  )  const [inline, virtual]

virtual bool Sundance::ScalarExpr::lessThan ( const ScalarExpr other  )  const [pure virtual]

Site Contact