Minsky
|
#include <equations.h>
Public Member Functions | |
virtual | ~Node () |
virtual int | BODMASlevel () const =0 |
algebraic heirarchy level, used for working out whether brackets are necessary. More... | |
virtual ostream & | latex (ostream &) const =0 |
writes LaTeX representation of this DAG to the stream More... | |
std::string | latexStr () const |
virtual ostream & | matlab (ostream &) const =0 |
writes a matlab representation of this DAG to the stream More... | |
std::string | matlabStr () const |
virtual void | render (ecolab::cairo::Surface &surf) const =0 |
renders a visual representation of this node to surf graphic extends right from the current pen position (which needs to be defined), and pen is moved to the right edge of the graphic. The determine bounding box, render into a recording surface, and use width()/height() More... | |
virtual VariableValuePtr | addEvalOps (EvalOpVector &, const VariableValuePtr &result={})=0 |
adds EvalOps to an EvalOpVector representing this node. More... | |
virtual int | order (unsigned maxOrder) const =0 |
returns evaluation order in sequence of variable defintions More... | |
virtual bool | tensorEval (std::set< const Node *> &visited) const =0 |
returns true if the evaluation of this involves tensor processing More... | |
bool | tensorEval () |
returns true if the evaluation of this involves tensor processing More... | |
LaTeXManip | latex () const |
used within io streaming More... | |
MatlabManip | matlab () const |
virtual std::shared_ptr< Node > | derivative (SystemOfEquations &) const =0 |
support for the derivative operator. More... | |
Public Attributes | |
int | cachedOrder =-1 |
VariableValuePtr | result |
reference to where this node's value is stored More... | |
Definition at line 83 of file equations.h.
|
inlinevirtual |
Definition at line 85 of file equations.h.
|
pure virtual |
adds EvalOps to an EvalOpVector representing this node.
Implemented in MathDAG::LockDAG, MathDAG::OperationDAGBase, MathDAG::IntegralInputVariableDAG, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
Referenced by MathDAG::LockDAG::addEvalOps().
|
pure virtual |
algebraic heirarchy level, used for working out whether brackets are necessary.
Implemented in MathDAG::LockDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
|
pure virtual |
support for the derivative operator.
Implemented in MathDAG::LockDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
Referenced by MathDAG::SystemOfEquations::derivative().
|
pure virtual |
writes LaTeX representation of this DAG to the stream
Implemented in MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::LockDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::VariableDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::ConstantDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, and MathDAG::OperationDAG< OperationType::subtract >.
Referenced by MathDAG::operator<<().
|
inline |
used within io streaming
Definition at line 119 of file equations.h.
|
inline |
Definition at line 92 of file equations.h.
References MathDAG::latex().
|
pure virtual |
writes a matlab representation of this DAG to the stream
Implemented in MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::LockDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::VariableDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::ConstantDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::OperationDAG< T >, and MathDAG::OperationDAG< OperationType::subtract >.
Referenced by MathDAG::operator<<().
|
inline |
Definition at line 120 of file equations.h.
|
inline |
Definition at line 95 of file equations.h.
|
pure virtual |
returns evaluation order in sequence of variable defintions
maxOrder | is used to limit the recursion depth |
Implemented in MathDAG::LockDAG, MathDAG::GodleyColumnDAG, MathDAG::OperationDAGBase, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
Referenced by MathDAG::VariableDAG::order(), and MathDAG::LockDAG::order().
|
pure virtual |
renders a visual representation of this node to surf graphic extends right from the current pen position (which needs to be defined), and pen is moved to the right edge of the graphic. The determine bounding box, render into a recording surface, and use width()/height()
Implemented in MathDAG::LockDAG, MathDAG::OperationDAG< T >, MathDAG::OperationDAG< OperationType::subtract >, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
Referenced by MathDAG::anonymous_namespace{equationDisplayRender.cc}::variableRender().
|
pure virtual |
returns true if the evaluation of this involves tensor processing
visited | set to break graph cycles |
Implemented in MathDAG::LockDAG, MathDAG::OperationDAGBase, MathDAG::VariableDAG, and MathDAG::ConstantDAG.
|
inline |
returns true if the evaluation of this involves tensor processing
Definition at line 116 of file equations.h.
References tensorEval().
Referenced by tensorEval().
|
mutable |
Definition at line 117 of file equations.h.
VariableValuePtr MathDAG::Node::result |
reference to where this node's value is stored
Definition at line 128 of file equations.h.
Referenced by MathDAG::LockDAG::addEvalOps().