35 #ifndef ACADO_TOOLKIT_BINARY_OPERATOR_HPP 36 #define ACADO_TOOLKIT_BINARY_OPERATOR_HPP 373 virtual std::ostream&
print( std::ostream &stream )
const = 0;
395 int &component )
const;
434 const std::vector< std::string >& _name
virtual returnValue AD_forward2(int number, double *seed1, double *seed2, double *df, double *ddf)=0
virtual NeutralElement isOneOrZero() const
virtual MonotonicityType getMonotonicity()=0
virtual Operator * AD_forward(int dim, VariableType *varType, int *component, Operator **seed, int &nNewIS, TreeProjection ***newIS)=0
virtual returnValue setVariableExportName(const VariableType &_type, const std::vector< std::string > &_name)
Abstract base class for all scalar-valued binary operators within the symbolic operators family...
Abstract base class for all scalar-valued symbolic operators.
double * argument1_result
virtual BooleanType isSymbolic() const
Allows to pass back messages to the calling function.
virtual std::ostream & print(std::ostream &stream) const =0
virtual returnValue loadIndices(SymbolicIndexList *indexList)
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)=0
virtual returnValue AD_backward2(int number, double seed1, double seed2, double *df, double *ddf)=0
virtual returnValue enumerateVariables(SymbolicIndexList *indexList)
virtual returnValue initDerivative()
virtual returnValue setMonotonicity(MonotonicityType monotonicity_)
virtual BooleanType isLinearIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)=0
virtual BooleanType isDependingOn(VariableType var) const
#define CLOSE_NAMESPACE_ACADO
virtual returnValue evaluate(int number, double *x, double *result)=0
Manages the indices of SymbolicVariables.
virtual returnValue setCurvature(CurvatureType curvature_)
double * dargument2_result
virtual ~BinaryOperator()
virtual Operator * clone() const =0
MonotonicityType monotonicity
Implements the scalar power operator with integer exponent within the symbolic operators family...
double * argument2_result
virtual CurvatureType getCurvature()=0
double * dargument1_result
virtual returnValue AD_backward(int dim, VariableType *varType, int *component, Operator *seed, Operator **df, int &nNewIS, TreeProjection ***newIS)=0
virtual BooleanType isPolynomialIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)=0
Abstract base class for all scalar-valued symbolic operators.
virtual OperatorName getName()=0
virtual Operator * substitute(int index, const Operator *sub)=0
Implements the tree-projection operator within the family of SymbolicOperators.
void copy(const BinaryOperator &arg)
BinaryOperator & operator=(const BinaryOperator &arg)
#define BEGIN_NAMESPACE_ACADO
Abstract base class for templated evaluation of operators.
virtual BooleanType isVariable(VariableType &varType, int &component) const
virtual BooleanType isRationalIn(int dim, VariableType *varType, int *component, BooleanType *implicit_dep)=0
virtual returnValue clearBuffer()
virtual Operator * differentiate(int index)=0