Logo ROOT   6.08/07
Reference Guide
TSpline2.h
Go to the documentation of this file.
1 // @(#)root/tmva $Id$
2 // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
3 
4 /**********************************************************************************
5  * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
6  * Package: TMVA *
7  * Class : TSpline2 *
8  * Web : http://tmva.sourceforge.net *
9  * *
10  * Description: *
11  * Quadratic spline class; uses quadrax function for interpolation *
12  * *
13  * Authors (alphabetical): *
14  * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
15  * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, Germany *
16  * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
17  * *
18  * Copyright (c) 2005: *
19  * CERN, Switzerland *
20  * U. of Victoria, Canada *
21  * MPI-K Heidelberg, Germany *
22  * *
23  * Redistribution and use in source and binary forms, with or without *
24  * modification, are permitted according to the terms listed in LICENSE *
25  * (http://tmva.sourceforge.net/LICENSE) *
26  **********************************************************************************/
27 
28 #ifndef ROOT_TMVA_TSpline2
29 #define ROOT_TMVA_TSpline2
30 
31 //////////////////////////////////////////////////////////////////////////
32 // //
33 // TSpline2 //
34 // //
35 // Quadratic interpolation class (using quadrax) //
36 // //
37 //////////////////////////////////////////////////////////////////////////
38 
39 #ifndef ROOT_TSpline
40 #include "TSpline.h"
41 #endif
42 
43 namespace TMVA {
44 
45  class TSpline2 : public TSpline {
46 
47  public:
48 
49  TSpline2( const TString& title, TGraph* theGraph );
50  virtual ~TSpline2( void );
51 
52  virtual Double_t Eval( Double_t x ) const;
53 
54  // dummy implementations
55  virtual void BuildCoeff( void );
56  virtual void GetKnot( Int_t i, Double_t& x, Double_t& y ) const;
57 
58  private:
59 
60  TGraph *fGraph; // graph that is splined
62  Float_t dm2, Float_t dm3,
63  Float_t cos1, Float_t cos2,
64  Float_t cos3 ) const;
65 
66  ClassDef(TSpline2,0); //Quadratic interpolation class (using quadrax)
67  };
68 
69 } // namespace TMVA
70 
71 #endif
72 
73 
virtual void GetKnot(Int_t i, Double_t &x, Double_t &y) const
no knots
Definition: TSpline2.cxx:129
float Float_t
Definition: RtypesCore.h:53
Base class for spline implementation containing the Draw/Paint methods //.
Definition: TSpline.h:22
virtual void BuildCoeff(void)
no coefficients to precompute
Definition: TSpline2.cxx:122
Basic string class.
Definition: TString.h:137
TGraph * fGraph
Definition: TSpline2.h:60
int Int_t
Definition: RtypesCore.h:41
Double_t x[n]
Definition: legend1.C:17
#define ClassDef(name, id)
Definition: Rtypes.h:254
virtual Double_t Eval(Double_t x) const
returns quadratically interpolated TGraph entry around x
Definition: TSpline2.cxx:62
double Double_t
Definition: RtypesCore.h:55
virtual ~TSpline2(void)
destructor
Definition: TSpline2.cxx:54
Double_t y[n]
Definition: legend1.C:17
Double_t Quadrax(Float_t dm, Float_t dm1, Float_t dm2, Float_t dm3, Float_t cos1, Float_t cos2, Float_t cos3) const
quadratic interpolation Revised and checked by Francois Nov, 16th, 2000 Note the beautiful non-sponta...
Definition: TSpline2.cxx:140
Abstract ClassifierFactory template that handles arbitrary types.
A Graph is a graphics object made of two arrays X and Y with npoints each.
Definition: TGraph.h:53
TSpline2(const TString &title, TGraph *theGraph)
constructor from TGraph TSpline is a TNamed object
Definition: TSpline2.cxx:45