18 TRadSpline(
const char*
title,
double delta,
double xmin,
double xmax,
int np,
bool step )
26 virtual void GetKnot(
int i,
double& x,
double& y )
const = 0;
30 virtual double Eval(
double x )
const = 0;
31 virtual void SaveAs(
const char* )
const { ; }
44 double&
X() {
return fX; }
45 double&
Y() {
return fY; }
46 void GetKnot(
double& x,
double& y )
const {
51 virtual double Eval(
double )
const {
return fY; }
64 double&
B() {
return fB; }
65 double&
C() {
return fC; }
66 double&
D() {
return fD; }
67 double Eval(
double x )
const {
69 return (
fY + dx * ( fB + dx * ( fC + dx * fD ) ) );
73 return ( fB + 2 * fC * dx + 3 * fD * dx * dx );
87 TRadSplinePoly5(
double x,
double y,
double b,
double c,
double d,
double e,
double f )
88 :
TRadSplinePoly( x, y ), fB( b ), fC( c ), fD( d ), fE( e ), fF(
f ) {}
89 double&
B() {
return fB; }
90 double&
C() {
return fC; }
91 double&
D() {
return fD; }
92 double&
E() {
return fE; }
93 double&
F() {
return fF; }
94 double Eval(
double x )
const {
96 return (
fY + dx * ( fB + dx * ( fC + dx * ( fD + dx * ( fE + dx * fF ) ) ) ) );
100 return ( fB + 2 * fC * dx + 3 * fD * dx * dx + 4 * fE * dx * dx * dx +
101 5 * fF * dx * dx * dx * dx );
115 void SetCond(
const char* opt );
118 TRadSpline3() : fPoly( 0 ), fValBeg( 0 ), fValEnd( 0 ), fBegCond( -1 ), fEndCond( -1 ) {}
120 double valbeg = 0,
double valend = 0 );
122 const char* opt = 0,
double valbeg = 0,
double valend = 0 );
123 TRadSpline3(
const char*
title,
double xmin,
double xmax,
double ( *func )(
const double& ),
124 int n,
const char* opt = 0,
double valbeg = 0,
double valend = 0 );
129 if ( fPoly )
delete[] fPoly;
131 void GetCoeff(
int i,
double& x,
double& y,
double& b,
double& c,
double& d ) {
138 void GetKnot(
int i,
double& x,
double& y )
const {
142 virtual void SaveAs(
const char* filename )
const;
152 void BoundaryConditions(
const char* opt,
int& beg,
int& end,
const char*& cb1,
153 const char*& ce1,
const char*& cb2,
const char*& ce2 );
154 void SetBoundaries(
double b1,
double e1,
double b2,
double e2,
const char* cb1,
155 const char* ce1,
const char* cb2,
const char* ce2 );
160 double b1 = 0,
double e1 = 0,
double b2 = 0,
double e2 = 0 );
162 const char* opt = 0,
double b1 = 0,
double e1 = 0,
double b2 = 0,
164 TRadSpline5(
const char*
title,
double xmin,
double xmax,
double ( *func )(
const double& ),
165 int n,
const char* opt = 0,
double b1 = 0,
double e1 = 0,
double b2 = 0,
171 if ( fPoly )
delete[] fPoly;
173 void GetCoeff(
int i,
double& x,
double& y,
double& b,
double& c,
double& d,
double& e,
183 void GetKnot(
int i,
double& x,
double& y )
const {
187 virtual void SaveAs(
const char* filename )
const;
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
void GetCoeff(int i, double &x, double &y, double &b, double &c, double &d)
int FindX(double x) const
double Derivative(double x) const
double Eval(double x) const
TRadSpline3(const char *title, double xmin, double xmax, double y[], int n, const char *opt=0, double valbeg=0, double valend=0)
void GetKnot(int i, double &x, double &y) const
TRadSpline3(const char *title, double xmin, double xmax, double(*func)(const double &), int n, const char *opt=0, double valbeg=0, double valend=0)
TRadSpline3(const char *title, double x[], double y[], int n, const char *opt=0, double valbeg=0, double valend=0)
virtual void SaveAs(const char *filename) const
TRadSpline5(const char *title, double x[], double y[], int n, const char *opt=0, double b1=0, double e1=0, double b2=0, double e2=0)
void GetCoeff(int i, double &x, double &y, double &b, double &c, double &d, double &e, double &f)
double Derivative(double x) const
int FindX(double x) const
virtual void SaveAs(const char *filename) const
double Eval(double x) const
TRadSpline5(const char *title, double xmin, double xmax, double y[], int n, const char *opt=0, double b1=0, double e1=0, double b2=0, double e2=0)
void GetKnot(int i, double &x, double &y) const
TRadSpline5(const char *title, double xmin, double xmax, double(*func)(const double &), int n, const char *opt=0, double b1=0, double e1=0, double b2=0, double e2=0)
double Eval(double x) const
TRadSplinePoly3(double x, double y, double b, double c, double d)
double Derivative(double x) const
double Derivative(double x) const
TRadSplinePoly5(double x, double y, double b, double c, double d, double e, double f)
double Eval(double x) const
virtual double Eval(double) const
virtual ~TRadSplinePoly()
void GetKnot(double &x, double &y) const
TRadSplinePoly(double x, double y)
virtual int GetNpx() const
virtual void GetKnot(int i, double &x, double &y) const =0
TRadSpline(const char *title, double delta, double xmin, double xmax, int np, bool step)
virtual void BuildCoeff()=0
virtual double Eval(double x) const =0
virtual void SaveAs(const char *) const