]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALSimParam.cxx
Coverity corrections
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALSimParam.cxx
CommitLineData
33a52e55 1/**************************************************************************
2 * Copyright(c) 2007, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/*
17 //
18 // Base class for the EMCAL simulation parameters.
19 //
20 //
21 */
22
23// --- Root header files ---
24#include "TMath.h"
25// --- AliRoot header files ---
26#include "AliEMCALSimParam.h"
27#include "AliLog.h"
28
29
30ClassImp(AliEMCALSimParam)
31
32AliEMCALSimParam * AliEMCALSimParam::fgSimParam = 0 ;
33//-----------------------------------------------------------------------------
34AliEMCALSimParam::AliEMCALSimParam() :
35TNamed(),
36fDigitThreshold(0),
37fMeanPhotonElectron(0),
38fPinNoise(0),
f0a6dc6f 39fTimeDelay(0),
33a52e55 40fTimeResolution(0),
41//fTimeThreshold(0),
42//fTimeSignalLength(0),
43fNADCEC(0),//Digitizer
44fA(0.),
45fB(0.),
46fECPrimThreshold(0.) //SDigitizer
47{
48 //Constructor
49
50 //Parameters in Digitizer
51 fMeanPhotonElectron = 4400; // electrons per GeV
52 fPinNoise = 0.012; // pin noise in GeV from analysis test beam data
4354827d 53 fDigitThreshold = 3; // 3 ADC counts not anymore cut in energy: //fPinNoise * 3; // 3 * sigma
f0a6dc6f 54 fTimeResolution = 0.6e-9 ; // 600 pc
55 fTimeDelay = 600e-9 ; // 600 nc
56
33a52e55 57 //fTimeSignalLength = 1.0e-9 ;
58 fNADCEC = (Int_t) TMath::Power(2,16) ; // number of channels in Tower ADC - 65536
59 //fTimeThreshold = 0.001*10000000 ; // Means 1 MeV in terms of SDigits amplitude ??
60
61 //SDigitizer
62 fA = 0;
63 fB = 1.e+6; // Dynamic range now 2 TeV
64 fECPrimThreshold = 0.05; // GeV // threshold for deposit energy of hit
65
66}
67
68
69//-----------------------------------------------------------------------------
70AliEMCALSimParam::AliEMCALSimParam(const AliEMCALSimParam& ):
71TNamed(),
72fDigitThreshold(0),
73fMeanPhotonElectron(0),
74fPinNoise(0),
f0a6dc6f 75fTimeDelay(0),
33a52e55 76fTimeResolution(0),
77//fTimeThreshold(0),
78//fTimeSignalLength(0),//Digitizer
79fNADCEC(0),
80fA(0.),
81fB(0.),
82fECPrimThreshold(0.)//SDigitizer
83{
84 //Copy constructor.
85 AliError("Should not use copy constructor for singleton") ;
86
87 fgSimParam = this ;
88
89}
90
91//-----------------------------------------------------------------------------
92AliEMCALSimParam * AliEMCALSimParam::GetInstance(){
93// Get Instance
94
95 if(!fgSimParam){
96 fgSimParam = new AliEMCALSimParam() ;
97 }
98
99 return fgSimParam ;
100
101}
102
103//-----------------------------------------------------------------------------
104AliEMCALSimParam& AliEMCALSimParam::operator = (const AliEMCALSimParam& simParam)
105{
106 //Assignment operator.
107
108 if(this != &simParam) {
109 AliError("Should not use operator= for singleton\n") ;
110 }
111
112 return *this;
113}
114
115//-----------------------------------------------------------------------------
116void AliEMCALSimParam::Print(Option_t *) const
117{
118 // Print simulation parameters to stdout
119
120 printf("=== Parameters in Digitizer === \n");
121 printf("\t Electronics noise in EMC (fPinNoise) = %f\n", fPinNoise) ;
4354827d 122 printf("\t Threshold in EMC (fDigitThreshold) = %d\n", fDigitThreshold) ;
33a52e55 123 printf("\t Time Resolution (fTimeResolution) = %g\n", fTimeResolution) ;
f0a6dc6f 124 printf("\t Time Delay (fTimeDelay) = %g\n", fTimeDelay) ;
4354827d 125 printf("\t Mean Photon-Electron (fMeanPhotonElectron) = %d\n", fMeanPhotonElectron) ;
33a52e55 126 printf("\t N channels in EC section ADC (fNADCEC) = %d\n", fNADCEC) ;
127
128 printf("\n");
129
130 printf("=== Parameters in SDigitizer === \n");
131 printf("\t sdigitization parameters A = %f\n", fA);
132 printf("\t B = %f\n", fB);
133 printf("\t Threshold for EC Primary assignment = %f\n", fECPrimThreshold);
134
135}
136