Gaudi Framework, version v23r5
Home
Generated: Wed Nov 28 2012
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
GaudiKernel
GaudiKernel
SystemOfUnits.h
Go to the documentation of this file.
1
// -*- C++ -*-
2
// $Id: SystemOfUnits.h,v 1.3 2007/09/24 15:11:47 hmd Exp $
3
// ----------------------------------------------------------------------
4
// HEP coherent system of Units
5
//
6
// This file has been provided to CLHEP by Geant4 (simulation toolkit for HEP).
7
//
8
// The basic units are :
9
// millimeter (millimeter)
10
// nanosecond (nanosecond)
11
// Mega electron Volt (MeV)
12
// positron charge (eplus)
13
// degree Kelvin (kelvin)
14
// the amount of substance (mole)
15
// luminous intensity (candela)
16
// radian (radian)
17
// steradian (steradian)
18
//
19
// Below is a non exhaustive list of derived and pratical units
20
// (i.e. mostly the SI units).
21
// You can add your own units.
22
//
23
// The SI numerical value of the positron charge is defined here,
24
// as it is needed for conversion factor : positron charge = e_SI (coulomb)
25
//
26
// The others physical constants are defined in the header file :
27
// PhysicalConstants.h
28
//
29
// Authors: M.Maire, S.Giani
30
//
31
// History:
32
//
33
// 06.02.96 Created.
34
// 28.03.96 Added miscellaneous constants.
35
// 05.12.97 E.Tcherniaev: Redefined pascal (to avoid warnings on WinNT)
36
// 20.05.98 names: meter, second, gram, radian, degree
37
// (from Brian.Lasiuk@yale.edu (STAR)). Added luminous units.
38
// 05.08.98 angstrom, picobarn, microsecond, picosecond, petaelectronvolt
39
// 01.03.01 parsec
40
// 28.04.06 import from CLHEP to GaudiKernel -- HD
41
// 11.05.06 Rename pascal to Pa to avoid warnings on Windows - MC
42
43
#ifndef GAUDI_SYSTEM_OF_UNITS_H
44
#define GAUDI_SYSTEM_OF_UNITS_H
45
46
47
namespace
Gaudi
{
48
namespace
Units {
49
50
//
51
// Length [L]
52
//
53
static
const
double
millimeter
= 1.;
54
static
const
double
millimeter2
=
millimeter
*
millimeter
;
55
static
const
double
millimeter3
=
millimeter
*
millimeter
*
millimeter
;
56
57
static
const
double
centimeter
= 10.*
millimeter
;
58
static
const
double
centimeter2
=
centimeter
*
centimeter
;
59
static
const
double
centimeter3
=
centimeter
*
centimeter
*
centimeter
;
60
61
static
const
double
meter
= 1000.*
millimeter
;
62
static
const
double
meter2
=
meter
*
meter
;
63
static
const
double
meter3
=
meter
*
meter
*
meter
;
64
65
static
const
double
kilometer
= 1000.*
meter
;
66
static
const
double
kilometer2
=
kilometer
*
kilometer
;
67
static
const
double
kilometer3
=
kilometer
*
kilometer
*
kilometer
;
68
69
static
const
double
parsec
= 3.0856775807e+16*
meter
;
70
71
static
const
double
micrometer
= 1.e-6 *
meter
;
72
static
const
double
nanometer
= 1.e-9 *
meter
;
73
static
const
double
angstrom
= 1.e-10*
meter
;
74
static
const
double
fermi
= 1.e-15*
meter
;
75
76
static
const
double
barn
= 1.e-28*
meter2
;
77
static
const
double
millibarn
= 1.e-3 *
barn
;
78
static
const
double
microbarn
= 1.e-6 *
barn
;
79
static
const
double
nanobarn
= 1.e-9 *
barn
;
80
static
const
double
picobarn
= 1.e-12*
barn
;
81
82
// symbols
83
static
const
double
nm
=
nanometer
;
84
static
const
double
um
=
micrometer
;
85
86
static
const
double
mm
=
millimeter
;
87
static
const
double
mm2
=
millimeter2
;
88
static
const
double
mm3
=
millimeter3
;
89
90
static
const
double
cm
=
centimeter
;
91
static
const
double
cm2
=
centimeter2
;
92
static
const
double
cm3
=
centimeter3
;
93
94
static
const
double
m
=
meter
;
95
static
const
double
m2
=
meter2
;
96
static
const
double
m3
=
meter3
;
97
98
static
const
double
km
=
kilometer
;
99
static
const
double
km2
=
kilometer2
;
100
static
const
double
km3
=
kilometer3
;
101
102
static
const
double
pc
=
parsec
;
103
104
//
105
// Angle
106
//
107
static
const
double
radian
= 1.;
108
static
const
double
milliradian
= 1.e-3*
radian
;
109
static
const
double
degree
= (3.14159265358979323846/180.0)*
radian
;
110
111
static
const
double
steradian
= 1.;
112
113
// symbols
114
static
const
double
rad
=
radian
;
115
static
const
double
mrad
=
milliradian
;
116
static
const
double
sr
=
steradian
;
117
static
const
double
deg
=
degree
;
118
119
//
120
// Time [T]
121
//
122
static
const
double
nanosecond
= 1.;
123
static
const
double
second
= 1.e+9 *
nanosecond
;
124
static
const
double
millisecond
= 1.e-3 *
second
;
125
static
const
double
microsecond
= 1.e-6 *
second
;
126
static
const
double
picosecond
= 1.e-12*
second
;
127
static
const
double
femtosecond
= 1.e-15*
second
;
128
129
static
const
double
hertz
= 1./
second
;
130
static
const
double
kilohertz
= 1.e+3*
hertz
;
131
static
const
double
megahertz
= 1.e+6*
hertz
;
132
133
// symbols
134
static
const
double
ns
=
nanosecond
;
135
static
const
double
s
=
second
;
136
static
const
double
ms
=
millisecond
;
137
138
//
139
// Electric charge [Q]
140
//
141
static
const
double
eplus
= 1. ;
// positron charge
142
static
const
double
e_SI
= 1.60217733e-19;
// positron charge in coulomb
143
static
const
double
coulomb
=
eplus
/
e_SI
;
// coulomb = 6.24150 e+18 * eplus
144
145
//
146
// Energy [E]
147
//
148
static
const
double
megaelectronvolt
= 1. ;
149
static
const
double
electronvolt
= 1.e-6*
megaelectronvolt
;
150
static
const
double
kiloelectronvolt
= 1.e-3*
megaelectronvolt
;
151
static
const
double
gigaelectronvolt
= 1.e+3*
megaelectronvolt
;
152
static
const
double
teraelectronvolt
= 1.e+6*
megaelectronvolt
;
153
static
const
double
petaelectronvolt
= 1.e+9*
megaelectronvolt
;
154
155
static
const
double
joule
=
electronvolt
/
e_SI
;
// joule = 6.24150 e+12 * MeV
156
157
// symbols
158
static
const
double
MeV
=
megaelectronvolt
;
159
static
const
double
eV
=
electronvolt
;
160
static
const
double
keV
=
kiloelectronvolt
;
161
static
const
double
GeV
=
gigaelectronvolt
;
162
static
const
double
TeV
=
teraelectronvolt
;
163
static
const
double
PeV
=
petaelectronvolt
;
164
165
//
166
// Mass [E][T^2][L^-2]
167
//
168
static
const
double
kilogram
=
joule
*
second
*
second
/(
meter
*
meter
);
169
static
const
double
gram
= 1.e-3*
kilogram
;
170
static
const
double
milligram
= 1.e-3*
gram
;
171
172
// symbols
173
static
const
double
kg
=
kilogram
;
174
static
const
double
g
=
gram
;
175
static
const
double
mg
=
milligram
;
176
177
//
178
// Power [E][T^-1]
179
//
180
static
const
double
watt
=
joule
/
second
;
// watt = 6.24150 e+3 * MeV/ns
181
182
//
183
// Force [E][L^-1]
184
//
185
static
const
double
newton
=
joule
/
meter
;
// newton = 6.24150 e+9 * MeV/mm
186
187
//
188
// Pressure [E][L^-3]
189
//
190
static
const
double
Pa
=
newton
/
m2
;
// pascal = 6.24150 e+3 * MeV/mm3
191
static
const
double
bar
= 100000*
Pa
;
// bar = 6.24150 e+8 * MeV/mm3
192
static
const
double
atmosphere
= 101325*
Pa
;
// atm = 6.32420 e+8 * MeV/mm3
193
194
//
195
// Electric current [Q][T^-1]
196
//
197
static
const
double
ampere
=
coulomb
/
second
;
// ampere = 6.24150 e+9 * eplus/ns
198
static
const
double
milliampere
= 1.e-3*
ampere
;
199
static
const
double
microampere
= 1.e-6*
ampere
;
200
static
const
double
nanoampere
= 1.e-9*
ampere
;
201
202
//
203
// Electric potential [E][Q^-1]
204
//
205
static
const
double
megavolt
=
megaelectronvolt
/
eplus
;
206
static
const
double
kilovolt
= 1.e-3*
megavolt
;
207
static
const
double
volt
= 1.e-6*
megavolt
;
208
209
//
210
// Electric resistance [E][T][Q^-2]
211
//
212
static
const
double
ohm
=
volt
/
ampere
;
// ohm = 1.60217e-16*(MeV/eplus)/(eplus/ns)
213
214
//
215
// Electric capacitance [Q^2][E^-1]
216
//
217
static
const
double
farad
=
coulomb
/
volt
;
// farad = 6.24150e+24 * eplus/Megavolt
218
static
const
double
millifarad
= 1.e-3*
farad
;
219
static
const
double
microfarad
= 1.e-6*
farad
;
220
static
const
double
nanofarad
= 1.e-9*
farad
;
221
static
const
double
picofarad
= 1.e-12*
farad
;
222
223
//
224
// Magnetic Flux [T][E][Q^-1]
225
//
226
static
const
double
weber
=
volt
*
second
;
// weber = 1000*megavolt*ns
227
228
//
229
// Magnetic Field [T][E][Q^-1][L^-2]
230
//
231
static
const
double
tesla
=
volt
*
second
/
meter2
;
// tesla =0.001*megavolt*ns/mm2
232
233
static
const
double
gauss
= 1.e-4*
tesla
;
234
static
const
double
kilogauss
= 1.e-1*
tesla
;
235
236
//
237
// Inductance [T^2][E][Q^-2]
238
//
239
static
const
double
henry
=
weber
/
ampere
;
// henry = 1.60217e-7*MeV*(ns/eplus)**2
240
241
//
242
// Temperature
243
//
244
static
const
double
kelvin
= 1.;
245
246
//
247
// Amount of substance
248
//
249
static
const
double
mole
= 1.;
250
251
//
252
// Activity [T^-1]
253
//
254
static
const
double
becquerel
= 1./
second
;
255
static
const
double
curie
= 3.7e+10 *
becquerel
;
256
257
//
258
// Absorbed dose [L^2][T^-2]
259
//
260
static
const
double
gray
=
joule
/
kilogram
;
261
262
//
263
// Luminous intensity [I]
264
//
265
static
const
double
candela
= 1.;
266
267
//
268
// Luminous flux [I]
269
//
270
static
const
double
lumen
=
candela
*
steradian
;
271
272
//
273
// Illuminance [I][L^-2]
274
//
275
static
const
double
lux
=
lumen
/
meter2
;
276
277
//
278
// Miscellaneous
279
//
280
static
const
double
perCent
= 0.01 ;
281
static
const
double
perThousand
= 0.001;
282
static
const
double
perMillion
= 0.000001;
283
284
}
// namespace Units
285
}
// namespace Gaudi
286
287
288
#endif
/* GAUDI_SYSTEM_OF_UNITS_H */
Generated at Wed Nov 28 2012 12:17:15 for Gaudi Framework, version v23r5 by
Doxygen
version 1.8.2 written by
Dimitri van Heesch
, © 1997-2004