6 // quick element add to vector
7 inline void s(string _
, string a
, double b
, vector
<element
>& e
)
17 void register_elements(vector
<element
>& e
)
19 s("H", "Hydrogen", 1.0080, e
);
20 s("He", "Helium", 4.0026, e
);
21 s("Li", "Lithium" ,6.94, e
);
22 s("Be", "Beryllium", 9.0122, e
);
23 s("B", "Boron", 10.81, e
);
24 s("C", "Carbon", 12.011, e
);
25 s("N", "Nitrogen", 14.007, e
);
26 s("O", "Oxygen", 15.999, e
);
27 s("F", "Fluorine", 18.998, e
);
28 s("Ne", "Neon", 20.180, e
);
29 s("Na", "Sodium", 22.990, e
);
30 s("Mg", "Magnesium", 24.305, e
);
31 s("Al", "", 26.982, e
);
32 s("Si", "", 28.085, e
);
33 s("P", "", 30.974, e
);
35 s("Cl", "", 35.45, e
);
36 s("Ar", "", 39.95, e
);
37 s("K", "", 39.098, e
);
38 s("Ca", "", 40.078, e
);
39 s("Sc", "", 44.956, e
);
40 s("Ti", "", 47.867, e
);
41 s("V", "", 50.942, e
);
42 s("Cr", "", 51.996, e
);
43 s("Mn", "", 54.938, e
);
44 s("Fe", "", 55.845, e
);
45 s("Co", "", 58.933, e
);
46 s("Ni", "", 58.693, e
);
47 s("Cu", "", 63.546, e
);
48 s("Zn", "", 65.38, e
);
49 s("Ga", "", 69.723, e
);
50 s("Ge", "", 72.630, e
);
51 s("As", "", 74.922, e
);
52 s("Se", "", 78.971, e
);
53 s("Br", "", 79.904, e
);
54 s("Kr", "", 83.798, e
);
55 s("Rb", "", 85.468, e
);
56 s("Sr", "", 87.62, e
);
57 s("Y", "", 88.906, e
);
58 s("Zr", "", 91.224, e
);
59 s("Nb", "", 92.906, e
);
60 s("Mo", "", 95.95, e
);
62 s("Ru", "", 101.07, e
);
63 s("Rh", "", 102.91, e
);
64 s("Pd", "", 106.42, e
);
65 s("Ag", "", 107.87, e
);
66 s("Cd", "", 112.41, e
);
67 s("In", "", 114.82, e
);
68 s("Sn", "", 118.71, e
);
69 s("Sb", "", 121.76, e
);
70 s("Te", "", 127.60, e
);
71 s("I", "", 126.90, e
);
72 s("Xe", "", 131.29, e
);
73 s("Cs", "", 132.91, e
);
74 s("Ba", "", 137.33, e
);
75 s("La", "", 138.91, e
);
76 s("Ce", "", 140.12, e
);
77 s("Pr", "", 140.91, e
);
78 s("Nd", "", 144.24, e
);
80 s("Sm", "", 150.36, e
);
81 s("Eu", "", 151.96, e
);
82 s("Gd", "", 157.25, e
);
83 s("Tb", "", 158.93, e
);
84 s("Dy", "", 162.50, e
);
85 s("Ho", "", 164.93, e
);
86 s("Er", "", 167.26, e
);
87 s("Tm", "", 168.93, e
);
88 s("Yb", "", 173.05, e
);
89 s("Lu", "", 174.97, e
);
90 s("Hf", "", 178.49, e
);
91 s("Ta", "", 180.95, e
);
92 s("W", "", 183.84, e
);
93 s("Re", "", 186.21, e
);
94 s("Os", "", 190.23, e
);
95 s("Ir", "", 192.22, e
);
96 s("Pt", "", 195.08, e
);
97 s("Au", "", 196.97, e
);
98 s("Hg", "", 200.59, e
);
99 s("Tl", "", 204.38, e
);
100 s("Pb", "", 207.2, e
);
101 s("Bi", "", 208.98, e
);
108 s("Th", "", 232.04, e
);
109 s("Pa", "", 231.04, e
);
110 s("U", "", 238.03, e
);
139 int find_symbol(vector
<element
> e
, string q
)
141 for (int i
= 0; i
< e
.size(); i
++)
143 if (e
[i
].symbol
== q
)