The OSnLNodeVariable Class. More...
#include <OSnLNode.h>
Public Member Functions | |
OSnLNodeVariable () | |
default constructor. | |
~OSnLNodeVariable () | |
default destructor. | |
virtual void | getVariableIndexMap (std::map< int, int > *varIdx) |
virtual std::string | getTokenNumber () |
virtual std::string | getTokenName () |
virtual std::string | getNonlinearExpressionInXML () |
virtual double | calculateFunction (double *x) |
virtual OSnLNode * | cloneOSnLNode () |
virtual ADdouble | constructADTape (std::map< int, int > *ADIdx, ADvector *XAD) |
Public Attributes | |
double | coef |
coef is an option coefficient on the variable, the default value is 1.0 | |
int | idx |
idx is the index of the variable |
The OSnLNodeVariable Class.
Definition at line 1417 of file OSnLNode.h.
OSnLNodeVariable::OSnLNodeVariable | ( | ) |
default constructor.
Definition at line 1974 of file OSnLNode.cpp.
OSnLNodeVariable::~OSnLNodeVariable | ( | ) |
default destructor.
Definition at line 1984 of file OSnLNode.cpp.
void OSnLNodeVariable::getVariableIndexMap | ( | std::map< int, int > * | varIdx | ) | [virtual] |
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. (*varIdx)[ 5] = 2 means that variable indexed by 5 is the second variable in the OSnLNode and all of its children
a | pointer to a map of the variables in the OSnLNode and its children |
Reimplemented from OSnLNode.
Definition at line 2092 of file OSnLNode.cpp.
std::string OSnLNodeVariable::getTokenNumber | ( | ) | [virtual] |
Reimplemented from OSnLNode.
Definition at line 2005 of file OSnLNode.cpp.
std::string OSnLNodeVariable::getTokenName | ( | ) | [virtual] |
Implements OSnLNode.
Definition at line 2022 of file OSnLNode.cpp.
std::string OSnLNodeVariable::getNonlinearExpressionInXML | ( | ) | [virtual] |
Reimplemented from OSnLNode.
Definition at line 2039 of file OSnLNode.cpp.
double OSnLNodeVariable::calculateFunction | ( | double * | x | ) | [virtual] |
Calculate the function value given the current variable values. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this OSnLNode class.
x | holds the values of the variables in a double array. |
Implements OSnLNode.
Definition at line 2074 of file OSnLNode.cpp.
OSnLNode * OSnLNodeVariable::cloneOSnLNode | ( | ) | [virtual] |
Create or clone a node of this type. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this OSnLNode class.
x | holds the values of the variables in a double array. |
Implements OSnLNode.
Definition at line 2110 of file OSnLNode.cpp.
ADdouble OSnLNodeVariable::constructADTape | ( | std::map< int, int > * | ADIdx, | |
ADvector * | XAD | |||
) | [virtual] |
Create the AD tape to be evaluated by AD. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this OSnLNode class.
Implements OSnLNode.
Definition at line 2080 of file OSnLNode.cpp.
double OSnLNodeVariable::coef |
coef is an option coefficient on the variable, the default value is 1.0
Definition at line 1424 of file OSnLNode.h.
idx is the index of the variable
Definition at line 1427 of file OSnLNode.h.