constants 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +84 -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
|