83 ss <<
"xd" <<
"[" <<
vIndex <<
"]";
87 ss <<
"xa" <<
"[" << vIndex <<
"]";
91 ss <<
"u" <<
"[" << vIndex <<
"]";
95 ss <<
"v" <<
"[" << vIndex <<
"]";
99 ss <<
"p" <<
"[" << vIndex <<
"]";
103 ss <<
"od" <<
"[" << vIndex <<
"]";
107 ss <<
"q" <<
"[" << vIndex <<
"]";
111 ss <<
"w" <<
"[" << vIndex <<
"]";
115 ss <<
"t" <<
"[" << vIndex <<
"]";
119 ss <<
"a" <<
"[" << vIndex <<
"]";
123 ss <<
"dx" <<
"[" << vIndex <<
"]";
231 return ADsymmetricProtected( dim, varType, component, l, S, dimS, dfS, ldf, H, nNewLIS, newLIS, nNewSIS, newSIS, nNewHIS, newHIS );
337 double *f,
double *df ){
361 double *df,
double *ddf ){
369 double *df,
double *ddf ){
381 return stream <<
name;
469 return seed[run1]->
clone();
495 df[run1] = seed->
clone();
541 for( run2 = 0; run2 < dimS; run2++ ){
543 dfS[run2] = S[run1*dimS+run2]->
clone();
548 ldf[run1] = l->
clone();
virtual returnValue enumerateVariables(SymbolicIndexList *indexList)
virtual BooleanType isPolynomialIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)
virtual MonotonicityType getMonotonicity()
virtual std::ostream & print(std::ostream &stream) const
virtual returnValue setScale(const double &scale_)
Abstract base class for all scalar-valued symbolic operators.
VariableType variableType
VariableType getType() const
virtual NeutralElement isOneOrZero() const =0
virtual void copy(const Projection &arg)
virtual Operator * substitute(int index, const Operator *sub)
OperatorName operatorName
Allows to pass back messages to the calling function.
virtual BooleanType isRationalIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)
virtual Operator * clone() const =0
virtual CurvatureType getCurvature()
virtual BooleanType isTrivial() const
virtual returnValue setMonotonicity(MonotonicityType monotonicity_)
virtual returnValue setVariableExportName(const VariableType &_type, const std::vector< std::string > &_name)
virtual Operator * differentiate(int index)
virtual void project(int &idx)=0
virtual returnValue AD_forward2(int number, double *seed1, double *seed2, double *df, double *ddf)
#define CLOSE_NAMESPACE_ACADO
virtual NeutralElement isOneOrZero() const
Manages the indices of SymbolicVariables.
virtual returnValue AD_backward2(int number, double seed1, double seed2, double *df, double *ddf)
virtual BooleanType isSymbolic() const
virtual returnValue setVariableExportName(const VariableType &_type, const std::vector< std::string > &_name)
virtual BooleanType isVariable(VariableType &varType, int &component) const
virtual returnValue loadIndices(SymbolicIndexList *indexList)
int determineVariableIndex(VariableType variableType_, int index_, double scale)
virtual returnValue ADsymmetricProtected(int dim, VariableType *varType, int *component, Operator *l, Operator **S, int dimS, Operator **dfS, Operator **ldf, Operator **H, int &nNewLIS, TreeProjection ***newLIS, int &nNewSIS, TreeProjection ***newSIS, int &nNewHIS, TreeProjection ***newHIS)
virtual double getScale() const
Implements the scalar addition operator within the symbolic expressions family.
virtual Operator * AD_forward(int dim, VariableType *varType, int *component, Operator **seed, int &nNewIS, TreeProjection ***newIS)
virtual Operator * clone() const
Implements the projection operator within the symbolic operators family.
MonotonicityType monotonicity
Abstract base class for all scalar-valued symbolic operators.
virtual Operator * ADforwardProtected(int dim, VariableType *varType, int *component, Operator **seed, int &nNewIS, TreeProjection ***newIS)
virtual returnValue ADbackwardProtected(int dim, VariableType *varType, int *component, Operator *seed, Operator **df, int &nNewIS, TreeProjection ***newIS)
Implements the tree-projection operator within the family of SymbolicOperators.
virtual returnValue clearBuffer()
virtual int getVariableIndex() const
#define BEGIN_NAMESPACE_ACADO
Abstract base class for templated evaluation of operators.
virtual BooleanType isDependingOn(VariableType var) const
virtual int getGlobalIndex() const
virtual returnValue evaluate(int number, double *x, double *result)
virtual returnValue setCurvature(CurvatureType curvature_)
BooleanType addNewElement(VariableType variableType_, int index_)
virtual OperatorName getName()
virtual BooleanType isLinearIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)
virtual returnValue AD_backward(int dim, VariableType *varType, int *component, Operator *seed, Operator **df, int &nNewIS, TreeProjection ***newIS)
Implements a scalar constant within the symbolic operators family.
virtual returnValue AD_symmetric(int dim, VariableType *varType, int *component, Operator *l, Operator **S, int dimS, Operator **dfS, Operator **ldf, Operator **H, int &nNewLIS, TreeProjection ***newLIS, int &nNewSIS, TreeProjection ***newSIS, int &nNewHIS, TreeProjection ***newHIS)