add header files
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / Nuclei / B2 / macros / BetheBlochParams.C
1 /**************************************************************************
2  * Copyright(c) 1998-1999, 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 // macro for Bethe-Bloch parameters
17 // author: Eulogio Serradilla <eulogio.serradilla@cern.ch>
18
19 #if !defined(__CINT__) || defined(__MAKECINT__)
20 #include <TString.h>
21 #endif
22
23 void SetParameters(Double_t* param, Double_t c0, Double_t c1, Double_t c2, Double_t c3, Double_t c4)
24 {
25 //
26 // assign values to an array
27 //
28         param[0] = c0;
29         param[1] = c1;
30         param[2] = c2;
31         param[3] = c3;
32         param[4] = c4;
33 }
34
35 void BetheBlochParams(Double_t* param, const TString& periodname)
36 {
37 //
38 // TPC Bethe Bloch ALEPH paramaters for different beam periods
39 //
40         TString period = periodname;
41         period.ToLower();
42         
43         if(period == "lhc10b_pass2")
44         {
45                 SetParameters(param, 3.22422, 10.9345, 1.26309e-05, 2.26343, 2.43587);
46         }
47         else if(period == "lhc10b" || period == "lhc10b_pass3")
48         {
49                 SetParameters(param, 5.24531, 5.82813, 0.000431522, 2.47198, 1.38539);
50                 
51         }
52         else if(period == "lhc10c900") // pass3
53         {
54                 SetParameters(param, 1.4857, 22.9345, 1.77678e-11, 2.26456, 4.44306);
55         }
56         else if(period == "lhc10c_pass2")
57         {
58                 SetParameters(param, 1.49726, 24.5879, 2.76442e-11, 2.15661, 4.91248);
59         }
60         else if(period == "lhc10c" || period == "lhc10c_pass3")
61         {
62                 SetParameters(param, 7.41249, 5.13753, 0.000738319, 2.55495, 1.33519);
63         }
64         else if(period == "lhc10d" || period == "lhc10e" || period == "lhc10d_pass2" || period == "lhc10e_pass2")
65         {
66                 SetParameters(param, 1.59526, 24.6438, 3.5082e-11, 2.18753, 3.7487);
67         }
68         else if(period == "lhc10h") // heavy ions
69         {
70                 SetParameters(param, 2.77047, 14.6777, 5.62959e-08, 2.30422, 2.35623);
71         }
72         else if(period == "lhc11a" || period == "lhc11a_wsdd" || period == "lhc11a_wosdd") // pp 2.76 TeV
73         {
74                 SetParameters(param, 4.94865, 8.29784, 9.95186e-05, 2.22417, 1.51139);
75         }
76         
77         // simulation
78         
79         else if(period == "lhc10e12" || period == "lhc10e13" || period == "lhc10f6a" || period == "lhc10f6" || period == "lhc10e21")
80         {
81                 SetParameters(param, 1.98509, 16.9132, 2.27954e-10, 2.1544, 3.94486);
82         }
83         else
84         {
85                 SetParameters(param, 4.4194, 7.50931, 1.34e-05, 2.22085, 1.80461);
86         }
87 }