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:1043
double a1ini
Definition: TFParams.h:55
~TFParams()
Definition: TFParams.h:66
#define PLSHDIM
Definition: TFParams.h:27
int nsmin
Definition: TFParams.h:52
#define dimmat
Definition: TFParams.h:42
void print_mat_nk(matrice, int)
Definition: TFParams.cc:763
double computePulseWidth(int, double, double)
Definition: TFParams.cc:1223
void somme_mat_int_scale(matrice, matrice, double)
Definition: TFParams.cc:660
void zero_mat(matrice)
Definition: TFParams.cc:749
void produit_mat(matrice, matrice, matrice)
Definition: TFParams.cc:566
double a2ini
Definition: TFParams.h:56
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
double inverpj(int, double g[30][30], double ginv[30][30])
Definition: TFParams.cc:952
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:1151
matrice cree_mat_prod(matrice, matrice)
Definition: TFParams.cc:681
int METHODE
Definition: TFParams.h:61
int nb_lignes
Definition: TFParams.h:32
double f3deg(int, double parom[10], double mask[30], double adcpj[30], double errpj[30][30])
Definition: TFParams.cc:864
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:1116
double a3ini
Definition: TFParams.h:57
void inverse_mat(matrice, matrice)
Definition: TFParams.cc:774
int ns
Definition: TFParams.h:51
void zero_mat_nk(matrice, int)
Definition: TFParams.cc:757
void fill_mat(matrice, matrice)
Definition: TFParams.cc:721
Double_t polfit(Int_t ns, Int_t imax, Double_t par3d[10], Double_t errpj[30][30], double *)
Definition: TFParams.cc:818
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:1080
double adclu[26]
Definition: TFParams.h:59
double a
Definition: hdecay.h:121
void produit_mat_int(matrice, matrice, matrice)
Definition: TFParams.cc:588
double mixShape(Double_t *, Double_t *)
Definition: TFParams.cc:1190
void diff_mat(matrice, matrice, matrice)
Definition: TFParams.cc:607
double lastShape2(Double_t *, Double_t *)
Definition: TFParams.cc:1097
#define debug
Definition: MEtoEDMFormat.h:34
double inv3x3(double a[3][3], double b[3][3])
Definition: TFParams.cc:1014
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
TFParams(int size=10, int size_sh=650)
Definition: TFParams.cc:25
double weight_matrix[10][10]
Definition: TFParams.h:60