The OSnLNodePlus Class. More...
#include <OSnLNode.h>
Public Member Functions | |
OSnLNodePlus () | |
default constructor. More... | |
~OSnLNodePlus () | |
default destructor. More... | |
virtual std::string | getTokenName () |
virtual double | calculateFunction (double *x) |
The implementation of the virtual functions. More... | |
virtual ADdouble | constructADTape (std::map< int, int > *ADIdx, ADvector *XAD) |
The implementation of the virtual functions. More... | |
virtual OSnLNode * | cloneExprNode () |
The implementation of the virtual functions. More... | |
![]() | |
OSnLNode () | |
default constructor. More... | |
virtual | ~OSnLNode () |
default destructor. More... | |
virtual void | getVariableIndexMap (std::map< int, int > *varIdx) |
varIdx is a map where the key is the index of an OSnLNodeVariable and (*varIdx)[ idx] is the kth variable in the map, e.g. More... | |
OSnLNode * | createExpressionTreeFromPrefix (std::vector< ExprNode * > nlNodeVec) |
Take a vector of ExprNodes (OSnLNodes and OSnLMNodes) in prefix format and create a scalar-valued OSExpressionTree root node. More... | |
virtual std::vector< ExprNode * > | getPrefixFromExpressionTree () |
Get a vector of pointers to OSnLNodes and OSnLMNodes that correspond to the (scalar-valued or matrix-valued) expression tree in prefix format. More... | |
virtual std::vector< ExprNode * > | preOrderOSnLNodeTraversal (std::vector< ExprNode * > *prefixVector) |
Called by getPrefixFromExpressionTree(). More... | |
OSnLNode * | createExpressionTreeFromPostfix (std::vector< ExprNode * > nlNodeVec) |
Take a vector of ExprNodes (OSnLNodes and OSnLMNodes) in postfix format and create a scalar-valued OSExpressionTree root node. More... | |
virtual std::vector< ExprNode * > | getPostfixFromExpressionTree () |
Get a vector of pointers to ExprNodes that correspond to the expression tree in postfix format. More... | |
virtual std::vector< ExprNode * > | postOrderOSnLNodeTraversal (std::vector< ExprNode * > *postfixVector) |
Called by getPostfixFromExpressionTree(). More... | |
virtual OSnLNode * | copyNodeAndDescendants () |
make a copy of this node and all its descendants More... | |
bool | IsEqual (OSnLNode *that) |
A function to check for the equality of two objects. More... | |
![]() | |
ExprNode () | |
default constructor. More... | |
virtual | ~ExprNode () |
default destructor. More... | |
virtual std::string | getTokenNumber () |
virtual std::string | getNonlinearExpressionInXML () |
The following method writes an OSnLNode or OSnLMNode in OSiL format. More... | |
virtual bool | IsEqual (ExprNode *that) |
A function to check for the equality of two objects. More... | |
Additional Inherited Members | |
![]() | |
double | m_dFunctionValue |
m_dFunctionValue holds the function value given the current variable values. More... | |
ADdouble | m_ADTape |
m_ADTape stores the expression tree for the this OSnLNode as an ADdouble. More... | |
![]() | |
int | inodeInt |
inodeInt is the unique integer assigned to the OSnLNode or OSnLMNode in OSParameters.h. More... | |
int | inodeType |
inodeType essentially tracks whether the number of children are known or not. More... | |
unsigned int | inumberOfChildren |
inumberOfChildren is the number of OSnLNode child elements If this number is not fixed, e.g., for a sum node, it is temporarily set to 0 More... | |
unsigned int | inumberOfMatrixChildren |
inumberOfMatrixChildren is the number of OSnLMNode child elements If this number is not fixed, e.g., for a matrixProduct node, it is temporarily set to 0 More... | |
OSnLNode ** | m_mChildren |
m_mChildren holds all the operands, that is, nodes that the current node operates on. More... | |
OSnLMNode ** | m_mMatrixChildren |
m_mMatrixChildren holds all the matrix-valued operands, if any. More... | |
The OSnLNodePlus Class.
Definition at line 315 of file OSnLNode.h.
OSnLNodePlus::OSnLNodePlus | ( | ) |
default constructor.
Definition at line 595 of file OSnLNode.cpp.
OSnLNodePlus::~OSnLNodePlus | ( | ) |
default destructor.
Definition at line 607 of file OSnLNode.cpp.
|
virtual |
|
virtual |
The implementation of the virtual functions.
Implements OSnLNode.
Definition at line 621 of file OSnLNode.cpp.
The implementation of the virtual functions.
Implements OSnLNode.
Definition at line 628 of file OSnLNode.cpp.
|
virtual |
The implementation of the virtual functions.
Implements ExprNode.
Definition at line 634 of file OSnLNode.cpp.