CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TFParams.h
Go to the documentation of this file.
1 #ifndef TFParams_h
2 #define TFParams_h
3 #include "TROOT.h"
4 #include "TObject.h"
5 #include "TArrayI.h"
6 #include "TArrayD.h"
7 #include "TArrayC.h"
8 #include "TCanvas.h"
9 #include "TDirectory.h"
10 #include "TPaveLabel.h"
11 #include "TF1.h"
12 #include "time.h"
13 #include "TGraph.h"
14 #include <stdio.h>
15 #include <math.h>
16 #include "TH2.h"
17 #include "TH1.h"
18 #include "TStyle.h"
19 #include "TCanvas.h"
20 #include "TPaveText.h"
21 #include "TPaveLabel.h"
22 #include "TProfile.h"
23 #include "TVirtualX.h"
24 #include "TObject.h"
25 //#include "TMatrixD.h"
26 #define SDIM2 10 /* number of samples for cristal */
27 #define PLSHDIM 650 /* size of the pulse shape array */
28 //double pulseShape( Double_t x[1], Double_t par[4] ) ;
29 //
30  struct matrice
31 {
32  int nb_lignes ;
34  double **coeff ;
35 };
36  typedef struct matrice matrice ;
37  matrice cree_mat(int,int) ;
39  void fill_mat(matrice,matrice) ;
41 
42 #define dimmat 30
43 #define dimout 10
44 #define nbmax_cell 1000
45 
46 
47  class TFParams : public TObject {
48 
49  private:
50 
51  int ns ; // number of samples
52  int nsmin ; // beginning of fit
53  int nsmax ; // end of fit
54  int nevtmax ; // number of events to fit
55  double a1ini ; // value of alpha at starting point
56  double a2ini ; // value of alpha_prim/beta at starting point
57  double a3ini ; // value of beta/alpha_prim at starting point
58  double step_shape ;
59  double adclu[26] ;
60  double weight_matrix[10][10];
61  int METHODE ;
62 
63  public:
64 
65  TFParams( int size = SDIM2, int size_sh = PLSHDIM );
67 double fitpj(double **, double *,double ** , double noise_val, int debug) ;
68  void set_const( int ,int ,int ,double ,double ,int);
73  void somme_mat_int_scale(matrice,matrice,double) ;
74  void print_mat_nk(matrice,int) ;
75  void print_mat(matrice) ;
79  char name_mat[10] ;
80  void zero_mat(matrice) ;
81  void zero_mat_nk(matrice,int) ;
82  double f3deg(int , double parom[dimout] , double mask[dimmat] ,
83  double adcpj[dimmat] , double errpj[dimmat][dimmat]) ;
84  double parab(double *,Int_t,Int_t,double *) ;
85  Double_t polfit(Int_t ns ,Int_t imax , Double_t par3d[dimout] ,
86  Double_t errpj[dimmat][dimmat] ,double * ) ;
87  double inverpj(int,double g[dimmat][dimmat],double ginv[dimmat][dimmat]);
88  double inv3x3(double a[3][3] , double b[3][3] ) ;
89  double pulseShapepj( Double_t *, Double_t * ) ;
90  double pulseShapepj2( Double_t *, Double_t * ) ;
91  double lastShape( Double_t *, Double_t * ) ;
92  double lastShape2( Double_t *, Double_t * ) ;
93  double mixShape( Double_t *, Double_t * ) ;
94  double computePulseWidth( int, double, double) ;
95 
96  // ClassDef( TFParams, 1 )
97 };
98 #endif
int nsmax
Definition: TFParams.h:53
double pulseShapepj(Double_t *, Double_t *)
Definition: TFParams.cc:1046
double a1ini
Definition: TFParams.h:55
~TFParams()
Definition: TFParams.h:66
#define PLSHDIM
Definition: TFParams.h:27
int nsmin
Definition: TFParams.h:52
Double_t polfit(Int_t ns, Int_t imax, Double_t par3d[dimout], Double_t errpj[dimmat][dimmat], double *)
Definition: TFParams.cc:821
#define dimmat
Definition: TFParams.h:42
void print_mat_nk(matrice, int)
Definition: TFParams.cc:766
double computePulseWidth(int, double, double)
Definition: TFParams.cc:1226
void somme_mat_int_scale(matrice, matrice, double)
Definition: TFParams.cc:660
void zero_mat(matrice)
Definition: TFParams.cc:752
void produit_mat(matrice, matrice, matrice)
Definition: TFParams.cc:566
double a2ini
Definition: TFParams.h:56
double inverpj(int, double g[dimmat][dimmat], double ginv[dimmat][dimmat])
Definition: TFParams.cc:955
double ** coeff
Definition: TFParams.h:34
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
void somme_mat_int(matrice, matrice)
Definition: TFParams.cc:643
int nevtmax
Definition: TFParams.h:54
#define SDIM2
Definition: TFParams.h:26
void print_mat(matrice)
Definition: TFParams.cc:736
void transpose_mat(matrice, matrice)
Definition: TFParams.cc:670
matrice fill_mat_int(matrice, matrice, matrice)
char name_mat[10]
Definition: TFParams.h:79
void set_const(int, int, int, double, double, int)
Definition: TFParams.cc:552
double parab(double *, Int_t, Int_t, double *)
Definition: TFParams.cc:1154
matrice cree_mat_prod(matrice, matrice)
Definition: TFParams.cc:681
int METHODE
Definition: TFParams.h:61
int nb_lignes
Definition: TFParams.h:32
void copie_colonne_mat(matrice, matrice, int)
Definition: TFParams.cc:626
matrice cree_mat(int, int)
Definition: TFParams.cc:701
double pulseShapepj2(Double_t *, Double_t *)
Definition: TFParams.cc:1119
double a3ini
Definition: TFParams.h:57
void inverse_mat(matrice, matrice)
Definition: TFParams.cc:777
int ns
Definition: TFParams.h:51
double f3deg(int, double parom[dimout], double mask[dimmat], double adcpj[dimmat], double errpj[dimmat][dimmat])
Definition: TFParams.cc:867
void zero_mat_nk(matrice, int)
Definition: TFParams.cc:760
void fill_mat(matrice, matrice)
Definition: TFParams.cc:721
double b
Definition: hdecay.h:120
int nb_colonnes
Definition: TFParams.h:33
double step_shape
Definition: TFParams.h:58
double lastShape(Double_t *, Double_t *)
Definition: TFParams.cc:1083
double adclu[26]
Definition: TFParams.h:59
double a
Definition: hdecay.h:121
void produit_mat_int(matrice, matrice, matrice)
Definition: TFParams.cc:588
TFParams(int size=SDIM2, int size_sh=PLSHDIM)
Definition: TFParams.cc:25
double mixShape(Double_t *, Double_t *)
Definition: TFParams.cc:1193
void diff_mat(matrice, matrice, matrice)
Definition: TFParams.cc:607
double lastShape2(Double_t *, Double_t *)
Definition: TFParams.cc:1100
#define debug
Definition: MEtoEDMFormat.h:34
double inv3x3(double a[3][3], double b[3][3])
Definition: TFParams.cc:1017
double fitpj(double **, double *, double **, double noise_val, int debug)
Definition: TFParams.cc:38
tuple size
Write out results.
#define dimout
Definition: TFParams.h:43
double weight_matrix[10][10]
Definition: TFParams.h:60