CMS 3D CMS Logo

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 <ctime>
13 #include "TGraph.h"
14 #include <cstdio>
15 #include <cmath>
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  int nb_lignes;
33  double **coeff;
34 };
35 typedef struct matrice matrice;
36 matrice cree_mat(int, int);
38 void fill_mat(matrice, matrice);
40 
41 #define dimmat 30
42 #define dimout 10
43 #define nbmax_cell 1000
44 
45 class TFParams : public TObject {
46 private:
47  int ns; // number of samples
48  int nsmin; // beginning of fit
49  int nsmax; // end of fit
50  int nevtmax; // number of events to fit
51  double a1ini; // value of alpha at starting point
52  double a2ini; // value of alpha_prim/beta at starting point
53  double a3ini; // value of beta/alpha_prim at starting point
54  double step_shape;
55  double adclu[26];
56  double weight_matrix[10][10];
57  int METHODE;
58 
59 public:
60  TFParams(int size = SDIM2, int size_sh = PLSHDIM);
61  ~TFParams() override{};
62  double fitpj(double **, double *, double **, double noise_val, int debug);
63  void set_const(int, int, int, double, double, int);
68  void somme_mat_int_scale(matrice, matrice, double);
69  void print_mat_nk(matrice, int);
70  void print_mat(matrice);
73  void copie_colonne_mat(matrice, matrice, int);
74  char name_mat[10];
75  void zero_mat(matrice);
76  void zero_mat_nk(matrice, int);
77  double f3deg(int, double parom[dimout], double mask[dimmat], double adcpj[dimmat], double errpj[dimmat][dimmat]);
78  double parab(double *, Int_t, Int_t, double *);
79  Double_t polfit(Int_t ns, Int_t imax, Double_t par3d[dimout], Double_t errpj[dimmat][dimmat], double *);
80  double inverpj(int, double g[dimmat][dimmat], double ginv[dimmat][dimmat]);
81  double inv3x3(double a[3][3], double b[3][3]);
82  double pulseShapepj(Double_t *, Double_t *);
83  double pulseShapepj2(Double_t *, Double_t *);
84  double lastShape(Double_t *, Double_t *);
85  double lastShape2(Double_t *, Double_t *);
86  double mixShape(Double_t *, Double_t *);
87  double computePulseWidth(int, double, double);
88 
89  ClassDefOverride(TFParams, 0)
90 };
91 #endif
TFParams::mixShape
double mixShape(Double_t *, Double_t *)
Definition: TFParams.cc:1128
matrice::nb_lignes
int nb_lignes
Definition: TFParams.h:31
TFParams::~TFParams
~TFParams() override
Definition: TFParams.h:61
TFParams::name_mat
char name_mat[10]
Definition: TFParams.h:74
TFParams::a3ini
double a3ini
Definition: TFParams.h:53
SDIM2
#define SDIM2
Definition: TFParams.h:26
TFParams::a1ini
double a1ini
Definition: TFParams.h:51
TFParams::TFParams
TFParams(int size=10, int size_sh=650)
Definition: TFParams.cc:23
TFParams::a2ini
double a2ini
Definition: TFParams.h:52
TFParams::nevtmax
int nevtmax
Definition: TFParams.h:50
TFParams::nsmax
int nsmax
Definition: TFParams.h:49
TFParams::lastShape
double lastShape(Double_t *, Double_t *)
Definition: TFParams.cc:1026
TFParams::zero_mat_nk
void zero_mat_nk(matrice, int)
Definition: TFParams.cc:703
TFParams::copie_colonne_mat
void copie_colonne_mat(matrice, matrice, int)
Definition: TFParams.cc:579
TFParams::print_mat
void print_mat(matrice)
Definition: TFParams.cc:681
TFParams::lastShape2
double lastShape2(Double_t *, Double_t *)
Definition: TFParams.cc:1041
TFParams::somme_mat_int_scale
void somme_mat_int_scale(matrice, matrice, double)
Definition: TFParams.cc:610
dimmat
#define dimmat
Definition: TFParams.h:41
debug
#define debug
Definition: HDRShower.cc:19
cree_mat_prod
matrice cree_mat_prod(matrice, matrice)
Definition: TFParams.cc:630
TFParams::somme_mat_int
void somme_mat_int(matrice, matrice)
Definition: TFParams.cc:594
TFParams::zero_mat
void zero_mat(matrice)
Definition: TFParams.cc:695
TFParams::adclu
double adclu[26]
Definition: TFParams.h:55
matrice::nb_colonnes
int nb_colonnes
Definition: TFParams.h:32
b
double b
Definition: hdecay.h:118
fill_mat
void fill_mat(matrice, matrice)
Definition: TFParams.cc:667
matrice
Definition: TFParams.h:30
TFParams::step_shape
double step_shape
Definition: TFParams.h:54
TFParams::print_mat_nk
void print_mat_nk(matrice, int)
Definition: TFParams.cc:709
TFParams::weight_matrix
double weight_matrix[10][10]
Definition: TFParams.h:56
a
double a
Definition: hdecay.h:119
TFParams::produit_mat_int
void produit_mat_int(matrice, matrice, matrice)
Definition: TFParams.cc:544
TFParams::inv3x3
double inv3x3(double a[3][3], double b[3][3])
Definition: TFParams.cc:957
fill_mat_int
matrice fill_mat_int(matrice, matrice, matrice)
TFParams::ns
int ns
Definition: TFParams.h:47
TFParams::produit_mat
void produit_mat(matrice, matrice, matrice)
Definition: TFParams.cc:523
TFParams::inverpj
double inverpj(int, double g[30][30], double ginv[30][30])
Definition: TFParams.cc:894
TFParams::parab
double parab(double *, Int_t, Int_t, double *)
Definition: TFParams.cc:1091
TFParams::nsmin
int nsmin
Definition: TFParams.h:48
dimout
#define dimout
Definition: TFParams.h:42
TFParams::computePulseWidth
double computePulseWidth(int, double, double)
Definition: TFParams.cc:1158
TFParams::polfit
Double_t polfit(Int_t ns, Int_t imax, Double_t par3d[10], Double_t errpj[30][30], double *)
Definition: TFParams.cc:759
TFParams::pulseShapepj
double pulseShapepj(Double_t *, Double_t *)
Definition: TFParams.cc:991
TFParams::set_const
void set_const(int, int, int, double, double, int)
Definition: TFParams.cc:509
TFParams::transpose_mat
void transpose_mat(matrice, matrice)
Definition: TFParams.cc:620
TFParams
Definition: TFParams.h:45
matrice::coeff
double ** coeff
Definition: TFParams.h:33
cree_mat
matrice cree_mat(int, int)
Definition: TFParams.cc:648
TFParams::METHODE
int METHODE
Definition: TFParams.h:57
PLSHDIM
#define PLSHDIM
Definition: TFParams.h:27
TFParams::pulseShapepj2
double pulseShapepj2(Double_t *, Double_t *)
Definition: TFParams.cc:1058
TFParams::inverse_mat
void inverse_mat(matrice, matrice)
Definition: TFParams.cc:719
TFParams::f3deg
double f3deg(int, double parom[10], double mask[30], double adcpj[30], double errpj[30][30])
Definition: TFParams.cc:805
TFParams::fitpj
double fitpj(double **, double *, double **, double noise_val, int debug)
Definition: TFParams.cc:34
TFParams::diff_mat
void diff_mat(matrice, matrice, matrice)
Definition: TFParams.cc:562
g
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
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443