CLHEP 2.4.6.4
C++ Class Library for High Energy Physics
Loading...
Searching...
No Matches
CubicSplinePolynomial.hh
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id:
3// ------------------------------------------------------------------------------//
4// Natural cubic spline function, used for interpolation //
5// //
6// //
7// Joe Boudreau. //
8// //
9// ------------------------------------------------------------------------------//
10#ifndef _CubicSplinePolynomial_h_
11#define _CubicSplinePolynomial_h_
12#include "CLHEP/GenericFunctions/AbsFunction.hh"
13#include "CLHEP/GenericFunctions/Parameter.hh"
14#include <vector>
15namespace Genfun {
16
17 /**
18 * @author
19 * @ingroup genfun
20 */
22
24
25 public:
26
27 // Constructor
29
30 // Copy constructor
32
33 // Destructor:
35
36 // Retreive function value
37 virtual double operator ()(double argument) const override;
38 virtual double operator ()(const Argument & a) const override {return operator() (a[0]);}
39
40 // Puncture this thing:
41 void addPoint(double x, double y);
42
43 // Get the range:
44 void getRange(double & min, double & max) const;
45
46 private:
47
48 // It is illegal to assign an adjustable constant
49 const CubicSplinePolynomial & operator=(const CubicSplinePolynomial &right);
50
51 class Clockwork;
52 Clockwork *c;
53
54 };
55} // namespace Genfun
56#include "CLHEP/GenericFunctions/CubicSplinePolynomial.icc"
57#endif
#define FUNCTION_OBJECT_DEF(classname)
Definition: AbsFunction.hh:143
void addPoint(double x, double y)
virtual double operator()(double argument) const override
void getRange(double &min, double &max) const
CubicSplinePolynomial(const CubicSplinePolynomial &right)
Definition: Abs.hh:14