11 #include "../Core/SharedLibraryExportMacros.h" 23 #include <boost/serialization/base_object.hpp> 24 #include <boost/archive/text_oarchive.hpp> 25 #include <boost/archive/text_iarchive.hpp> 26 #include <boost/serialization/export.hpp> 31 class InterpSolutionIterator;
35 template<
class InputDataType,
class OutputDataType>
38 friend class boost::serialization::access;
42 template<
class Archive>
47 virtual OutputDataType operator()(
48 InputDataType in_value
52 virtual InputDataType range_high()
const=0;
55 virtual InputDataType range_low()
const=0;
70 virtual double order(
unsigned deriv_order=1)
const =0;
99 double order(
unsigned deriv_order=1)
const;
108 friend class boost::serialization::access;
113 template<
class Archive>
115 ar & boost::serialization::base_object<
139 double order(
unsigned =1)
const {
return 0;}
146 friend class boost::serialization::access;
151 template<
class Archive>
153 ar & boost::serialization::base_object< OneArgumentDiffFunction >(
double order(unsigned=1) const
The deriv_order-th derivative.
const double Inf
Infinity.
double range_high() const
The function is defined everywhere.
The derivatives of an identically zero quantity.
double zeroth
The value of the function.
A class representing a once differentiable function of a single argument.
virtual ~OneArgumentFunction()
Provide a virtual destructor for a virtual class.
An iterator over a set of solutions to an interpolating function.
Defines the exception hierarchy used by this code.
double operator()(double) const
The function value (=0).
void serialize(Archive &ar, const unsigned int)
A class representing arbitrary order derivatives of a function.
double range_low() const
The function is defined everywhere.
A class representing a function that is identically zero.
virtual ~FunctionDerivatives()
Clean up.
A class for the derivatives of a cubic spline (=0 for order>2).
The base class for functions which take a single argument and return a single value.
ZeroDerivatives()
Create a derivative of an identically zero quantity.
void serialize(Archive &, const unsigned int)
Serialize this function.
Declaration of some general purpose utilities.
void serialize(Archive &ar, const unsigned int)
virtual const FunctionDerivatives * deriv(double) const
See OneArgumentDiffFunction::deriv()