Constants.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \namespace genie::constants
5 
6 \brief Basic constants
7 
8 \author Costas Andreopoulos <costas.andreopoulos \at stfc.ac.uk>
9  University of Liverpool & STFC Rutherford Appleton Lab
10 
11 \created May 03, 2004
12 
13 \cpright Copyright (c) 2003-2019, The GENIE Collaboration
14  For the full text of the license visit http://copyright.genie-mc.org
15  or see $GENIE/LICENSE
16 */
17 //____________________________________________________________________________
18 
19 #ifndef _CONSTANTS_H_
20 #define _CONSTANTS_H_
21 
22 #include <TMath.h>
23 
25 
26 namespace genie {
27 namespace constants {
28 
29 //
30 // Fundamental constants
31 //
32 static const double kLightSpeed = 1.;
33 static const double kPlankConstant = 1.;
34 
35 //
36 // pi, e,...
37 //
38 static const double kPi = TMath::Pi();
39 static const double kPi2 = TMath::Power(kPi,2);
40 static const double kPi3 = TMath::Power(kPi,3);
41 static const double kPi4 = TMath::Power(kPi,4);
42 static const double kSqrtPi= TMath::Sqrt(kPi);
43 
44 static const double kNapierConst = TMath::E();
45 static const double kSqrtNapierConst = TMath::Sqrt(kNapierConst);
46 
47 //
48 // Avogadro number, compton wavelength and such...
49 //
50 static const double kNA = 6.02214179E+23;
51 static const double kLe = 3.8616E-11 *units::cm;
52 static const double kLe2 = TMath::Power(kLe,2);
53 
54 //
55 // Coupling constants
56 //
57 static const double kAem = 1./137.03599976; // EM coupling const, dimensionless
58 static const double kAem2 = TMath::Power(kAem,2);
59 static const double kGF = 1.16639E-5; // Fermi const from b-decay, in GeV^-2
60 static const double kGF2 = TMath::Power(kGF,2);
61 
62 //
63 // Masses
64 //
65 // For simplicity, the most commonly used particle masses defined here.
66 // In general, however, particle masses in GENIE classes should be obtained
67 // through the genie::PDGLibrary as shown below:
68 // double mass = PDGLibrary::Instance()->Find(pdg_code)->Mass();
69 // For consistency, the values below must match whatever is used in PDGLibrary.
70 //
71 static const double kElectronMass = 5.109989461e-04; // GeV
72 static const double kMuonMass = 1.056583745e-01; // GeV
73 static const double kTauMass = 1.77686e+00; // GeV
74 static const double kPionMass = 1.3957018e-01; // GeV
75 static const double kPi0Mass = 1.349766e-01; // GeV
76 static const double kProtonMass = 9.38272081e-01; // GeV
77 static const double kNeutronMass = 9.39565413e-01; // GeV
78 static const double kNucleonMass = (kProtonMass+kNeutronMass)/2.; //GeV
79 static const double kLightestChmHad = 1.870; // GeV ~lightest charm hadron+
80 static const double kPhotontest = 1E-6; // GeV
81 
82 
83 
84 static const double kElectronMass2 = TMath::Power(kElectronMass,2); // GeV^2
85 static const double kMuonMass2 = TMath::Power(kMuonMass,2); // GeV^2
86 static const double kTauMass2 = TMath::Power(kTauMass,2); // GeV^2
87 static const double kPionMass2 = TMath::Power(kPionMass,2); // GeV^2
88 static const double kProtonMass2 = TMath::Power(kProtonMass,2); // GeV^2
89 static const double kNeutronMass2 = TMath::Power(kNeutronMass,2); // GeV^2
90 static const double kNucleonMass2 = TMath::Power(kNucleonMass,2); // GeV^2
91 
92 static const double kMw = 8.0385e+01; // GeV - W boson mass
93 static const double kMz = 9.11876e+01; // GeV - Z boson mass
94 static const double kMw2 = TMath::Power(kMw,2); // GeV^2
95 static const double kMz2 = TMath::Power(kMz,2); // GeV^2
96 
97 //
98 // Misc constants for empirical formulas
99 //
100 static const double kNucRo = 1.2E-15 * units::m; // Ro in nuclear radius formula R=Ro*A^(1/3), in GeV^-1
101 static const double kNucDensity = 2.3E+17 * units::kg/units::m3; // Nuclear density (in nuclear core), in GeV^4
102 
103 
104 //FMTOGEV
105 static const double FMTOGEV= 5.0761421;
106 
107 
108 //
109 // Earth consts
110 //
111 static const double kREarth = 6371 * units::km;
112 
113 //
114 // Sqrts frequently encountered in helicity amplitude calculations
115 //
116 static const double kSqrt2 = 1.4142136;
117 static const double kSqrt3 = 1.7320508;
118 static const double kSqrt4 = 2.0;
119 static const double kSqrt5 = 2.236068;
120 static const double kSqrt6 = 2.4494897;
121 static const double kSqrt7 = 2.6457513;
122 static const double kSqrt8 = 2.8284271;
123 static const double kSqrt9 = 3.0;
124 static const double kSqrt10 = 3.1622777;
125 static const double kSqrt12 = 3.4641016;
126 static const double kSqrt15 = 3.8729833;
127 static const double kSqrt18 = 4.2426407;
128 static const double kSqrt20 = 4.472136;
129 static const double kSqrt24 = 4.8989795;
130 static const double kSqrt27 = 5.1961524;
131 static const double kSqrt30 = 5.4772256;
132 static const double kSqrt35 = 5.9160798;
133 static const double kSqrt40 = 6.3245553;
134 static const double kSqrt60 = 7.7459667;
135 static const double kSqrt120 = 10.954451;
136 static const double k1_Sqrt2 = 0.70710678;
137 static const double k1_Sqrt3 = 0.57735027;
138 static const double k1_Sqrt5 = 0.44721360;
139 static const double k1_Sqrt6 = 0.40824829;
140 static const double k1_Sqrt7 = 0.37796447;
141 static const double k1_Sqrt10 = 0.31622777;
142 static const double k1_Sqrt15 = 0.25819889;
143 static const double k1_Sqrt24 = 0.20412415;
144 static const double k1_Sqrt30 = 0.18257419;
145 static const double k1_Sqrt35 = 0.16903085;
146 static const double k1_Sqrt60 = 0.12909944;
147 static const double k1_Sqrt120 = 0.091287093;
148 static const double k2_Sqrt3 = 1.1547005;
149 static const double k2_Sqrt5 = 0.89442719;
150 static const double k2_Sqrt15 = 0.51639778;
151 static const double k2_Sqrt35 = 0.3380617;
152 static const double k3_Sqrt2 = 2.1213203;
153 static const double k3_Sqrt5 = 1.3416408;
154 static const double k3_Sqrt10 = 0.9486833;
155 static const double k3_Sqrt20 = 0.67082039;
156 static const double k3_Sqrt40 = 0.47434165;
157 static const double kSqrt2_3 = 0.81649658;
158 static const double kSqrt2_5 = 0.63245553;
159 static const double kSqrt2_6 = 0.57735027;
160 static const double kSqrt2_7 = 0.53452248;
161 static const double kSqrt2_15 = 0.36514837;
162 static const double kSqrt3_2 = 1.2247449;
163 static const double kSqrt3_4 = 0.8660254;
164 static const double kSqrt3_5 = 0.77459667;
165 static const double kSqrt3_8 = 0.61237244;
166 static const double kSqrt3_10 = 0.54772256;
167 static const double kSqrt3_18 = 0.40824829;
168 static const double kSqrt3_20 = 0.38729833;
169 static const double kSqrt3_35 = 0.29277002;
170 static const double kSqrt3_40 = 0.27386128;
171 static const double kSqrt4_15 = 0.51639778;
172 static const double kSqrt5_2 = 1.5811388;
173 static const double kSqrt5_3 = 1.2909944;
174 static const double kSqrt5_8 = 0.79056942;
175 static const double kSqrt5_12 = 0.64549722;
176 static const double kSqrt6_5 = 1.0954451;
177 static const double kSqrt6_35 = 0.41403934;
178 static const double kSqrt9_10 = 0.9486833;
179 static const double kSqrt9_40 = 0.47434165;
180 static const double kSqrt18_5 = 1.8973666;
181 static const double kSqrt18_20 = 0.9486833;
182 static const double kSqrt18_35 = 0.71713717;
183 static const double kSqrt24_35 = 0.82807867;
184 static const double kSqrt27_10 = 1.6431677;
185 static const double kSqrt27_40 = 0.82158384;
186 
187 } // namespace constants
188 } // namespace genie
189 
190 #endif // _CONSTANTS_H_
191 
192 
static const double k3_Sqrt10
Definition: Constants.h:154
static const double kSqrt3_40
Definition: Constants.h:170
static const double kSqrt35
Definition: Constants.h:132
static const double kSqrt3
Definition: Constants.h:117
static const double kSqrt60
Definition: Constants.h:134
static const double m
Definition: Units.h:79
static const double kg
Definition: Units.h:144
static const double kSqrt5_3
Definition: Constants.h:173
static const double kNapierConst
Definition: Constants.h:44
static const double kSqrt10
Definition: Constants.h:124
static const double kSqrt7
Definition: Constants.h:121
static const double kSqrt2
Definition: Constants.h:116
static const double kSqrt15
Definition: Constants.h:126
static const double kMw2
Definition: Constants.h:94
THE MAIN GENIE PROJECT NAMESPACE
Definition: GeneratorBase.h:8
static const double kSqrt18
Definition: Constants.h:127
static const double kLe2
Definition: Constants.h:52
static const double kNucleonMass
Definition: Constants.h:78
static const double kSqrtNapierConst
Definition: Constants.h:45
static const double kLe
Definition: Constants.h:51
static const double kPi0Mass
Definition: Constants.h:75
static const double kSqrt2_15
Definition: Constants.h:161
static const double kMz2
Definition: Constants.h:95
static const double kSqrt6
Definition: Constants.h:120
static const double kSqrtPi
Definition: Constants.h:42
static const double k1_Sqrt5
Definition: Constants.h:138
static const double kPhotontest
Definition: Constants.h:80
static const double kSqrt3_4
Definition: Constants.h:163
static const double k1_Sqrt10
Definition: Constants.h:141
static const double kLightestChmHad
Definition: Constants.h:79
static const double kSqrt40
Definition: Constants.h:133
static const double kSqrt9_40
Definition: Constants.h:179
static const double k1_Sqrt3
Definition: Constants.h:137
static const double k1_Sqrt6
Definition: Constants.h:139
static const double k2_Sqrt5
Definition: Constants.h:149
static const double FMTOGEV
Definition: Constants.h:105
static const double kElectronMass
Definition: Constants.h:71
static const double kSqrt27_40
Definition: Constants.h:185
static const double kSqrt9_10
Definition: Constants.h:178
static const double kSqrt5_12
Definition: Constants.h:175
static const double kTauMass
Definition: Constants.h:73
static const double k3_Sqrt2
Definition: Constants.h:152
static const double kAem
Definition: Constants.h:57
static const double km
Definition: Units.h:72
static const double kSqrt12
Definition: Constants.h:125
static const double kPi3
Definition: Constants.h:40
static const double kMz
Definition: Constants.h:93
static const double kSqrt9
Definition: Constants.h:123
static const double kSqrt4
Definition: Constants.h:118
static const double kElectronMass2
Definition: Constants.h:84
static const double k1_Sqrt120
Definition: Constants.h:147
Float_t E
Definition: plot.C:20
static const double kSqrt24_35
Definition: Constants.h:183
static const double kAem2
Definition: Constants.h:58
static const double kSqrt30
Definition: Constants.h:131
static const double kTauMass2
Definition: Constants.h:86
static const double kSqrt18_20
Definition: Constants.h:181
static const double kSqrt5
Definition: Constants.h:119
static const double kMuonMass2
Definition: Constants.h:85
static const double kSqrt2_7
Definition: Constants.h:160
static const double kSqrt3_35
Definition: Constants.h:169
static const double kNeutronMass
Definition: Constants.h:77
static const double k3_Sqrt40
Definition: Constants.h:156
static const double k1_Sqrt35
Definition: Constants.h:145
static const double kSqrt120
Definition: Constants.h:135
static const double kNA
Definition: Constants.h:50
static const double kSqrt20
Definition: Constants.h:128
static const double kSqrt3_10
Definition: Constants.h:166
static const double kGF
Definition: Constants.h:59
static const double kSqrt27
Definition: Constants.h:130
static const double kSqrt3_5
Definition: Constants.h:164
static const double k1_Sqrt24
Definition: Constants.h:143
static const double kNucleonMass2
Definition: Constants.h:90
static const double kSqrt3_8
Definition: Constants.h:165
static const double kSqrt3_2
Definition: Constants.h:162
static const double kNucDensity
Definition: Constants.h:101
static const double k2_Sqrt3
Definition: Constants.h:148
static const double kLightSpeed
Definition: Constants.h:32
static const double kSqrt4_15
Definition: Constants.h:171
static const double kMw
Definition: Constants.h:92
static const double kSqrt8
Definition: Constants.h:122
static const double k1_Sqrt15
Definition: Constants.h:142
static const double kSqrt5_2
Definition: Constants.h:172
static const double kSqrt24
Definition: Constants.h:129
static const double kNucRo
Definition: Constants.h:100
static const double kMuonMass
Definition: Constants.h:72
static const double kREarth
Definition: Constants.h:111
static const double kPionMass
Definition: Constants.h:74
static const double kSqrt5_8
Definition: Constants.h:174
Var Sqrt(const Var &v)
Use to take sqrt of a var.
Definition: Var.cxx:326
static const double k3_Sqrt5
Definition: Constants.h:153
static const double kSqrt2_5
Definition: Constants.h:158
static const double kSqrt18_5
Definition: Constants.h:180
static const double kSqrt27_10
Definition: Constants.h:184
static const double kSqrt2_3
Definition: Constants.h:157
static const double k3_Sqrt20
Definition: Constants.h:155
static const double cm
Definition: Units.h:76
static const double k1_Sqrt60
Definition: Constants.h:146
static const double kPi4
Definition: Constants.h:41
static const double k2_Sqrt15
Definition: Constants.h:150
static const double kProtonMass2
Definition: Constants.h:88
static const double k2_Sqrt35
Definition: Constants.h:151
static const double kSqrt6_5
Definition: Constants.h:176
static const double kGF2
Definition: Constants.h:60
static const double m3
Definition: Units.h:81
static const double k1_Sqrt2
Definition: Constants.h:136
static const double kNeutronMass2
Definition: Constants.h:89
static const double kPlankConstant
Definition: Constants.h:33
static const double kPi
Definition: Constants.h:38
static const double k1_Sqrt30
Definition: Constants.h:144
static const double kProtonMass
Definition: Constants.h:76
static const double kSqrt3_20
Definition: Constants.h:168
static const double kPi2
Definition: Constants.h:39
static const double kSqrt3_18
Definition: Constants.h:167
static const double k1_Sqrt7
Definition: Constants.h:140
static const double kSqrt6_35
Definition: Constants.h:177
static const double kSqrt2_6
Definition: Constants.h:159
static const double kSqrt18_35
Definition: Constants.h:182
static const double kPionMass2
Definition: Constants.h:87