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 ()
 empty ctor
virtual ~ScalarExpr ()
 virtual destructor
virtual bool isConstant () const
 Indicate whether this expression is constant in space.
virtual bool isImmutable () const
 Indicate whether this expression is an immutable constant.
virtual bool isHungryDiffOp () const
 Indicate whether this expression is a "hungry" differential operator that is awaiting an argument.
virtual bool isIndependentOf (const Expr &u) const
 Indicate whether the expression is independent of the given functions.
virtual bool isLinearInTests () const
 Indicate whether the expression is nonlinear with respect to test functions.
virtual bool everyTermHasTestFunctions () const
 Indicate whether every term in the expression contains test functions.
virtual bool hasTestFunctions () const
 Indicate whether the expression contains test functions.
virtual bool hasUnkFunctions () const
 Indicate whether the expression contains unknown functions.
virtual bool isLinearForm (const Expr &u) const
 Indicate whether the expression is linear in the given functions.
virtual bool isQuadraticForm (const Expr &u) const
 Indicate whether the expression is quadratic in the given functions.
virtual void getUnknowns (Set< int > &unkID, Array< Expr > &unks) const
 Find all the unknown functions in this expression.
virtual void getTests (Set< int > &varID, Array< Expr > &vars) const
 Find all the test functions in this expression.
virtual bool lessThan (const ScalarExpr *other) const =0
 Ordering operator for use in transforming exprs to standard form.


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