bahuvrihi-constants 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/MIT-LICENSE +21 -0
- data/README +125 -0
- data/Rakefile +171 -0
- data/lib/constants.rb +5 -0
- data/lib/constants/constant.rb +94 -0
- data/lib/constants/constant_library.rb +299 -0
- data/lib/constants/libraries/element.rb +214 -0
- data/lib/constants/libraries/particle.rb +83 -0
- data/lib/constants/libraries/physical.rb +297 -0
- data/lib/constants/library.rb +133 -0
- data/lib/constants/stash.rb +94 -0
- data/lib/constants/uncertainty.rb +8 -0
- data/test/constants/constant_library_test.rb +304 -0
- data/test/constants/constant_test.rb +77 -0
- data/test/constants/libraries/element_test.rb +207 -0
- data/test/constants/libraries/particle_test.rb +43 -0
- data/test/constants/libraries/physical_test.rb +32 -0
- data/test/constants/library_test.rb +125 -0
- data/test/constants/stash_test.rb +99 -0
- data/test/constants_test_helper.rb +51 -0
- data/test/constants_test_suite.rb +3 -0
- data/test/readme_doc_test.rb +58 -0
- metadata +83 -0
@@ -0,0 +1,214 @@
|
|
1
|
+
require 'constants/constant'
|
2
|
+
|
3
|
+
module Constants
|
4
|
+
module Libraries
|
5
|
+
|
6
|
+
# Element is a library of elements in the periodic table, and includes
|
7
|
+
# mass, isotope, and abundance information.
|
8
|
+
#
|
9
|
+
# e = Element::He
|
10
|
+
# e.name # => "Helium"
|
11
|
+
# e.symbol # => "He"
|
12
|
+
# e.atomic_number # => 2
|
13
|
+
# e.mass # => 4.0026032497
|
14
|
+
# e.isotopes # => [3, 4]
|
15
|
+
# e.abundances # => [0.000137, 99.999863]
|
16
|
+
#
|
17
|
+
class Element
|
18
|
+
|
19
|
+
# The symbol of the element (C)
|
20
|
+
attr_reader :symbol
|
21
|
+
|
22
|
+
# The name of the element (Carbon)
|
23
|
+
attr_reader :name
|
24
|
+
|
25
|
+
# The atomic number of the element, ie the number
|
26
|
+
# of protons in the element (6)
|
27
|
+
attr_reader :atomic_number
|
28
|
+
|
29
|
+
# An array the mass numbers of element isotopes
|
30
|
+
# in mass order ([12, 13])
|
31
|
+
attr_reader :isotopes
|
32
|
+
|
33
|
+
# An array the masses of element isotopes
|
34
|
+
# in mass order ([12.0 Da, 13.0033548378 Da])
|
35
|
+
attr_reader :masses
|
36
|
+
|
37
|
+
# An array the isotopic abundances of element isotopes
|
38
|
+
# in mass order ([98.93, 1.07])
|
39
|
+
attr_reader :abundances
|
40
|
+
|
41
|
+
# The index of the most abundant isotope (0)
|
42
|
+
attr_reader :index_max_abundance
|
43
|
+
|
44
|
+
# The standard atomic weight of the element, ie
|
45
|
+
# the mean relative atomic mass of an element in
|
46
|
+
# the Earth's crust and atmosphere as determined
|
47
|
+
# by IUPAC (12.0107 Da)
|
48
|
+
attr_reader :std_atomic_weight
|
49
|
+
|
50
|
+
def initialize(symbol, name, atomic_number, attributes, std_atomic_weight)
|
51
|
+
@symbol = symbol
|
52
|
+
@name = name
|
53
|
+
@atomic_number = atomic_number
|
54
|
+
@isotopes = []
|
55
|
+
@masses = []
|
56
|
+
@abundances = []
|
57
|
+
@index_max_abundance = 0
|
58
|
+
@std_atomic_weight = Constant.parse(std_atomic_weight + 'Da')
|
59
|
+
|
60
|
+
attributes.split(/;/).each_with_index do |attr_str, i|
|
61
|
+
isotope, mass, abundance = attr_str.split(/:/)
|
62
|
+
@isotopes << isotope.to_i
|
63
|
+
@masses << Constant.parse(mass + 'Da')
|
64
|
+
|
65
|
+
abundance = Constant.parse(abundance)
|
66
|
+
@abundances << abundance
|
67
|
+
|
68
|
+
if abundance.value > abundances[@index_max_abundance].value
|
69
|
+
@index_max_abundance = i
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
# True if the element contains an isotope of the given mass number.
|
75
|
+
def has_isotope?(n)
|
76
|
+
!index_isotope(n).nil?
|
77
|
+
end
|
78
|
+
|
79
|
+
# Index of the isotope in isotopes, masses, and abundance of the
|
80
|
+
# given mass number.
|
81
|
+
def index_isotope(n)
|
82
|
+
isotopes.index(n)
|
83
|
+
end
|
84
|
+
|
85
|
+
# Returns the mass of the isotope with the given mass number.
|
86
|
+
# By default, returns the mass of the most abundant isotope.
|
87
|
+
def mass(n=nil)
|
88
|
+
return masses[index_max_abundance].value if n == nil
|
89
|
+
|
90
|
+
i = index_isotope(n)
|
91
|
+
i == nil ? nil : masses[i].value
|
92
|
+
end
|
93
|
+
|
94
|
+
# Returns the uncertainty of the mass of the isotope with the
|
95
|
+
# given mass number. By default, returns the mass uncertainty
|
96
|
+
# of the most abundant isotope.
|
97
|
+
def mass_uncertainty(n=nil)
|
98
|
+
return masses[index_max_abundance].uncertainty if n == nil
|
99
|
+
|
100
|
+
i = index_isotope(n)
|
101
|
+
i == nil ? nil : masses[i].uncertainty
|
102
|
+
end
|
103
|
+
|
104
|
+
# Gets the abundance of the isotope with the given mass number.
|
105
|
+
# By default, returns the abundance of the most abundant isotope.
|
106
|
+
def abundance(n=nil)
|
107
|
+
return abundances[index_max_abundance].value if n == nil
|
108
|
+
|
109
|
+
i = index_isotope(n)
|
110
|
+
i == nil ? nil : abundances[i].value
|
111
|
+
end
|
112
|
+
|
113
|
+
# Returns the uncertainty of the abundance of the isotope with the
|
114
|
+
# given mass number. By default, returns the abundance uncertainty
|
115
|
+
# of the most abundant isotope.
|
116
|
+
def abundance_uncertainty(n=nil)
|
117
|
+
return abundances[index_max_abundance].uncertainty if n == nil
|
118
|
+
|
119
|
+
i = index_isotope(n)
|
120
|
+
i == nil ? nil : abundances[i].uncertainty
|
121
|
+
end
|
122
|
+
|
123
|
+
Ag = Element.new("Ag", "Silver", 47, "107:106.905093(6):51.839(8);109:108.904756(3):48.161(8)", "107.8682(2)")
|
124
|
+
Al = Element.new("Al", "Aluminum", 13, "27:26.98153844(14):100", "26.981538(2)")
|
125
|
+
Ar = Element.new("Ar", "Argon", 18, "36:35.96754628(27):0.3365(30);38:37.9627322(5):0.0632(5);40:39.962383123(3):99.6003(30)", "39.948(1)")
|
126
|
+
As = Element.new("As", "Arsenic", 33, "75:74.9215964(18):100", "74.92160(2)")
|
127
|
+
Au = Element.new("Au", "Gold", 79, "197:196.966552(3):100", "196.96655(2)")
|
128
|
+
B = Element.new("B", "Boron", 5, "10:10.0129370(4):19.9(7);11:11.0093055(5):80.1(7)", "10.811(7)")
|
129
|
+
Ba = Element.new("Ba", "Barium", 56, "130:129.906310(7):0.106(1);132:131.905056(3):0.101(1);134:133.904503(3):2.417(18);135:134.905683(3):6.592(12);136:135.904570(3):7.854(24);137:136.905821(3):11.232(24);138:137.905241(3):71.698(42)", "137.327(7)")
|
130
|
+
Be = Element.new("Be", "Beryllium", 4, "9:9.0121821(4):100", "9.012182(3)")
|
131
|
+
Bi = Element.new("Bi", "Bismuth", 83, "209:208.980383(3):100", "208.98038(2)")
|
132
|
+
Br = Element.new("Br", "Bromine", 35, "79:78.9183376(20):50.69(7);81:80.916291(3):49.31(7)", "79.904(1)")
|
133
|
+
C = Element.new("C", "Carbon", 6, "12:12.0000000(0):98.93(8);13:13.0033548378(10):1.07(8)", "12.0107(8)")
|
134
|
+
Ca = Element.new("Ca", "Calcium", 20, "40:39.9625912(3):96.941(156);42:41.9586183(4):0.647(23);43:42.9587668(5):0.135(10);44:43.9554811(9):2.086(110);46:45.9536928(25):0.004(3);48:47.952534(4):0.187(21)", "40.078(4)")
|
135
|
+
Cd = Element.new("Cd", "Cadmium", 48, "106:105.906458(6):1.25(6);108:107.904183(6):0.89(3);110:109.903006(3):12.49(18);111:110.904182(3):12.80(12);112:111.9027572(30):24.13(21);113:112.9044009(30):12.22(12);114:113.9033581(30):28.73(42);116:115.904755(3):7.49(18)", "112.411(8)")
|
136
|
+
Ce = Element.new("Ce", "Cerium", 58, "136:135.907140(50):0.185(2);138:137.905986(11):0.251(2);140:139.905434(3):88.450(51);142:141.909240(4):11.114(51)", "140.116(1)")
|
137
|
+
Cl = Element.new("Cl", "Chlorine", 17, "35:34.96885271(4):75.78(4);37:36.96590260(5):24.22(4)", "35.453(2)")
|
138
|
+
Co = Element.new("Co", "Cobalt", 27, "59:58.9332002(15):100", "58.933200(9)")
|
139
|
+
Cr = Element.new("Cr", "Chromium", 24, "50:49.9460496(14):4.345(13);52:51.9405119(15):83.789(18);53:52.9406538(15):9.501(17);54:53.9388849(15):2.365(7)", "51.9961(6)")
|
140
|
+
Cs = Element.new("Cs", "Cesium", 55, "133:132.905447(3):100", "132.90545(2)")
|
141
|
+
Cu = Element.new("Cu", "Copper", 29, "63:62.9296011(15):69.17(3);65:64.9277937(19):30.83(3)", "63.546(3)")
|
142
|
+
Dy = Element.new("Dy", "Dysprosium", 66, "156:155.924278(7):0.06(1);158:157.924405(4):0.10(1);160:159.925194(3):2.34(8);161:160.926930(3):18.91(24);162:161.926795(3):25.51(26);163:162.928728(3):24.90(16);164:163.929171(3):28.18(37)", "162.500(1)")
|
143
|
+
Er = Element.new("Er", "Erbium", 68, "162:161.928775(4):0.14(1);164:163.929197(4):1.61(3);166:165.930290(3):33.61(35);167:166.932045(3):22.93(17);168:167.932368(3):26.78(26);170:169.935460(3):14.93(27)", "167.259(3)")
|
144
|
+
Eu = Element.new("Eu", "Europium", 63, "151:150.919846(3):47.81(3);153:152.921226(3):52.19(3)", "151.964(1)")
|
145
|
+
F = Element.new("F", "Fluorine", 9, "19:18.99840320(7):100", "18.9984032(5)")
|
146
|
+
Fe = Element.new("Fe", "Iron", 26, "54:53.9396148(14):5.845(35);56:55.9349421(15):91.754(36);57:56.9353987(15):2.119(10);58:57.9332805(15):0.282(4)", "55.845(2)")
|
147
|
+
Ga = Element.new("Ga", "Gallium", 31, "69:68.925581(3):60.108(9);71:70.9247050(19):39.892(9)", "69.723(1)")
|
148
|
+
Gd = Element.new("Gd", "Gadolinium", 64, "152:151.919788(3):0.20(1);154:153.920862(3):2.18(3);155:154.922619(3):14.80(12);156:155.922120(3):20.47(9);157:156.923957(3):15.65(2);158:157.924101(3):24.84(7);160:159.927051(3):21.86(19)", "157.25(3)")
|
149
|
+
Ge = Element.new("Ge", "Germanium", 32, "70:69.9242504(19):20.84(87);72:71.9220762(16):27.54(34);73:72.9234594(16):7.73(5);74:73.9211782(16):36.28(73);76:75.9214027(16):7.61(38)", "72.64(1)")
|
150
|
+
H = Element.new("H", "Hydrogen", 1, "1:1.0078250321(4):99.9885(70);2:2.0141017780(4):0.0115(70)", "1.00794(7)")
|
151
|
+
He = Element.new("He", "Helium", 2, "3:3.0160293097(9):0.000137(3);4:4.0026032497(10):99.999863(3)", "4.002602(2)")
|
152
|
+
Hf = Element.new("Hf", "Hafnium", 72, "174:173.940040(3):0.16(1);176:175.9414018(29):5.26(7);177:176.9432200(27):18.60(9);178:177.9436977(27):27.28(7);179:178.9458151(27):13.62(2);180:179.9465488(27):35.08(16)", "178.49(2)")
|
153
|
+
Hg = Element.new("Hg", "Mercury", 80, "196:195.965815(4):0.15(1);198:197.966752(3):9.97(20);199:198.968262(3):16.87(22);200:199.968309(3):23.10(19);201:200.970285(3):13.18(9);202:201.970626(3):29.86(26);204:203.973476(3):6.87(15)", "200.59(2)")
|
154
|
+
Ho = Element.new("Ho", "Holmium", 67, "165:164.930319(3):100", "164.93032(2)")
|
155
|
+
I = Element.new("I", "Iodine", 53, "127:126.904468(4):100", "126.90447(3)")
|
156
|
+
In = Element.new("In", "Indium", 49, "113:112.904061(4):4.29(5);115:114.903878(5):95.71(5)", "114.818(3)")
|
157
|
+
Ir = Element.new("Ir", "Iridium", 77, "191:190.960591(3):37.3(2);193:192.962924(3):62.7(2)", "192.217(3)")
|
158
|
+
K = Element.new("K", "Potassium", 19, "39:38.9637069(3):93.2581(44);40:39.96399867(29):0.0117(1);41:40.96182597(28):6.7302(44)", "39.0983(1)")
|
159
|
+
Kr = Element.new("Kr", "Krypton", 36, "78:77.920386(7):0.35(1);80:79.916378(4):2.28(6);82:81.9134846(28):11.58(14);83:82.914136(3):11.49(6);84:83.911507(3):57.00(4);86:85.9106103(12):17.30(22)", "83.798(2)")
|
160
|
+
La = Element.new("La", "Lanthanum", 57, "138:137.907107(4):0.090(1);139:138.906348(3):99.910(1)", "138.9055(2)")
|
161
|
+
Li = Element.new("Li", "Lithium", 3, "6:6.0151223(5):7.59(4);7:7.0160040(5):92.41(4)", "6.941(2)")
|
162
|
+
Lu = Element.new("Lu", "Lutetium", 71, "175:174.9407679(28):97.41(2);176:175.9426824(28):2.59(2)", "174.967(1)")
|
163
|
+
Mg = Element.new("Mg", "Magnesium", 12, "24:23.98504190(20):78.99(4);25:24.98583702(20):10.00(1);26:25.98259304(21):11.01(3)", "24.3050(6)")
|
164
|
+
Mn = Element.new("Mn", "Manganese", 25, "55:54.9380496(14):100", "54.938049(9)")
|
165
|
+
Mo = Element.new("Mo", "Molybdenum", 42, "100:99.907477(6):9.63(23);92:91.906810(4):14.84(35);94:93.9050876(20):9.25(12);95:94.9058415(20):15.92(13);96:95.9046789(20):16.68(2);97:96.9060210(20):9.55(8);98:97.9054078(20):24.13(31)", "95.94(2)")
|
166
|
+
N = Element.new("N", "Nitrogen", 7, "14:14.0030740052(9):99.632(7);15:15.0001088984(9):0.368(7)", "14.0067(2)")
|
167
|
+
Na = Element.new("Na", "Sodium", 11, "23:22.98976967(23):100", "22.989770(2)")
|
168
|
+
Nb = Element.new("Nb", "Niobium", 41, "93:92.9063775(24):100", "92.90638(2)")
|
169
|
+
Nd = Element.new("Nd", "Neodymium", 60, "142:141.907719(3):27.2(5);143:142.909810(3):12.2(2);144:143.910083(3):23.8(3);145:144.912569(3):8.3(1);146:145.913112(3):17.2(3);148:147.916889(3):5.7(1);150:149.920887(4):5.6(2)", "144.24(3)")
|
170
|
+
Ne = Element.new("Ne", "Neon", 10, "20:19.9924401759(20):90.48(3);21:20.99384674(4):0.27(1);22:21.99138551(23):9.25(3)", "20.1797(6)")
|
171
|
+
Ni = Element.new("Ni", "Nickel", 28, "58:57.9353479(15):68.0769(89);60:59.9307906(15):26.2231(77);61:60.9310604(15):1.1399(6);62:61.9283488(15):3.6345(17);64:63.9279696(16):0.9256(9)", "58.6934(2)")
|
172
|
+
O = Element.new("O", "Oxygen", 8, "16:15.9949146221(15):99.757(16);17:16.99913150(22):0.038(1);18:17.9991604(9):0.205(14)", "15.9994(3)")
|
173
|
+
Os = Element.new("Os", "Osmium", 76, "184:183.952491(3):0.02(1);186:185.953838(3):1.59(3);187:186.9557479(30):1.96(2);188:187.9558360(30):13.24(8);189:188.9581449(30):16.15(5);190:189.958445(3):26.26(2);192:191.961479(4):40.78(19)", "190.23(3)")
|
174
|
+
P = Element.new("P", "Phosphorus", 15, "31:30.97376151(20):100", "30.973761(2)")
|
175
|
+
Pa = Element.new("Pa", "Protactinium", 91, "231:231.0358789(28):100", "231.03588(2)")
|
176
|
+
Pb = Element.new("Pb", "Lead", 82, "204:203.973029(3):1.4(1);206:205.974449(3):24.1(1);207:206.975881(3):22.1(1);208:207.976636(3):52.4(1)", "207.2(1)")
|
177
|
+
Pd = Element.new("Pd", "Palladium", 46, "102:101.905608(3):1.02(1);104:103.904035(5):11.14(8);105:104.905084(5):22.33(8);106:105.903483(5):27.33(3);108:107.903894(4):26.46(9);110:109.905152(12):11.72(9)", "106.42(1)")
|
178
|
+
Pr = Element.new("Pr", "Praseodymium", 59, "141:140.907648(3):100", "140.90765(2)")
|
179
|
+
Pt = Element.new("Pt", "Platinum", 78, "190:189.959930(7):0.014(1);192:191.961035(4):0.782(7);194:193.962664(3):32.967(99);195:194.964774(3):33.832(10);196:195.964935(3):25.242(41);198:197.967876(4):7.163(55)", "195.078(2)")
|
180
|
+
Rb = Element.new("Rb", "Rubidium", 37, "85:84.9117893(25):72.17(2);87:86.9091835(27):27.83(2)", "85.4678(3)")
|
181
|
+
Re = Element.new("Re", "Rhenium", 75, "185:184.9529557(30):37.40(2);187:186.9557508(30):62.60(2)", "186.207(1)")
|
182
|
+
Rh = Element.new("Rh", "Rhodium", 45, "103:102.905504(3):100", "102.90550(2)")
|
183
|
+
Ru = Element.new("Ru", "Ruthenium", 44, "100:99.9042197(22):12.60(7);101:100.9055822(22):17.06(2);102:101.9043495(22):31.55(14);104:103.905430(4):18.62(27);96:95.907598(8):5.54(14);98:97.905287(7):1.87(3);99:98.9059393(21):12.76(14)", "101.07(2)")
|
184
|
+
S = Element.new("S", "Sulfur", 16, "32:31.97207069(12):94.93(31);33:32.97145850(12):0.76(2);34:33.96786683(11):4.29(28);36:35.96708088(25):0.02(1)", "32.065(5)")
|
185
|
+
Sb = Element.new("Sb", "Antimony", 51, "121:120.9038180(24):57.21(5);123:122.9042157(22):42.79(5)", "121.760(1)")
|
186
|
+
Sc = Element.new("Sc", "Scandium", 21, "45:44.9559102(12):100", "44.955910(8)")
|
187
|
+
Se = Element.new("Se", "Selenium", 34, "74:73.9224766(16):0.89(4);76:75.9192141(16):9.37(29);77:76.9199146(16):7.63(16);78:77.9173095(16):23.77(28);80:79.9165218(20):49.61(41);82:81.9167000(22):8.73(22)", "78.96(3)")
|
188
|
+
Si = Element.new("Si", "Silicon", 14, "28:27.9769265327(20):92.2297(7);29:28.97649472(3):4.6832(5);30:29.97377022(5):3.0872(5)", "28.0855(3)")
|
189
|
+
Sm = Element.new("Sm", "Samarium", 62, "144:143.911995(4):3.07(7);147:146.914893(3):14.99(18);148:147.914818(3):11.24(10);149:148.917180(3):13.82(7);150:149.917271(3):7.38(1);152:151.919728(3):26.75(16);154:153.922205(3):22.75(29)", "150.36(3)")
|
190
|
+
Sn = Element.new("Sn", "Tin", 50, "112:111.904821(5):0.97(1);114:113.902782(3):0.66(1);115:114.903346(3):0.34(1);116:115.901744(3):14.54(9);117:116.902954(3):7.68(7);118:117.901606(3):24.22(9);119:118.903309(3):8.59(4);120:119.9021966(27):32.58(9);122:121.9034401(29):4.63(3);124:123.9052746(15):5.79(5)", "118.710(7)")
|
191
|
+
Sr = Element.new("Sr", "Strontium", 38, "84:83.913425(4):0.56(1);86:85.9092624(24):9.86(1);87:86.9088793(24):7.00(1);88:87.9056143(24):82.58(1)", "87.62(1)")
|
192
|
+
Ta = Element.new("Ta", "Tantalum", 73, "180:179.947466(3):0.012(2);181:180.947996(3):99.988(2)", "180.9479(1)")
|
193
|
+
Tb = Element.new("Tb", "Terbium", 65, "159:158.925343(3):100", "158.92534(2)")
|
194
|
+
Te = Element.new("Te", "Tellurium", 52, "120:119.904020(11):0.09(1);122:121.9030471(20):2.55(12);123:122.9042730(19):0.89(3);124:123.9028195(16):4.74(14);125:124.9044247(20):7.07(15);126:125.9033055(20):18.84(25);128:127.9044614(19):31.74(8);130:129.9062228(21):34.08(62)", "127.60(3)")
|
195
|
+
Th = Element.new("Th", "Thorium", 90, "232:232.0380504(22):100", "232.0381(1)")
|
196
|
+
Ti = Element.new("Ti", "Titanium", 22, "46:45.9526295(12):8.25(3);47:46.9517638(10):7.44(2);48:47.9479471(10):73.72(3);49:48.9478708(10):5.41(2);50:49.9447921(11):5.18(2)", "47.867(1)")
|
197
|
+
Tl = Element.new("Tl", "Thallium", 81, "203:202.972329(3):29.524(14);205:204.974412(3):70.476(14)", "204.3833(2)")
|
198
|
+
Tm = Element.new("Tm", "Thulium", 69, "169:168.934211(3):100", "168.93421(2)")
|
199
|
+
U = Element.new("U", "Uranium", 92, "234:234.0409456(21):0.0055(2);235:235.0439231(21):0.7200(51);238:238.0507826(21):99.2745(106)", "238.02891(3)")
|
200
|
+
V = Element.new("V", "Vanadium", 23, "50:49.9471628(14):0.250(4);51:50.9439637(14):99.750(4)", "50.9415(1)")
|
201
|
+
W = Element.new("W", "Tungsten", 74, "180:179.946706(5):0.12(1);182:181.948206(3):26.50(16);183:182.9502245(29):14.31(4);184:183.9509326(29):30.64(2);186:185.954362(3):28.43(19)", "183.84(1)")
|
202
|
+
Xe = Element.new("Xe", "Xenon", 54, "124:123.9058958(21):0.09(1);126:125.904269(7):0.09(1);128:127.9035304(15):1.92(3);129:128.9047795(9):26.44(24);130:129.9035079(10):4.08(2);131:130.9050819(10):21.18(3);132:131.9041545(12):26.89(6);134:133.9053945(9):10.44(10);136:135.907220(8):8.87(16)", "131.293(6)")
|
203
|
+
Y = Element.new("Y", "Yttrium", 39, "89:88.9058479(25):100", "88.90585(2)")
|
204
|
+
Yb = Element.new("Yb", "Ytterbium", 70, "168:167.933894(5):0.13(1);170:169.934759(3):3.04(15);171:170.936322(3):14.28(57);172:171.9363777(30):21.83(67);173:172.9382068(30):16.13(27);174:173.9388581(30):31.83(92);176:175.942568(3):12.76(41)", "173.04(3)")
|
205
|
+
Zn = Element.new("Zn", "Zinc", 30, "64:63.9291466(18):48.63(60);66:65.9260368(16):27.90(27);67:66.9271309(17):4.10(13);68:67.9248476(17):18.75(51);70:69.925325(4):0.62(3)", "65.409(4)")
|
206
|
+
Zr = Element.new("Zr", "Zirconium", 40, "90:89.9047037(23):51.45(40);91:90.9056450(23):11.22(5);92:91.9050401(23):17.15(8);94:93.9063158(25):17.38(28);96:95.908276(3):2.80(9)", "91.224(2)")
|
207
|
+
|
208
|
+
include Constants::Library
|
209
|
+
library.index_by_attribute :symbol
|
210
|
+
library.index_by_attribute :name
|
211
|
+
library.index_by_attribute :atomic_number
|
212
|
+
end
|
213
|
+
end
|
214
|
+
end
|
@@ -0,0 +1,83 @@
|
|
1
|
+
require 'constants/libraries/physical'
|
2
|
+
|
3
|
+
module Constants
|
4
|
+
module Libraries
|
5
|
+
|
6
|
+
# Particle is a library of fundamental particles, including
|
7
|
+
# mass, charge and spin information.
|
8
|
+
class Particle
|
9
|
+
|
10
|
+
attr_reader :name
|
11
|
+
attr_reader :family
|
12
|
+
attr_reader :group
|
13
|
+
attr_reader :generation
|
14
|
+
attr_reader :charge
|
15
|
+
attr_reader :spin
|
16
|
+
|
17
|
+
def initialize(name, family, group, generation, mass, charge, spin)
|
18
|
+
@name = name
|
19
|
+
@family = family
|
20
|
+
@group = group
|
21
|
+
@generation = generation
|
22
|
+
@mass = mass.kind_of?(Constant) ? mass : Constant.parse(mass)
|
23
|
+
@charge = charge
|
24
|
+
@spin = spin
|
25
|
+
end
|
26
|
+
|
27
|
+
# Returns the mass of the particle.
|
28
|
+
def mass
|
29
|
+
@mass.value
|
30
|
+
end
|
31
|
+
|
32
|
+
# Returns the mass uncertainty of the particle.
|
33
|
+
def mass_uncertainty
|
34
|
+
@mass.uncertainty
|
35
|
+
end
|
36
|
+
|
37
|
+
private
|
38
|
+
|
39
|
+
# Convenience method to define related particles (ex: antiparticles)
|
40
|
+
def as(name, negate=false) # :nodoc:
|
41
|
+
d = self.dup
|
42
|
+
d.instance_variable_set("@name", name)
|
43
|
+
d.instance_variable_set("@charge", charge * -1) if negate
|
44
|
+
d
|
45
|
+
end
|
46
|
+
|
47
|
+
public
|
48
|
+
|
49
|
+
UP = Particle.new('Up', "Fermion", "Quark", "First", "4 MeV/c^2", 2.0/3, 1.0/2) # "1.5 - 4 MeV/c^2"
|
50
|
+
DOWN = Particle.new('Down', "Fermion", "Quark", "First", "8 MeV/c^2", -1.0/3, 1.0/2) # " 4 - 8 MeV/c^2"
|
51
|
+
STRANGE = Particle.new('Strange', "Fermion", "Quark", "Second", "130 MeV/c^2", -1.0/3, 1.0/2) #" 80 - 130 MeV/c^2"
|
52
|
+
CHARM = Particle.new('Charm', "Fermion", "Quark", "Second", "1.5 GeV/c^2", 2.0/3, 1.0/2)
|
53
|
+
BOTTOM = Particle.new('Bottom', "Fermion", "Quark", "Third", "5 GeV/c^2", -1.0/3, 1.0/2)
|
54
|
+
TOP = Particle.new('Top', "Fermion", "Quark", "Third", "170.9 GeV/c^2", 2.0/3, 1.0/2) #"170.9�18 GeV/c^2"
|
55
|
+
|
56
|
+
ELECTRON = Particle.new('Electron', "Fermion", "Lepton", "First", "5.485 799 094(23)e-4 Da", 1, 1.0/2)
|
57
|
+
POSITRON = ELECTRON.send(:as, "Positron", true)
|
58
|
+
MUON = Particle.new('Muon', "Fermion", "Lepton", "Second", "105.658369(9) MeV/c^2", 1 , 1.0/2)
|
59
|
+
ANTIMUON = MUON.send(:as, "Anti-Muon", true)
|
60
|
+
TAU = Particle.new('Tau', "Fermion", "Lepton", "Third", "1776.99 MeV/c^2", 1, 1.0/2) #1776.99�29 MeV/c^2"
|
61
|
+
ANTITAU = TAU.send(:as, "Anti-Tau", true)
|
62
|
+
|
63
|
+
NEUTRINO = Particle.new('Neutrino', "Fermion", "Lepton", "", "5.485 799 0943(23)e-4 Da", 0, 1.0/2)
|
64
|
+
ANTINEUTRINO = NEUTRINO.send(:as, "Anti-Neutrino")
|
65
|
+
MUON_NEUTRINO = NEUTRINO.send(:as, "Muon Neutrio" )
|
66
|
+
ANTIMUON_NEUTRINO = NEUTRINO.send(:as, "Muon Anti-Neutrino" )
|
67
|
+
TAU_NEUTRINO = NEUTRINO.send(:as, "Tau Neutrino" )
|
68
|
+
ANTITAU_NEUTRINO = NEUTRINO.send(:as, "Tau Anti-Neutrino" )
|
69
|
+
|
70
|
+
PHOTON = Particle.new('Photon', "Boson", "Gauge boson", "", 0, 0, 1)
|
71
|
+
W_BOSON_PLUS = Particle.new('W Boson +', "Boson", "Gauge boson", "", "80.398 GeV/c^2", 1, 1) #"80.398�0.025 GeV/c2"
|
72
|
+
W_BOSON_MINUS = W_BOSON_PLUS.send(:as, "W Boson -", true)
|
73
|
+
Z_BOSON = Particle.new('Z Boson', "Boson", "Gauge boson", "", "91.1876 GeV/c^2", 0, 1) #"91.1876�0.0021 GeV/c2",
|
74
|
+
GLUON = Particle.new('Gluon', "Boson", "Gauge boson", "", 0, 0, 1)
|
75
|
+
GRAVITON = Particle.new('Graviton', "", "", "", 0, 0, 2)
|
76
|
+
HIGGS_BOSON = Particle.new('Higgs Boson', "", "", "", "112 GeV/c^2", 0, 0) #">112 GeV/c^2"
|
77
|
+
|
78
|
+
include Constants::Library
|
79
|
+
library.index_by_attribute :name
|
80
|
+
end
|
81
|
+
|
82
|
+
end
|
83
|
+
end
|
@@ -0,0 +1,297 @@
|
|
1
|
+
require 'constants/constant'
|
2
|
+
|
3
|
+
module Constants
|
4
|
+
module Libraries
|
5
|
+
|
6
|
+
# Physical is a library of physical constants.
|
7
|
+
class Physical < Constant
|
8
|
+
|
9
|
+
attr_reader :name
|
10
|
+
|
11
|
+
def initialize(name, value, uncertainty, unit)
|
12
|
+
@name = name
|
13
|
+
super(value.to_f, unit, uncertainty.to_f)
|
14
|
+
end
|
15
|
+
|
16
|
+
#--
|
17
|
+
# Constants from: http://www.physics.nist.gov/cuu/Constants/Table/allascii.txt
|
18
|
+
# Date: Mon Apr 28 21:09:29 -0600 2008
|
19
|
+
#++
|
20
|
+
LATTICE_SPACING_OF_SILICON = Physical.new("{220} lattice spacing of silicon", "192.0155762e-12", "0.0000050e-12", "m")
|
21
|
+
ALPHA_PARTICLE_ELECTRON_MASS_RATIO = Physical.new("alpha particle-electron mass ratio", "7294.2995365", "0.0000031", "")
|
22
|
+
ALPHA_PARTICLE_MASS = Physical.new("alpha particle mass", "6.64465620e-27", "0.00000033e-27", "kg")
|
23
|
+
ALPHA_PARTICLE_MASS_ENERGY_EQUIVALENT = Physical.new("alpha particle mass energy equivalent", "5.97191917e-10", "0.00000030e-10", "J")
|
24
|
+
ALPHA_PARTICLE_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("alpha particle mass energy equivalent in MeV", "3727.379109", "0.000093", "MeV")
|
25
|
+
ALPHA_PARTICLE_MASS_IN_U = Physical.new("alpha particle mass in u", "4.001506179127", "0.000000000062", "u")
|
26
|
+
ALPHA_PARTICLE_MOLAR_MASS = Physical.new("alpha particle molar mass", "4.001506179127e-3", "0.000000000062e-3", "kg mol^-1")
|
27
|
+
ALPHA_PARTICLE_PROTON_MASS_RATIO = Physical.new("alpha particle-proton mass ratio", "3.97259968951", "0.00000000041", "")
|
28
|
+
ANGSTROM_STAR = Physical.new("Angstrom star", "1.00001498e-10", "0.00000090e-10", "m")
|
29
|
+
ATOMIC_MASS_CONSTANT = Physical.new("atomic mass constant", "1.660538782e-27", "0.000000083e-27", "kg")
|
30
|
+
ATOMIC_MASS_CONSTANT_ENERGY_EQUIVALENT = Physical.new("atomic mass constant energy equivalent", "1.492417830e-10", "0.000000074e-10", "J")
|
31
|
+
ATOMIC_MASS_CONSTANT_ENERGY_EQUIVALENT_IN_MEV = Physical.new("atomic mass constant energy equivalent in MeV", "931.494028", "0.000023", "MeV")
|
32
|
+
ATOMIC_UNIT_OF_1ST_HYPERPOLARIZABLITY = Physical.new("atomic unit of 1st hyperpolarizablity", "3.206361533e-53", "0.000000081e-53", "C^3 m^3 J^-2")
|
33
|
+
ATOMIC_UNIT_OF_2ND_HYPERPOLARIZABLITY = Physical.new("atomic unit of 2nd hyperpolarizablity", "6.23538095e-65", "0.00000031e-65", "C^4 m^4 J^-3")
|
34
|
+
ATOMIC_UNIT_OF_ACTION = Physical.new("atomic unit of action", "1.054571628e-34", "0.000000053e-34", "J s")
|
35
|
+
ATOMIC_UNIT_OF_CHARGE = Physical.new("atomic unit of charge", "1.602176487e-19", "0.000000040e-19", "C")
|
36
|
+
ATOMIC_UNIT_OF_CHARGE_DENSITY = Physical.new("atomic unit of charge density", "1.081202300e12", "0.000000027e12", "C m^-3")
|
37
|
+
ATOMIC_UNIT_OF_CURRENT = Physical.new("atomic unit of current", "6.62361763e-3", "0.00000017e-3", "A")
|
38
|
+
ATOMIC_UNIT_OF_ELECTRIC_DIPOLE_MOM = Physical.new("atomic unit of electric dipole mom.", "8.47835281e-30", "0.00000021e-30", "C m")
|
39
|
+
ATOMIC_UNIT_OF_ELECTRIC_FIELD = Physical.new("atomic unit of electric field", "5.14220632e11", "0.00000013e11", "V m^-1")
|
40
|
+
ATOMIC_UNIT_OF_ELECTRIC_FIELD_GRADIENT = Physical.new("atomic unit of electric field gradient", "9.71736166e21", "0.00000024e21", "V m^-2")
|
41
|
+
ATOMIC_UNIT_OF_ELECTRIC_POLARIZABLITY = Physical.new("atomic unit of electric polarizablity", "1.6487772536e-41", "0.0000000034e-41", "C^2 m^2 J^-1")
|
42
|
+
ATOMIC_UNIT_OF_ELECTRIC_POTENTIAL = Physical.new("atomic unit of electric potential", "27.21138386", "0.00000068", "V")
|
43
|
+
ATOMIC_UNIT_OF_ELECTRIC_QUADRUPOLE_MOM = Physical.new("atomic unit of electric quadrupole mom.", "4.48655107e-40", "0.00000011e-40", "C m^2")
|
44
|
+
ATOMIC_UNIT_OF_ENERGY = Physical.new("atomic unit of energy", "4.35974394e-18", "0.00000022e-18", "J")
|
45
|
+
ATOMIC_UNIT_OF_FORCE = Physical.new("atomic unit of force", "8.23872206e-8", "0.00000041e-8", "N")
|
46
|
+
ATOMIC_UNIT_OF_LENGTH = Physical.new("atomic unit of length", "0.52917720859e-10", "0.00000000036e-10", "m")
|
47
|
+
ATOMIC_UNIT_OF_MAG_DIPOLE_MOM = Physical.new("atomic unit of mag. dipole mom.", "1.854801830e-23", "0.000000046e-23", "J T^-1")
|
48
|
+
ATOMIC_UNIT_OF_MAG_FLUX_DENSITY = Physical.new("atomic unit of mag. flux density", "2.350517382e5", "0.000000059e5", "T")
|
49
|
+
ATOMIC_UNIT_OF_MAGNETIZABILITY = Physical.new("atomic unit of magnetizability", "7.891036433e-29", "0.000000027e-29", "J T^-2")
|
50
|
+
ATOMIC_UNIT_OF_MASS = Physical.new("atomic unit of mass", "9.10938215e-31", "0.00000045e-31", "kg")
|
51
|
+
ATOMIC_UNIT_OF_MOMENTUM = Physical.new("atomic unit of momentum", "1.992851565e-24", "0.000000099e-24", "kg m s^-1")
|
52
|
+
ATOMIC_UNIT_OF_PERMITTIVITY = Physical.new("atomic unit of permittivity", "1.112650056...e-10", "0", "F m^-1")
|
53
|
+
ATOMIC_UNIT_OF_TIME = Physical.new("atomic unit of time", "2.418884326505e-17", "0.000000000016e-1", "7 s")
|
54
|
+
ATOMIC_UNIT_OF_VELOCITY = Physical.new("atomic unit of velocity", "2.1876912541e6", "0.0000000015e6", "m s^-1")
|
55
|
+
AVOGADRO_CONSTANT = Physical.new("Avogadro constant", "6.02214179e23", "0.00000030e23", "mol^-1")
|
56
|
+
BOHR_MAGNETON = Physical.new("Bohr magneton", "927.400915e-26", "0.000023e-26", "J T^-1")
|
57
|
+
BOHR_MAGNETON_IN_EV_T = Physical.new("Bohr magneton in eV/T", "5.7883817555e-5", "0.0000000079e-5", "eV T^-1")
|
58
|
+
BOHR_MAGNETON_IN_HZ_T = Physical.new("Bohr magneton in Hz/T", "13.99624604e9", "0.00000035e9", "Hz T^-1")
|
59
|
+
BOHR_MAGNETON_IN_INVERSE_METERS_PER_TESLA = Physical.new("Bohr magneton in inverse meters per tesla", "46.6864515", "0.0000012", "m^-1 T^-1")
|
60
|
+
BOHR_MAGNETON_IN_K_T = Physical.new("Bohr magneton in K/T", "0.6717131", "0.0000012", "K T^-1")
|
61
|
+
BOHR_RADIUS = Physical.new("Bohr radius", "0.52917720859e-10", "0.00000000036e-10", "m")
|
62
|
+
BOLTZMANN_CONSTANT = Physical.new("Boltzmann constant", "1.3806504e-23", "0.0000024e-23", "J K^-1")
|
63
|
+
BOLTZMANN_CONSTANT_IN_EV_K = Physical.new("Boltzmann constant in eV/K", "8.617343e-5", "0.000015e-5", "eV K^-1")
|
64
|
+
BOLTZMANN_CONSTANT_IN_HZ_K = Physical.new("Boltzmann constant in Hz/K", "2.0836644e10", "0.0000036e10", "Hz K^-1")
|
65
|
+
BOLTZMANN_CONSTANT_IN_INVERSE_METERS_PER_KELVIN = Physical.new("Boltzmann constant in inverse meters per kelvin", "69.50356", "0.00012", "m^-1 K^-1")
|
66
|
+
CHARACTERISTIC_IMPEDANCE_OF_VACUUM = Physical.new("characteristic impedance of vacuum", "376.730313461...", "0", "ohm")
|
67
|
+
CLASSICAL_ELECTRON_RADIUS = Physical.new("classical electron radius", "2.8179402894e-15", "0.0000000058e-15", "m")
|
68
|
+
COMPTON_WAVELENGTH = Physical.new("Compton wavelength", "2.4263102175e-12", "0.0000000033e-12", "m")
|
69
|
+
COMPTON_WAVELENGTH_OVER_2_PI = Physical.new("Compton wavelength over 2 pi", "386.15926459e-15", "0.00000053e-15", "m")
|
70
|
+
CONDUCTANCE_QUANTUM = Physical.new("conductance quantum", "7.7480917004e-5", "0.0000000053e-5", "S")
|
71
|
+
CONVENTIONAL_VALUE_OF_JOSEPHSON_CONSTANT = Physical.new("conventional value of Josephson constant", "483597.9e9", "0", "Hz V^-1")
|
72
|
+
CONVENTIONAL_VALUE_OF_VON_KLITZING_CONSTANT = Physical.new("conventional value of von Klitzing constant", "25812.807", "0", "ohm")
|
73
|
+
CU_X_UNIT = Physical.new("Cu x unit", "1.00207699e-13", "0.00000028e-13", "m")
|
74
|
+
DEUTERON_ELECTRON_MAG_MOM_RATIO = Physical.new("deuteron-electron mag. mom. ratio", "-4.664345537e-4", "0.000000039e-4", "")
|
75
|
+
DEUTERON_ELECTRON_MASS_RATIO = Physical.new("deuteron-electron mass ratio", "3670.4829654", "0.0000016", "")
|
76
|
+
DEUTERON_G_FACTOR = Physical.new("deuteron g factor", "0.8574382308", "0.0000000072", "")
|
77
|
+
DEUTERON_MAG_MOM = Physical.new("deuteron mag. mom.", "0.433073465e-26", "0.000000011e-26", "J T^-1")
|
78
|
+
DEUTERON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("deuteron mag. mom. to Bohr magneton ratio", "0.4669754556e-3", "0.0000000039e-3", "")
|
79
|
+
DEUTERON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("deuteron mag. mom. to nuclear magneton ratio", "0.8574382308", "0.0000000072", "")
|
80
|
+
DEUTERON_MASS = Physical.new("deuteron mass", "3.34358320e-27", "0.00000017e-27", "kg")
|
81
|
+
DEUTERON_MASS_ENERGY_EQUIVALENT = Physical.new("deuteron mass energy equivalent", "3.00506272e-10", "0.00000015e-10", "J")
|
82
|
+
DEUTERON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("deuteron mass energy equivalent in MeV", "1875.612793", "0.000047", "MeV")
|
83
|
+
DEUTERON_MASS_IN_U = Physical.new("deuteron mass in u", "2.013553212724", "0.000000000078", "u")
|
84
|
+
DEUTERON_MOLAR_MASS = Physical.new("deuteron molar mass", "2.013553212724e-3", "0.000000000078e-3", "kg mol^-1")
|
85
|
+
DEUTERON_NEUTRON_MAG_MOM_RATIO = Physical.new("deuteron-neutron mag. mom. ratio", "-0.44820652", "0.00000011", "")
|
86
|
+
DEUTERON_PROTON_MAG_MOM_RATIO = Physical.new("deuteron-proton mag. mom. ratio", "0.3070122070", "0.0000000024", "")
|
87
|
+
DEUTERON_PROTON_MASS_RATIO = Physical.new("deuteron-proton mass ratio", "1.99900750108", "0.00000000022", "")
|
88
|
+
DEUTERON_RMS_CHARGE_RADIUS = Physical.new("deuteron rms charge radius", "2.1402e-15", "0.0028e-15", "m")
|
89
|
+
ELECTRIC_CONSTANT = Physical.new("electric constant", "8.854187817...e-12", "0", "F m^-1")
|
90
|
+
ELECTRON_CHARGE_TO_MASS_QUOTIENT = Physical.new("electron charge to mass quotient", "-1.758820150e11", "0.000000044e11", "C kg^-1")
|
91
|
+
ELECTRON_DEUTERON_MAG_MOM_RATIO = Physical.new("electron-deuteron mag. mom. ratio", "-2143.923498", "0.000018", "")
|
92
|
+
ELECTRON_DEUTERON_MASS_RATIO = Physical.new("electron-deuteron mass ratio", "2.7244371093e-4", "0.0000000012e-4", "")
|
93
|
+
ELECTRON_G_FACTOR = Physical.new("electron g factor", "-2.0023193043622", "0.0000000000015", "")
|
94
|
+
ELECTRON_GYROMAG_RATIO = Physical.new("electron gyromag. ratio", "1.760859770e11", "0.000000044e11", "s^-1 T^-1")
|
95
|
+
ELECTRON_GYROMAG_RATIO_OVER_2_PI = Physical.new("electron gyromag. ratio over 2 pi", "28024.95364", "0.00070", "MHz T^-1")
|
96
|
+
ELECTRON_MAG_MOM = Physical.new("electron mag. mom.", "-928.476377e-26", "0.000023e-26", "J T^-1")
|
97
|
+
ELECTRON_MAG_MOM_ANOMALY = Physical.new("electron mag. mom. anomaly", "1.15965218111e-3", "0.00000000074e-3", "")
|
98
|
+
ELECTRON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("electron mag. mom. to Bohr magneton ratio", "-1.00115965218111", "0.00000000000074", "")
|
99
|
+
ELECTRON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("electron mag. mom. to nuclear magneton ratio", "-1838.28197092", "0.00000080", "")
|
100
|
+
ELECTRON_MASS = Physical.new("electron mass", "9.10938215e-31", "0.00000045e-31", "kg")
|
101
|
+
ELECTRON_MASS_ENERGY_EQUIVALENT = Physical.new("electron mass energy equivalent", "8.18710438e-14", "0.00000041e-14", "J")
|
102
|
+
ELECTRON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("electron mass energy equivalent in MeV", "0.510998910", "0.000000013", "MeV")
|
103
|
+
ELECTRON_MASS_IN_U = Physical.new("electron mass in u", "5.4857990943e-4", "0.0000000023e-4", "u")
|
104
|
+
ELECTRON_MOLAR_MASS = Physical.new("electron molar mass", "5.4857990943e-7", "0.0000000023e-7", "kg mol^-1")
|
105
|
+
ELECTRON_MUON_MAG_MOM_RATIO = Physical.new("electron-muon mag. mom. ratio", "206.7669877", "0.0000052", "")
|
106
|
+
ELECTRON_MUON_MASS_RATIO = Physical.new("electron-muon mass ratio", "4.83633171e-3", "0.00000012e-3", "")
|
107
|
+
ELECTRON_NEUTRON_MAG_MOM_RATIO = Physical.new("electron-neutron mag. mom. ratio", "960.92050", "0.00023", "")
|
108
|
+
ELECTRON_NEUTRON_MASS_RATIO = Physical.new("electron-neutron mass ratio", "5.4386734459e-4", "0.0000000033e-4", "")
|
109
|
+
ELECTRON_PROTON_MAG_MOM_RATIO = Physical.new("electron-proton mag. mom. ratio", "-658.2106848", "0.0000054", "")
|
110
|
+
ELECTRON_PROTON_MASS_RATIO = Physical.new("electron-proton mass ratio", "5.4461702177e-4", "0.0000000024e-4", "")
|
111
|
+
ELECTRON_TAU_MASS_RATIO = Physical.new("electron-tau mass ratio", "2.87564e-4", "0.00047e-4", "")
|
112
|
+
ELECTRON_TO_ALPHA_PARTICLE_MASS_RATIO = Physical.new("electron to alpha particle mass ratio", "1.37093355570e-4", "0.00000000058e-4", "")
|
113
|
+
ELECTRON_TO_SHIELDED_HELION_MAG_MOM_RATIO = Physical.new("electron to shielded helion mag. mom. ratio", "864.058257", "0.000010", "")
|
114
|
+
ELECTRON_TO_SHIELDED_PROTON_MAG_MOM_RATIO = Physical.new("electron to shielded proton mag. mom. ratio", "-658.2275971", "0.0000072", "")
|
115
|
+
ELECTRON_VOLT = Physical.new("electron volt", "1.602176487e-19", "0.000000040e-19", "J")
|
116
|
+
ELEMENTARY_CHARGE = Physical.new("elementary charge", "1.602176487e-19", "0.000000040e-19", "C")
|
117
|
+
ELEMENTARY_CHARGE_OVER_H = Physical.new("elementary charge over h", "2.417989454e14", "0.000000060e14", "A J^-1")
|
118
|
+
FARADAY_CONSTANT = Physical.new("Faraday constant", "96485.3399", "0.0024", "C mol^-1")
|
119
|
+
#-- FARADAY_CONSTANT_FOR_CONVENTIONAL_ELECTRIC_CURRENT = Physical.new("Faraday constant for conventional electric current", "96485.3401", "0.0048", "C_90 mol^-1")
|
120
|
+
FERMI_COUPLING_CONSTANT = Physical.new("Fermi coupling constant", "1.16637e-5", "0.00001e-5", "GeV^-2")
|
121
|
+
FINE_STRUCTURE_CONSTANT = Physical.new("fine-structure constant", "7.2973525376e-3", "0.0000000050e-3", "")
|
122
|
+
FIRST_RADIATION_CONSTANT = Physical.new("first radiation constant", "3.74177118e-16", "0.00000019e-16", "W m^2")
|
123
|
+
FIRST_RADIATION_CONSTANT_FOR_SPECTRAL_RADIANCE = Physical.new("first radiation constant for spectral radiance", "1.191042759e-16", "0.000000059e-16", "W m^2 sr^-1")
|
124
|
+
HARTREE_ENERGY = Physical.new("Hartree energy", "4.35974394e-18", "0.00000022e-18", "J")
|
125
|
+
HARTREE_ENERGY_IN_EV = Physical.new("Hartree energy in eV", "27.21138386", "0.00000068", "eV")
|
126
|
+
HELION_ELECTRON_MASS_RATIO = Physical.new("helion-electron mass ratio", "5495.8852765", "0.0000052", "")
|
127
|
+
HELION_MASS = Physical.new("helion mass", "5.00641192e-27", "0.00000025e-27", "kg")
|
128
|
+
HELION_MASS_ENERGY_EQUIVALENT = Physical.new("helion mass energy equivalent", "4.49953864e-10", "0.00000022e-10", "J")
|
129
|
+
HELION_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("helion mass energy equivalent in MeV", "2808.391383", "0.000070", "MeV")
|
130
|
+
HELION_MASS_IN_U = Physical.new("helion mass in u", "3.0149322473", "0.0000000026", "u")
|
131
|
+
HELION_MOLAR_MASS = Physical.new("helion molar mass", "3.0149322473e-3", "0.0000000026e-3", "kg mol^-1")
|
132
|
+
HELION_PROTON_MASS_RATIO = Physical.new("helion-proton mass ratio", "2.9931526713", "0.0000000026", "")
|
133
|
+
INVERSE_FINE_STRUCTURE_CONSTANT = Physical.new("inverse fine-structure constant", "137.035999679", "0.000000094", "")
|
134
|
+
INVERSE_OF_CONDUCTANCE_QUANTUM = Physical.new("inverse of conductance quantum", "12906.4037787", "0.0000088", "ohm")
|
135
|
+
JOSEPHSON_CONSTANT = Physical.new("Josephson constant", "483597.891e9", "0.012e9", "Hz V^-1")
|
136
|
+
LATTICE_PARAMETER_OF_SILICON = Physical.new("lattice parameter of silicon", "543.102064e-12", "0.000014e-12", "m")
|
137
|
+
LOSCHMIDT_CONSTANT_101325 = Physical.new("Loschmidt constant (273.15 K, 101.325 kPa)", "2.6867774e25", "0.0000047e25", "m^-3")
|
138
|
+
MAG_CONSTANT = Physical.new("mag. constant", "12.566370614...e-7", "0", "N A^-2")
|
139
|
+
MAG_FLUX_QUANTUM = Physical.new("mag. flux quantum", "2.067833667e-15", "0.000000052e-15", "Wb")
|
140
|
+
MOLAR_GAS_CONSTANT = Physical.new("molar gas constant", "8.314472", "0.000015", "J mol^-1 K^-1")
|
141
|
+
MOLAR_MASS_CONSTANT = Physical.new("molar mass constant", "1e-3", "0", "kg mol^-1")
|
142
|
+
MOLAR_MASS_OF_CARBON_12 = Physical.new("molar mass of carbon-12", "12e-3", "0", "kg mol^-1")
|
143
|
+
MOLAR_PLANCK_CONSTANT = Physical.new("molar Planck constant", "3.9903126821e-10", "0.0000000057e-10", "J s mol^-1")
|
144
|
+
MOLAR_PLANCK_CONSTANT_TIMES_C = Physical.new("molar Planck constant times c", "0.11962656472", "0.00000000017", "J m mol^-1")
|
145
|
+
MOLAR_VOLUME_OF_IDEAL_GAS_100 = Physical.new("molar volume of ideal gas (273.15 K, 100 kPa)", "22.710981e-3", "0.000040e-3", "m^3 mol^-1")
|
146
|
+
MOLAR_VOLUME_OF_IDEAL_GAS_101325 = Physical.new("molar volume of ideal gas (273.15 K, 101.325 kPa)", "22.413996e-3", "0.000039e-3", "m^3 mol^-1")
|
147
|
+
MOLAR_VOLUME_OF_SILICON = Physical.new("molar volume of silicon", "12.0588349e-6", "0.0000011e-6", "m^3 mol^-1")
|
148
|
+
MO_X_UNIT = Physical.new("Mo x unit", "1.00209955e-13", "0.00000053e-13", "m")
|
149
|
+
MUON_COMPTON_WAVELENGTH = Physical.new("muon Compton wavelength", "11.73444104e-15", "0.00000030e-15", "m")
|
150
|
+
MUON_COMPTON_WAVELENGTH_OVER_2_PI = Physical.new("muon Compton wavelength over 2 pi", "1.867594295e-15", "0.000000047e-15", "m")
|
151
|
+
MUON_ELECTRON_MASS_RATIO = Physical.new("muon-electron mass ratio", "206.7682823", "0.0000052", "")
|
152
|
+
MUON_G_FACTOR = Physical.new("muon g factor", "-2.0023318414", "0.0000000012", "")
|
153
|
+
MUON_MAG_MOM = Physical.new("muon mag. mom.", "-4.49044786e-26", "0.00000016e-26", "J T^-1")
|
154
|
+
MUON_MAG_MOM_ANOMALY = Physical.new("muon mag. mom. anomaly", "1.16592069e-3", "0.00000060e-3", "")
|
155
|
+
MUON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("muon mag. mom. to Bohr magneton ratio", "-4.84197049e-3", "0.00000012e-3", "")
|
156
|
+
MUON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("muon mag. mom. to nuclear magneton ratio", "-8.89059705", "0.00000023", "")
|
157
|
+
MUON_MASS = Physical.new("muon mass", "1.88353130e-28", "0.00000011e-28", "kg")
|
158
|
+
MUON_MASS_ENERGY_EQUIVALENT = Physical.new("muon mass energy equivalent", "1.692833510e-11", "0.000000095e-11", "J")
|
159
|
+
MUON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("muon mass energy equivalent in MeV", "105.6583668", "0.0000038", "MeV")
|
160
|
+
MUON_MASS_IN_U = Physical.new("muon mass in u", "0.1134289256", "0.0000000029", "u")
|
161
|
+
MUON_MOLAR_MASS = Physical.new("muon molar mass", "0.1134289256e-3", "0.0000000029e-3", "kg mol^-1")
|
162
|
+
MUON_NEUTRON_MASS_RATIO = Physical.new("muon-neutron mass ratio", "0.1124545167", "0.0000000029", "")
|
163
|
+
MUON_PROTON_MAG_MOM_RATIO = Physical.new("muon-proton mag. mom. ratio", "-3.183345137", "0.000000085", "")
|
164
|
+
MUON_PROTON_MASS_RATIO = Physical.new("muon-proton mass ratio", "0.1126095261", "0.0000000029", "")
|
165
|
+
MUON_TAU_MASS_RATIO = Physical.new("muon-tau mass ratio", "5.94592e-2", "0.00097e-2", "")
|
166
|
+
NATURAL_UNIT_OF_ACTION = Physical.new("natural unit of action", "1.054571628e-34", "0.000000053e-34", "J s")
|
167
|
+
NATURAL_UNIT_OF_ACTION_IN_EV_S = Physical.new("natural unit of action in eV s", "6.58211899e-16", "0.00000016e-16", "eV s")
|
168
|
+
NATURAL_UNIT_OF_ENERGY = Physical.new("natural unit of energy", "8.18710438e-14", "0.00000041e-14", "J")
|
169
|
+
NATURAL_UNIT_OF_ENERGY_IN_MEV = Physical.new("natural unit of energy in MeV", "0.510998910", "0.000000013", "MeV")
|
170
|
+
NATURAL_UNIT_OF_LENGTH = Physical.new("natural unit of length", "386.15926459e-15", "0.00000053e-15", "m")
|
171
|
+
NATURAL_UNIT_OF_MASS = Physical.new("natural unit of mass", "9.10938215e-31", "0.00000045e-31", "kg")
|
172
|
+
NATURAL_UNIT_OF_MOMENTUM = Physical.new("natural unit of momentum", "2.73092406e-22", "0.00000014e-22", "kg m s^-1")
|
173
|
+
NATURAL_UNIT_OF_MOMENTUM_IN_MEV_C = Physical.new("natural unit of momentum in MeV/c", "0.510998910", "0.000000013", "MeV/c")
|
174
|
+
NATURAL_UNIT_OF_TIME = Physical.new("natural unit of time", "1.2880886570e-21", "0.0000000018e-21", "s")
|
175
|
+
NATURAL_UNIT_OF_VELOCITY = Physical.new("natural unit of velocity", "299792458", "0", "m s^-1")
|
176
|
+
NEUTRON_COMPTON_WAVELENGTH = Physical.new("neutron Compton wavelength", "1.3195908951e-15", "0.0000000020e-15", "m")
|
177
|
+
NEUTRON_COMPTON_WAVELENGTH_OVER_2_PI = Physical.new("neutron Compton wavelength over 2 pi", "0.21001941382e-15", "0.00000000031e-15", "m")
|
178
|
+
NEUTRON_ELECTRON_MAG_MOM_RATIO = Physical.new("neutron-electron mag. mom. ratio", "1.04066882e-3", "0.00000025e-3", "")
|
179
|
+
NEUTRON_ELECTRON_MASS_RATIO = Physical.new("neutron-electron mass ratio", "1838.6836605", "0.0000011", "")
|
180
|
+
NEUTRON_G_FACTOR = Physical.new("neutron g factor", "-3.82608545", "0.00000090", "")
|
181
|
+
NEUTRON_GYROMAG_RATIO = Physical.new("neutron gyromag. ratio", "1.83247185e8", "0.00000043e8", "s^-1 T^-1")
|
182
|
+
NEUTRON_GYROMAG_RATIO_OVER_2_PI = Physical.new("neutron gyromag. ratio over 2 pi", "29.1646954", "0.0000069", "MHz T^-1")
|
183
|
+
NEUTRON_MAG_MOM = Physical.new("neutron mag. mom.", "-0.96623641e-26", "0.00000023e-26", "J T^-1")
|
184
|
+
NEUTRON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("neutron mag. mom. to Bohr magneton ratio", "-1.04187563e-3", "0.00000025e-3", "")
|
185
|
+
NEUTRON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("neutron mag. mom. to nuclear magneton ratio", "-1.91304273", "0.00000045", "")
|
186
|
+
NEUTRON_MASS = Physical.new("neutron mass", "1.674927211e-27", "0.000000084e-27", "kg")
|
187
|
+
NEUTRON_MASS_ENERGY_EQUIVALENT = Physical.new("neutron mass energy equivalent", "1.505349505e-10", "0.000000075e-10", "J")
|
188
|
+
NEUTRON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("neutron mass energy equivalent in MeV", "939.565346", "0.000023", "MeV")
|
189
|
+
NEUTRON_MASS_IN_U = Physical.new("neutron mass in u", "1.00866491597", "0.00000000043", "u")
|
190
|
+
NEUTRON_MOLAR_MASS = Physical.new("neutron molar mass", "1.00866491597e-3", "0.00000000043e-3", "kg mol^-1")
|
191
|
+
NEUTRON_MUON_MASS_RATIO = Physical.new("neutron-muon mass ratio", "8.89248409", "0.00000023", "")
|
192
|
+
NEUTRON_PROTON_MAG_MOM_RATIO = Physical.new("neutron-proton mag. mom. ratio", "-0.68497934", "0.00000016", "")
|
193
|
+
NEUTRON_PROTON_MASS_RATIO = Physical.new("neutron-proton mass ratio", "1.00137841918", "0.00000000046", "")
|
194
|
+
NEUTRON_TAU_MASS_RATIO = Physical.new("neutron-tau mass ratio", "0.528740", "0.000086", "")
|
195
|
+
NEUTRON_TO_SHIELDED_PROTON_MAG_MOM_RATIO = Physical.new("neutron to shielded proton mag. mom. ratio", "-0.68499694", "0.00000016", "")
|
196
|
+
NEWTONIAN_CONSTANT_OF_GRAVITATION = Physical.new("Newtonian constant of gravitation", "6.67428e-11", "0.00067e-11", "m^3 kg^-1 s^-2")
|
197
|
+
#-- Expanded units for parsing from: "(GeV/c^2)^-2"
|
198
|
+
NEWTONIAN_CONSTANT_OF_GRAVITATION_OVER_H_BAR_C = Physical.new("Newtonian constant of gravitation over h-bar c", "6.70881e-39", "0.00067e-39", "GeV^-2 c^-4")
|
199
|
+
NUCLEAR_MAGNETON = Physical.new("nuclear magneton", "5.05078324e-27", "0.00000013e-27", "J T^-1")
|
200
|
+
NUCLEAR_MAGNETON_IN_EV_T = Physical.new("nuclear magneton in eV/T", "3.1524512326e-8", "0.0000000045e-8", "eV T^-1")
|
201
|
+
NUCLEAR_MAGNETON_IN_INVERSE_METERS_PER_TESLA = Physical.new("nuclear magneton in inverse meters per tesla", "2.542623616e-2", "0.000000064e-2", "m^-1 T^-1")
|
202
|
+
NUCLEAR_MAGNETON_IN_K_T = Physical.new("nuclear magneton in K/T", "3.6582637e-4", "0.0000064e-4", "K T^-1")
|
203
|
+
NUCLEAR_MAGNETON_IN_MHZ_T = Physical.new("nuclear magneton in MHz/T", "7.62259384", "0.00000019", "MHz T^-1")
|
204
|
+
PLANCK_CONSTANT = Physical.new("Planck constant", "6.62606896e-34", "0.00000033e-34", "J s")
|
205
|
+
PLANCK_CONSTANT_IN_EV_S = Physical.new("Planck constant in eV s", "4.13566733e-15", "0.00000010e-15", "eV s")
|
206
|
+
PLANCK_CONSTANT_OVER_2_PI = Physical.new("Planck constant over 2 pi", "1.054571628e-34", "0.000000053e-34", "J s")
|
207
|
+
PLANCK_CONSTANT_OVER_2_PI_IN_EV_S = Physical.new("Planck constant over 2 pi in eV s", "6.58211899e-16", "0.00000016e-16", "eV s")
|
208
|
+
PLANCK_CONSTANT_OVER_2_PI_TIMES_C_IN_MEV_FM = Physical.new("Planck constant over 2 pi times c in MeV fm", "197.3269631", "0.0000049", "MeV fm")
|
209
|
+
PLANCK_LENGTH = Physical.new("Planck length", "1.616252e-35", "0.000081e-35", "m")
|
210
|
+
PLANCK_MASS = Physical.new("Planck mass", "2.17644e-8", "0.00011e-8", "kg")
|
211
|
+
PLANCK_MASS_ENERGY_EQUIVALENT_IN_GEV = Physical.new("Planck mass energy equivalent in GeV", "1.220892e19", "0.000061e19", "GeV")
|
212
|
+
PLANCK_TEMPERATURE = Physical.new("Planck temperature", "1.416785e32", "0.000071e32", "K")
|
213
|
+
PLANCK_TIME = Physical.new("Planck time", "5.39124e-44", "0.00027e-44", "s")
|
214
|
+
PROTON_CHARGE_TO_MASS_QUOTIENT = Physical.new("proton charge to mass quotient", "9.57883392e7", "0.00000024e7", "C kg^-1")
|
215
|
+
PROTON_COMPTON_WAVELENGTH = Physical.new("proton Compton wavelength", "1.3214098446e-15", "0.0000000019e-15", "m")
|
216
|
+
PROTON_COMPTON_WAVELENGTH_OVER_2_PI = Physical.new("proton Compton wavelength over 2 pi", "0.21030890861e-15", "0.00000000030e-15", "m")
|
217
|
+
PROTON_ELECTRON_MASS_RATIO = Physical.new("proton-electron mass ratio", "1836.15267247", "0.00000080", "")
|
218
|
+
PROTON_G_FACTOR = Physical.new("proton g factor", "5.585694713", "0.000000046", "")
|
219
|
+
PROTON_GYROMAG_RATIO = Physical.new("proton gyromag. ratio", "2.675222099e8", "0.000000070e8", "s^-1 T^-1")
|
220
|
+
PROTON_GYROMAG_RATIO_OVER_2_PI = Physical.new("proton gyromag. ratio over 2 pi", "42.5774821", "0.0000011", "MHz T^-1")
|
221
|
+
PROTON_MAG_MOM = Physical.new("proton mag. mom.", "1.410606662e-26", "0.000000037e-26", "J T^-1")
|
222
|
+
PROTON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("proton mag. mom. to Bohr magneton ratio", "1.521032209e-3", "0.000000012e-3", "")
|
223
|
+
PROTON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("proton mag. mom. to nuclear magneton ratio", "2.792847356", "0.000000023", "")
|
224
|
+
PROTON_MAG_SHIELDING_CORRECTION = Physical.new("proton mag. shielding correction", "25.694e-6", "0.014e-6", "")
|
225
|
+
PROTON_MASS = Physical.new("proton mass", "1.672621637e-27", "0.000000083e-27", "kg")
|
226
|
+
PROTON_MASS_ENERGY_EQUIVALENT = Physical.new("proton mass energy equivalent", "1.503277359e-10", "0.000000075e-10", "J")
|
227
|
+
PROTON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("proton mass energy equivalent in MeV", "938.272013", "0.000023", "MeV")
|
228
|
+
PROTON_MASS_IN_U = Physical.new("proton mass in u", "1.00727646677", "0.00000000010", "u")
|
229
|
+
PROTON_MOLAR_MASS = Physical.new("proton molar mass", "1.00727646677e-3", "0.00000000010e-3", "kg mol^-1")
|
230
|
+
PROTON_MUON_MASS_RATIO = Physical.new("proton-muon mass ratio", "8.88024339", "0.00000023", "")
|
231
|
+
PROTON_NEUTRON_MAG_MOM_RATIO = Physical.new("proton-neutron mag. mom. ratio", "-1.45989806", "0.00000034", "")
|
232
|
+
PROTON_NEUTRON_MASS_RATIO = Physical.new("proton-neutron mass ratio", "0.99862347824", "0.00000000046", "")
|
233
|
+
PROTON_RMS_CHARGE_RADIUS = Physical.new("proton rms charge radius", "0.8768e-15", "0.0069e-15", "m")
|
234
|
+
PROTON_TAU_MASS_RATIO = Physical.new("proton-tau mass ratio", "0.528012", "0.000086", "")
|
235
|
+
QUANTUM_OF_CIRCULATION = Physical.new("quantum of circulation", "3.6369475199e-4", "0.0000000050e-4", "m^2 s^-1")
|
236
|
+
QUANTUM_OF_CIRCULATION_TIMES_2 = Physical.new("quantum of circulation times 2", "7.273895040e-4", "0.000000010e-4", "m^2 s^-1")
|
237
|
+
RYDBERG_CONSTANT = Physical.new("Rydberg constant", "10973731.568527", "0.000073", "m^-1")
|
238
|
+
RYDBERG_CONSTANT_TIMES_C_IN_HZ = Physical.new("Rydberg constant times c in Hz", "3.289841960361e15", "0.000000000022e15", "Hz")
|
239
|
+
RYDBERG_CONSTANT_TIMES_HC_IN_EV = Physical.new("Rydberg constant times hc in eV", "13.60569193", "0.00000034", "eV")
|
240
|
+
RYDBERG_CONSTANT_TIMES_HC_IN_J = Physical.new("Rydberg constant times hc in J", "2.17987197e-18", "0.00000011e-18", "J")
|
241
|
+
SACKUR_TETRODE_CONSTANT_100 = Physical.new("Sackur-Tetrode constant (1 K, 100 kPa)", "-1.1517047", "0.0000044", "")
|
242
|
+
SACKUR_TETRODE_CONSTANT_101325 = Physical.new("Sackur-Tetrode constant (1 K, 101.325 kPa)", "-1.1648677", "0.0000044", "")
|
243
|
+
SECOND_RADIATION_CONSTANT = Physical.new("second radiation constant", "1.4387752e-2", "0.0000025e-2", "m K")
|
244
|
+
SHIELDED_HELION_GYROMAG_RATIO = Physical.new("shielded helion gyromag. ratio", "2.037894730e8", "0.000000056e8", "s^-1 T^-1")
|
245
|
+
SHIELDED_HELION_GYROMAG_RATIO_OVER_2_PI = Physical.new("shielded helion gyromag. ratio over 2 pi", "32.43410198", "0.00000090", "MHz T^-1")
|
246
|
+
SHIELDED_HELION_MAG_MOM = Physical.new("shielded helion mag. mom.", "-1.074552982e-26", "0.000000030e-26", "J T^-1")
|
247
|
+
SHIELDED_HELION_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("shielded helion mag. mom. to Bohr magneton ratio", "-1.158671471e-3", "0.000000014e-3", "")
|
248
|
+
SHIELDED_HELION_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("shielded helion mag. mom. to nuclear magneton ratio", "-2.127497718", "0.000000025", "")
|
249
|
+
SHIELDED_HELION_TO_PROTON_MAG_MOM_RATIO = Physical.new("shielded helion to proton mag. mom. ratio", "-0.761766558", "0.000000011", "")
|
250
|
+
SHIELDED_HELION_TO_SHIELDED_PROTON_MAG_MOM_RATIO = Physical.new("shielded helion to shielded proton mag. mom. ratio", "-0.7617861313", "0.0000000033", "")
|
251
|
+
SHIELDED_PROTON_GYROMAG_RATIO = Physical.new("shielded proton gyromag. ratio", "2.675153362e8", "0.000000073e8", "s^-1 T^-1")
|
252
|
+
SHIELDED_PROTON_GYROMAG_RATIO_OVER_2_PI = Physical.new("shielded proton gyromag. ratio over 2 pi", "42.5763881", "0.0000012", "MHz T^-1")
|
253
|
+
SHIELDED_PROTON_MAG_MOM = Physical.new("shielded proton mag. mom.", "1.410570419e-26", "0.000000038e-26", "J T^-1")
|
254
|
+
SHIELDED_PROTON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("shielded proton mag. mom. to Bohr magneton ratio", "1.520993128e-3", "0.000000017e-3", "")
|
255
|
+
SHIELDED_PROTON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("shielded proton mag. mom. to nuclear magneton ratio", "2.792775598", "0.000000030", "")
|
256
|
+
SPEED_OF_LIGHT_IN_VACUUM = Physical.new("speed of light in vacuum", "299792458", "0", "m s^-1")
|
257
|
+
STANDARD_ACCELERATION_OF_GRAVITY = Physical.new("standard acceleration of gravity", "9.80665", "0", "m s^-2")
|
258
|
+
STANDARD_ATMOSPHERE = Physical.new("standard atmosphere", "101325", "0", "Pa")
|
259
|
+
STEFAN_BOLTZMANN_CONSTANT = Physical.new("Stefan-Boltzmann constant", "5.670400e-8", "0.000040e-8", "W m^-2 K^-4")
|
260
|
+
TAU_COMPTON_WAVELENGTH = Physical.new("tau Compton wavelength", "0.69772e-15", "0.00011e-15", "m")
|
261
|
+
TAU_COMPTON_WAVELENGTH_OVER_2_PI = Physical.new("tau Compton wavelength over 2 pi", "0.111046e-15", "0.000018e-15", "m")
|
262
|
+
TAU_ELECTRON_MASS_RATIO = Physical.new("tau-electron mass ratio", "3477.48", "0.57", "")
|
263
|
+
TAU_MASS = Physical.new("tau mass", "3.16777e-27", "0.00052e-27", "kg")
|
264
|
+
TAU_MASS_ENERGY_EQUIVALENT = Physical.new("tau mass energy equivalent", "2.84705e-10", "0.00046e-10", "J")
|
265
|
+
TAU_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("tau mass energy equivalent in MeV", "1776.99", "0.29", "MeV")
|
266
|
+
TAU_MASS_IN_U = Physical.new("tau mass in u", "1.90768", "0.00031", "u")
|
267
|
+
TAU_MOLAR_MASS = Physical.new("tau molar mass", "1.90768e-3", "0.00031e-3", "kg mol^-1")
|
268
|
+
TAU_MUON_MASS_RATIO = Physical.new("tau-muon mass ratio", "16.8183", "0.0027", "")
|
269
|
+
TAU_NEUTRON_MASS_RATIO = Physical.new("tau-neutron mass ratio", "1.89129", "0.00031", "")
|
270
|
+
TAU_PROTON_MASS_RATIO = Physical.new("tau-proton mass ratio", "1.89390", "0.00031", "")
|
271
|
+
THOMSON_CROSS_SECTION = Physical.new("Thomson cross section", "0.6652458558e-28", "0.0000000027e-28", "m^2")
|
272
|
+
TRITON_ELECTRON_MAG_MOM_RATIO = Physical.new("triton-electron mag. mom. ratio", "-1.620514423e-3", "0.000000021e-3", "")
|
273
|
+
TRITON_ELECTRON_MASS_RATIO = Physical.new("triton-electron mass ratio", "5496.9215269", "0.0000051", "")
|
274
|
+
TRITON_G_FACTOR = Physical.new("triton g factor", "5.957924896", "0.000000076", "")
|
275
|
+
TRITON_MAG_MOM = Physical.new("triton mag. mom.", "1.504609361e-26", "0.000000042e-26", "J T^-1")
|
276
|
+
TRITON_MAG_MOM_TO_BOHR_MAGNETON_RATIO = Physical.new("triton mag. mom. to Bohr magneton ratio", "1.622393657e-3", "0.000000021e-3", "")
|
277
|
+
TRITON_MAG_MOM_TO_NUCLEAR_MAGNETON_RATIO = Physical.new("triton mag. mom. to nuclear magneton ratio", "2.978962448", "0.000000038", "")
|
278
|
+
TRITON_MASS = Physical.new("triton mass", "5.00735588e-27", "0.00000025e-27", "kg")
|
279
|
+
TRITON_MASS_ENERGY_EQUIVALENT = Physical.new("triton mass energy equivalent", "4.50038703e-10", "0.00000022e-10", "J")
|
280
|
+
TRITON_MASS_ENERGY_EQUIVALENT_IN_MEV = Physical.new("triton mass energy equivalent in MeV", "2808.920906", "0.000070", "MeV")
|
281
|
+
TRITON_MASS_IN_U = Physical.new("triton mass in u", "3.0155007134", "0.0000000025", "u")
|
282
|
+
TRITON_MOLAR_MASS = Physical.new("triton molar mass", "3.0155007134e-3", "0.0000000025e-3", "kg mol^-1")
|
283
|
+
TRITON_NEUTRON_MAG_MOM_RATIO = Physical.new("triton-neutron mag. mom. ratio", "-1.55718553", "0.00000037", "")
|
284
|
+
TRITON_PROTON_MAG_MOM_RATIO = Physical.new("triton-proton mag. mom. ratio", "1.066639908", "0.000000010", "")
|
285
|
+
TRITON_PROTON_MASS_RATIO = Physical.new("triton-proton mass ratio", "2.9937170309", "0.0000000025", "")
|
286
|
+
UNIFIED_ATOMIC_MASS_UNIT = Physical.new("unified atomic mass unit", "1.660538782e-27", "0.000000083e-27", "kg")
|
287
|
+
VON_KLITZING_CONSTANT = Physical.new("von Klitzing constant", "25812.807557", "0.000018", "ohm")
|
288
|
+
WEAK_MIXING_ANGLE = Physical.new("weak mixing angle", "0.22255", "0.00056", "")
|
289
|
+
WIEN_FREQUENCY_DISPLACEMENT_LAW_CONSTANT = Physical.new("Wien frequency displacement law constant", "5.878933e10", "0.000010e10", "Hz K^-1")
|
290
|
+
WIEN_WAVELENGTH_DISPLACEMENT_LAW_CONSTANT = Physical.new("Wien wavelength displacement law constant", "2.8977685e-3", "0.0000051e-3", "m K")
|
291
|
+
|
292
|
+
include Constants::Library
|
293
|
+
library.index_by_attribute :name
|
294
|
+
|
295
|
+
end
|
296
|
+
end
|
297
|
+
end
|