View Javadoc

1   package org.lcsim.units;
2   
3   public final class SystemOfUnits 
4   {	
5   	//
6   	// Length [L]
7   	//
8   	public static final double millimeter  = 1.;
9   	public static final double millimeter2 = millimeter*millimeter;
10  	public static final double millimeter3 = millimeter*millimeter*millimeter;
11  
12  	public static final double centimeter  = 10.*millimeter;
13  	public static final double centimeter2 = centimeter*centimeter;
14  	public static final double centimeter3 = centimeter*centimeter*centimeter;
15  
16  	public static final double meter  = 1000.*millimeter;
17  	public static final double meter2 = meter*meter;
18  	public static final double meter3 = meter*meter*meter;
19  
20  	public static final double kilometer = 1000.*meter;
21  	public static final double kilometer2 = kilometer*kilometer;
22  	public static final double kilometer3 = kilometer*kilometer*kilometer;
23  
24  	public static final double parsec = 3.0856775807e+16*meter;
25  
26  	public static final double micrometer = 1.e-6 *meter;
27  	public static final double  nanometer = 1.e-9 *meter;
28  	public static final double  angstrom  = 1.e-10*meter;
29  	public static final double  fermi     = 1.e-15*meter;
30  
31  	public static final double      barn = 1.e-28*meter2;
32  	public static final double millibarn = 1.e-3 *barn;
33  	public static final double microbarn = 1.e-6 *barn;
34  	public static final double  nanobarn = 1.e-9 *barn;
35  	public static final double  picobarn = 1.e-12*barn;
36  
37  	// symbols
38  	public static final double nm  = nanometer;
39  	public static final double um  = micrometer;
40  
41  	public static final double mm  = millimeter;
42  	public static final double mm2 = millimeter2;
43  	public static final double mm3 = millimeter3;
44  
45  	public static final double cm  = centimeter;
46  	public static final double cm2 = centimeter2;
47  	public static final double cm3 = centimeter3;
48  
49  	public static final double m  = meter;
50  	public static final double m2 = meter2;
51  	public static final double m3 = meter3;
52  
53  	public static final double km  = kilometer;
54  	public static final double km2 = kilometer2;
55  	public static final double km3 = kilometer3;
56  
57  	public static final double pc = parsec;
58  
59  	//
60  	// Angle
61  	//
62  	public static final double radian      = 1.;
63  	public static final double milliradian = 1.e-3*radian;
64  	public static final double degree = (3.14159265358979323846/180.0)*radian;
65  
66  	public static final double   steradian = 1.;
67  
68  	// symbols
69  	public static final double rad  = radian;
70  	public static final double mrad = milliradian;
71  	public static final double sr   = steradian;
72  	public static final double deg  = degree;
73  
74  	//
75  	// Time [T]
76  	//
77  	public static final double nanosecond  = 1.;
78  	public static final double second      = 1.e+9 *nanosecond;
79  	public static final double millisecond = 1.e-3 *second;
80  	public static final double microsecond = 1.e-6 *second;
81  	public static final double  picosecond = 1.e-12*second;
82  
83  	public static final double hertz = 1./second;
84  	public static final double kilohertz = 1.e+3*hertz;
85  	public static final double megahertz = 1.e+6*hertz;
86  
87  	// symbols
88  	public static final double ns = nanosecond;
89  	public static final double  s = second;
90  	public static final double ms = millisecond;
91  
92  	//
93  	// Electric charge [Q]
94  	//
95  	public static final double eplus = 1. ;// positron charge
96  	public static final double e_SI  = 1.60217733e-19;// positron charge in coulomb
97  	public static final double coulomb = eplus/e_SI;// coulomb = 6.24150 e+18 * eplus
98  
99  	//
100 	// Electric current [Q][T^-1]
101 	//
102 	public static final double      ampere = coulomb/second; // ampere = 6.24150 e+9 * eplus/ns
103 	public static final double milliampere = 1.e-3*ampere;
104 	public static final double microampere = 1.e-6*ampere;
105 	public static final double  nanoampere = 1.e-9*ampere;
106 
107 	//
108 	// Temperature
109 	//
110 	public static final double kelvin = 1.;
111 
112 	//
113 	// Amount of substance
114 	//
115 	public static final double mole = 1.;
116 	public static final double mol = mole;
117 
118 	//
119 	// Activity [T^-1]
120 	//
121 	public static final double becquerel = 1./second ;
122 	public static final double curie = 3.7e+10 * becquerel;
123 	
124 	//
125     // Energy [E]
126     //
127 	public static final double gigaelectronvolt = 1.;
128 	public static final double megaelectronvolt = 1.e-3*gigaelectronvolt;
129 	public static final double kiloelectronvolt = 1.e-6*megaelectronvolt;
130     public static final double     electronvolt = 1.e-9*gigaelectronvolt;            
131     public static final double teraelectronvolt = 1.e+3*gigaelectronvolt;
132     public static final double petaelectronvolt = 1.e+6*gigaelectronvolt;
133     
134     public static final double joule = electronvolt/e_SI;// joule = 6.24150 e+12 * MeV
135     
136     // symbols
137     public static final double MeV = megaelectronvolt;
138     public static final double  eV = electronvolt;
139     public static final double keV = kiloelectronvolt;
140     public static final double GeV = gigaelectronvolt;
141     public static final double TeV = teraelectronvolt;
142     public static final double PeV = petaelectronvolt;
143     
144     //
145     // Electric potential [E][Q^-1]
146     //
147     public static final double megavolt = megaelectronvolt/eplus;
148     public static final double kilovolt = 1.e-3*megavolt;
149     public static final double     volt = 1.e-6*megavolt;
150     
151     //
152     // Electric resistance [E][T][Q^-2]
153     //
154     public static final double ohm = volt/ampere;// ohm = 1.60217e-16*(MeV/eplus)/(eplus/ns)
155 
156     //
157     // Electric capacitance [Q^2][E^-1]
158     //
159     public static final double farad = coulomb/volt;// farad = 6.24150e+24 * eplus/Megavolt
160     public static final double millifarad = 1.e-3*farad;
161     public static final double microfarad = 1.e-6*farad;
162     public static final double  nanofarad = 1.e-9*farad;
163     public static final double  picofarad = 1.e-12*farad;
164 
165     //
166     // Magnetic Flux [T][E][Q^-1]
167     //
168     public static final double weber = volt*second;// weber = 1000*megavolt*ns
169 
170     //
171     // Magnetic Field [T][E][Q^-1][L^-2]
172     //
173     public static final double tesla     = volt*second/meter2;// tesla =0.001*megavolt*ns/mm2
174     public static final double gauss     = 1.e-4*tesla;
175     public static final double kilogauss = 1.e-1*tesla;
176 
177     //
178     // Inductance [T^2][E][Q^-2]
179     //
180     public static final double henry = weber/ampere;// henry = 1.60217e-7*MeV*(ns/eplus)**2
181 }