1#ifndef CYCLUS_SRC_TOOLKIT_SYMBOLIC_FUNCTIONS_H_
2#define CYCLUS_SRC_TOOLKIT_SYMBOLIC_FUNCTIONS_H_
7#include <boost/shared_ptr.hpp>
20 typedef boost::shared_ptr<SymFunction>
Ptr;
26 virtual double value(
double x) = 0;
29 virtual std::string
Print() = 0;
42 virtual double value(
double x);
45 virtual std::string
Print();
52 double intercept_ = 0;
64 : constant_(c), exponent_(e), intercept_(i) {}
67 virtual double value(
double x);
70 virtual std::string
Print();
87 struct PiecewiseFunctionInfo {
90 : function(function_), xoffset(xoff_), yoffset(yoff_) {}
93 double xoffset, yoffset;
98 virtual double value(
double x);
101 virtual std::string
Print();
104 std::list<PiecewiseFunctionInfo> functions_;
taken directly from OsiSolverInterface.cpp on 2/17/14 from https://projects.coin-or....