41 #ifndef BPP_NUMERIC_FUNCTION_OPERATORS_COMPUTATIONTREE_H
42 #define BPP_NUMERIC_FUNCTION_OPERATORS_COMPUTATIONTREE_H
46 #include "../../../Graph/AssociationTreeGraphImplObserver.h"
47 #include "../Functions.h"
61 std::shared_ptr<Operator>
readFormula_(
const std::string& formula,
const std::map<std::string, Function*>& functionNames);
71 ComputationTree(
const std::string& formula,
const std::map<std::string, Function*>& functionNames);
85 return getRoot()->getFirstOrderDerivative(variable);
90 return getRoot()->getSecondOrderDerivative(variable);
93 void readFormula(
const std::string& formula,
const std::map<std::string, Function*>& functionNames)
98 std::string
output()
const;
Defines a Computation Tree based on Operators.
double getFirstOrderDerivative(const std::string &variable) const
void readFormula(const std::string &formula, const std::map< std::string, Function * > &functionNames)
ComputationTree(const std::string &formula, const std::map< std::string, Function * > &functionNames)
std::shared_ptr< Operator > readFormula_(const std::string &formula, const std::map< std::string, Function * > &functionNames)
double getSecondOrderDerivative(const std::string &variable) const
ComputationTree * clone() const
std::string output() const