root / ase / data / __init__.py @ 5
Historique | Voir | Annoter | Télécharger (10,28 ko)
| 1 |
import numpy as np |
|---|---|
| 2 |
|
| 3 |
|
| 4 |
chemical_symbols = ['X', 'H', 'He', 'Li', 'Be', |
| 5 |
'B', 'C', 'N', 'O', 'F', |
| 6 |
'Ne', 'Na', 'Mg', 'Al', 'Si', |
| 7 |
'P', 'S', 'Cl', 'Ar', 'K', |
| 8 |
'Ca', 'Sc', 'Ti', 'V', 'Cr', |
| 9 |
'Mn', 'Fe', 'Co', 'Ni', 'Cu', |
| 10 |
'Zn', 'Ga', 'Ge', 'As', 'Se', |
| 11 |
'Br', 'Kr', 'Rb', 'Sr', 'Y', |
| 12 |
'Zr', 'Nb', 'Mo', 'Tc', 'Ru', |
| 13 |
'Rh', 'Pd', 'Ag', 'Cd', 'In', |
| 14 |
'Sn', 'Sb', 'Te', 'I', 'Xe', |
| 15 |
'Cs', 'Ba', 'La', 'Ce', 'Pr', |
| 16 |
'Nd', 'Pm', 'Sm', 'Eu', 'Gd', |
| 17 |
'Tb', 'Dy', 'Ho', 'Er', 'Tm', |
| 18 |
'Yb', 'Lu', 'Hf', 'Ta', 'W', |
| 19 |
'Re', 'Os', 'Ir', 'Pt', 'Au', |
| 20 |
'Hg', 'Tl', 'Pb', 'Bi', 'Po', |
| 21 |
'At', 'Rn', 'Fr', 'Ra', 'Ac', |
| 22 |
'Th', 'Pa', 'U', 'Np', 'Pu', |
| 23 |
'Am', 'Cm', 'Bk', 'Cf', 'Es', |
| 24 |
'Fm', 'Md', 'No', 'Lw'] |
| 25 |
|
| 26 |
atomic_numbers = {}
|
| 27 |
for Z, symbol in enumerate(chemical_symbols): |
| 28 |
atomic_numbers[symbol] = Z |
| 29 |
|
| 30 |
atomic_names = [ |
| 31 |
'', 'Hydrogen', 'Helium', 'Lithium', 'Beryllium', 'Boron', |
| 32 |
'Carbon', 'Nitrogen', 'Oxygen', 'Fluorine', 'Neon', 'Sodium', |
| 33 |
'Magnesium', 'Aluminium', 'Silicon', 'Phosphorus', 'Sulfur', |
| 34 |
'Chlorine', 'Argon', 'Potassium', 'Calcium', 'Scandium', |
| 35 |
'Titanium', 'Vanadium', 'Chromium', 'Manganese', 'Iron', |
| 36 |
'Cobalt', 'Nickel', 'Copper', 'Zinc', 'Gallium', 'Germanium', |
| 37 |
'Arsenic', 'Selenium', 'Bromine', 'Krypton', 'Rubidium', |
| 38 |
'Strontium', 'Yttrium', 'Zirconium', 'Niobium', 'Molybdenum', |
| 39 |
'Technetium', 'Ruthenium', 'Rhodium', 'Palladium', 'Silver', |
| 40 |
'Cadmium', 'Indium', 'Tin', 'Antimony', 'Tellurium', |
| 41 |
'Iodine', 'Xenon', 'Caesium', 'Barium', 'Lanthanum', |
| 42 |
'Cerium', 'Praseodymium', 'Neodymium', 'Promethium', |
| 43 |
'Samarium', 'Europium', 'Gadolinium', 'Terbium', |
| 44 |
'Dysprosium', 'Holmium', 'Erbium', 'Thulium', 'Ytterbium', |
| 45 |
'Lutetium', 'Hafnium', 'Tantalum', 'Tungsten', 'Rhenium', |
| 46 |
'Osmium', 'Iridium', 'Platinum', 'Gold', 'Mercury', |
| 47 |
'Thallium', 'Lead', 'Bismuth', 'Polonium', 'Astatine', |
| 48 |
'Radon', 'Francium', 'Radium', 'Actinium', 'Thorium', |
| 49 |
'Protactinium', 'Uranium', 'Neptunium', 'Plutonium', |
| 50 |
'Americium', 'Curium', 'Berkelium', 'Californium', |
| 51 |
'Einsteinium', 'Fermium', 'Mendelevium', 'Nobelium', |
| 52 |
'Lawrencium', 'Unnilquadium', 'Unnilpentium', 'Unnilhexium'] |
| 53 |
|
| 54 |
atomic_masses = np.array([ |
| 55 |
0.00000, # X |
| 56 |
1.00794, # H |
| 57 |
4.00260, # He |
| 58 |
6.94100, # Li |
| 59 |
9.01218, # Be |
| 60 |
10.81100, # B |
| 61 |
12.01100, # C |
| 62 |
14.00670, # N |
| 63 |
15.99940, # O |
| 64 |
18.99840, # F |
| 65 |
20.17970, # Ne |
| 66 |
22.98977, # Na |
| 67 |
24.30500, # Mg |
| 68 |
26.98154, # Al |
| 69 |
28.08550, # Si |
| 70 |
30.97376, # P |
| 71 |
32.06600, # S |
| 72 |
35.45270, # Cl |
| 73 |
39.94800, # Ar |
| 74 |
39.09830, # K |
| 75 |
40.07800, # Ca |
| 76 |
44.95590, # Sc |
| 77 |
47.88000, # Ti |
| 78 |
50.94150, # V |
| 79 |
51.99600, # Cr |
| 80 |
54.93800, # Mn |
| 81 |
55.84700, # Fe |
| 82 |
58.93320, # Co |
| 83 |
58.69340, # Ni |
| 84 |
63.54600, # Cu |
| 85 |
65.39000, # Zn |
| 86 |
69.72300, # Ga |
| 87 |
72.61000, # Ge |
| 88 |
74.92160, # As |
| 89 |
78.96000, # Se |
| 90 |
79.90400, # Br |
| 91 |
83.80000, # Kr |
| 92 |
85.46780, # Rb |
| 93 |
87.62000, # Sr |
| 94 |
88.90590, # Y |
| 95 |
91.22400, # Zr |
| 96 |
92.90640, # Nb |
| 97 |
95.94000, # Mo |
| 98 |
np.nan, # Tc
|
| 99 |
101.07000, # Ru |
| 100 |
102.90550, # Rh |
| 101 |
106.42000, # Pd |
| 102 |
107.86800, # Ag |
| 103 |
112.41000, # Cd |
| 104 |
114.82000, # In |
| 105 |
118.71000, # Sn |
| 106 |
121.75700, # Sb |
| 107 |
127.60000, # Te |
| 108 |
126.90450, # I |
| 109 |
131.29000, # Xe |
| 110 |
132.90540, # Cs |
| 111 |
137.33000, # Ba |
| 112 |
138.90550, # La |
| 113 |
140.12000, # Ce |
| 114 |
140.90770, # Pr |
| 115 |
144.24000, # Nd |
| 116 |
np.nan, # Pm
|
| 117 |
150.36000, # Sm |
| 118 |
151.96500, # Eu |
| 119 |
157.25000, # Gd |
| 120 |
158.92530, # Tb |
| 121 |
162.50000, # Dy |
| 122 |
164.93030, # Ho |
| 123 |
167.26000, # Er |
| 124 |
168.93420, # Tm |
| 125 |
173.04000, # Yb |
| 126 |
174.96700, # Lu |
| 127 |
178.49000, # Hf |
| 128 |
180.94790, # Ta |
| 129 |
183.85000, # W |
| 130 |
186.20700, # Re |
| 131 |
190.20000, # Os |
| 132 |
192.22000, # Ir |
| 133 |
195.08000, # Pt |
| 134 |
196.96650, # Au |
| 135 |
200.59000, # Hg |
| 136 |
204.38300, # Tl |
| 137 |
207.20000, # Pb |
| 138 |
208.98040, # Bi |
| 139 |
np.nan, # Po
|
| 140 |
np.nan, # At
|
| 141 |
np.nan, # Rn
|
| 142 |
np.nan, # Fr
|
| 143 |
226.02540, # Ra |
| 144 |
np.nan, # Ac
|
| 145 |
232.03810, # Th |
| 146 |
231.03590, # Pa |
| 147 |
238.02900, # U |
| 148 |
237.04820, # Np |
| 149 |
np.nan, # Pu
|
| 150 |
np.nan, # Am
|
| 151 |
np.nan, # Cm
|
| 152 |
np.nan, # Bk
|
| 153 |
np.nan, # Cf
|
| 154 |
np.nan, # Es
|
| 155 |
np.nan, # Fm
|
| 156 |
np.nan, # Md
|
| 157 |
np.nan, # No
|
| 158 |
np.nan])# Lw
|
| 159 |
|
| 160 |
covalent_radius_default = 0.20 # for anything we don't know better |
| 161 |
|
| 162 |
covalent_radii = np.array([ |
| 163 |
covalent_radius_default, # X
|
| 164 |
0.32, # H |
| 165 |
0.93, # He |
| 166 |
1.23, # Li |
| 167 |
0.90, # Be |
| 168 |
0.82, # B |
| 169 |
0.77, # C |
| 170 |
0.75, # N |
| 171 |
0.73, # O |
| 172 |
0.72, # F |
| 173 |
0.71, # Ne |
| 174 |
1.54, # Na |
| 175 |
1.36, # Mg |
| 176 |
1.18, # Al |
| 177 |
1.11, # Si |
| 178 |
1.06, # P |
| 179 |
1.02, # S |
| 180 |
0.99, # Cl |
| 181 |
0.98, # Ar |
| 182 |
2.03, # K |
| 183 |
1.74, # Ca |
| 184 |
1.44, # Sc |
| 185 |
1.32, # Ti |
| 186 |
1.22, # V |
| 187 |
1.18, # Cr |
| 188 |
1.17, # Mn |
| 189 |
1.17, # Fe |
| 190 |
1.16, # Co |
| 191 |
1.15, # Ni |
| 192 |
1.17, # Cu |
| 193 |
1.25, # Zn |
| 194 |
1.26, # Ga |
| 195 |
1.22, # Ge |
| 196 |
1.20, # As |
| 197 |
1.16, # Se |
| 198 |
1.14, # Br |
| 199 |
1.89, # Kr |
| 200 |
2.16, # Rb |
| 201 |
1.91, # Sr |
| 202 |
1.62, # Y |
| 203 |
1.45, # Zr |
| 204 |
1.34, # Nb |
| 205 |
1.30, # Mo |
| 206 |
1.27, # Tc |
| 207 |
1.25, # Ru |
| 208 |
1.25, # Rh |
| 209 |
1.28, # Pd |
| 210 |
1.34, # Ag |
| 211 |
1.41, # Cd |
| 212 |
1.44, # In |
| 213 |
1.41, # Sn |
| 214 |
1.40, # Sb |
| 215 |
1.36, # Te |
| 216 |
1.33, # I |
| 217 |
1.31, # Xe |
| 218 |
2.35, # Cs |
| 219 |
1.98, # Ba |
| 220 |
1.25, # La |
| 221 |
1.65, # Ce |
| 222 |
1.65, # Pr |
| 223 |
1.64, # Nd |
| 224 |
1.63, # Pm |
| 225 |
1.62, # Sm |
| 226 |
1.85, # Eu |
| 227 |
1.61, # Gd |
| 228 |
1.59, # Tb |
| 229 |
1.59, # Dy |
| 230 |
1.58, # Ho |
| 231 |
1.57, # Er |
| 232 |
1.56, # Tm |
| 233 |
1.70, # Yb |
| 234 |
1.56, # Lu |
| 235 |
1.44, # Hf |
| 236 |
1.34, # Ta |
| 237 |
1.30, # W |
| 238 |
1.28, # Re |
| 239 |
1.26, # Os |
| 240 |
1.27, # Ir |
| 241 |
1.30, # Pt |
| 242 |
1.34, # Au |
| 243 |
1.49, # Hg |
| 244 |
1.48, # Tl |
| 245 |
1.47, # Pb |
| 246 |
1.46, # Bi |
| 247 |
1.53, # Po |
| 248 |
1.47, # At |
| 249 |
covalent_radius_default, # Rn
|
| 250 |
covalent_radius_default, # Fr
|
| 251 |
covalent_radius_default, # Ra
|
| 252 |
covalent_radius_default, # Ac
|
| 253 |
1.65, # Th |
| 254 |
covalent_radius_default, # Pa
|
| 255 |
1.42, # U |
| 256 |
covalent_radius_default, # Np
|
| 257 |
covalent_radius_default, # Pu
|
| 258 |
covalent_radius_default, # Am
|
| 259 |
covalent_radius_default, # Cm
|
| 260 |
covalent_radius_default, # Bk
|
| 261 |
covalent_radius_default, # Cf
|
| 262 |
covalent_radius_default, # Es
|
| 263 |
covalent_radius_default, # Fm
|
| 264 |
covalent_radius_default, # Md
|
| 265 |
covalent_radius_default, # No
|
| 266 |
covalent_radius_default]) # Lw
|
| 267 |
|
| 268 |
# This data is from Ashcroft and Mermin.
|
| 269 |
reference_states = [\ |
| 270 |
None, #X |
| 271 |
{'symmetry': 'diatom', 'd': 0.74}, #H
|
| 272 |
{'symmetry': 'atom'}, #He
|
| 273 |
{'symmetry': 'BCC', 'a': 3.49}, #Li
|
| 274 |
{'symmetry': 'hcp', 'c/a': 1.567, 'a': 2.29}, #Be
|
| 275 |
{'symmetry': 'Tetragonal', 'c/a': 0.576, 'a': 8.73}, #B
|
| 276 |
{'symmetry': 'Diamond', 'a': 3.57},#C
|
| 277 |
{'symmetry': 'diatom', 'd': 1.10},#N
|
| 278 |
{'symmetry': 'diatom', 'd': 1.21},#O
|
| 279 |
{'symmetry': 'diatom', 'd': 1.42},#F
|
| 280 |
{'symmetry': 'fcc', 'a': 4.43},#Ne
|
| 281 |
{'symmetry': 'BCC', 'a': 4.23},#Na
|
| 282 |
{'symmetry': 'hcp', 'c/a': 1.624, 'a': 3.21},#Mg
|
| 283 |
{'symmetry': 'fcc', 'a': 4.05},#Al
|
| 284 |
{'symmetry': 'Diamond', 'a': 5.43},#Si
|
| 285 |
{'symmetry': 'Cubic', 'a': 7.17},#P
|
| 286 |
{'symmetry': 'Orthorhombic', 'c/a': 2.339, 'a': 10.47,'b/a': 1.229},#S
|
| 287 |
{'symmetry': 'Orthorhombic', 'c/a': 1.324, 'a': 6.24, 'b/a': 0.718},#Cl
|
| 288 |
{'symmetry': 'fcc', 'a': 5.26},#Ar
|
| 289 |
{'symmetry': 'BCC', 'a': 5.23},#K
|
| 290 |
{'symmetry': 'fcc', 'a': 5.58},#Ca
|
| 291 |
{'symmetry': 'hcp', 'c/a': 1.594, 'a': 3.31},#Sc
|
| 292 |
{'symmetry': 'hcp', 'c/a': 1.588, 'a': 2.95},#Ti
|
| 293 |
{'symmetry': 'BCC', 'a': 3.02},#V
|
| 294 |
{'symmetry': 'BCC', 'a': 2.88},#Cr
|
| 295 |
{'symmetry': 'Cubic', 'a': 8.89},#Mn
|
| 296 |
{'symmetry': 'BCC', 'a': 2.87},#Fe
|
| 297 |
{'symmetry': 'hcp', 'c/a': 1.622, 'a': 2.51},#Co
|
| 298 |
{'symmetry': 'fcc', 'a': 3.52},#Ni
|
| 299 |
{'symmetry': 'fcc', 'a': 3.61},#Cu
|
| 300 |
{'symmetry': 'hcp', 'c/a': 1.856, 'a': 2.66},#Zn
|
| 301 |
{'symmetry': 'Orthorhombic', 'c/a': 1.695, 'a': 4.51, 'b/a': 1.001},#Ga
|
| 302 |
{'symmetry': 'Diamond', 'a': 5.66},#Ge
|
| 303 |
{'symmetry': 'Rhombohedral', 'a': 4.13, 'alpha': 54.10},#As
|
| 304 |
{'symmetry': 'hcp', 'c/a': 1.136, 'a': 4.36},#Se
|
| 305 |
{'symmetry': 'Orthorhombic', 'c/a': 1.307, 'a': 6.67, 'b/a': 0.672},#Br
|
| 306 |
{'symmetry': 'fcc', 'a': 5.72},#Kr
|
| 307 |
{'symmetry': 'BCC', 'a': 5.59},#Rb
|
| 308 |
{'symmetry': 'fcc', 'a': 6.08},#Sr
|
| 309 |
{'symmetry': 'hcp', 'c/a': 1.571, 'a': 3.65},#Y
|
| 310 |
{'symmetry': 'hcp', 'c/a': 1.593, 'a': 3.23},#Zr
|
| 311 |
{'symmetry': 'BCC', 'a': 3.30},#Nb
|
| 312 |
{'symmetry': 'BCC', 'a': 3.15},#Mo
|
| 313 |
{'symmetry': 'hcp', 'c/a': 1.604, 'a': 2.74},#Tc
|
| 314 |
{'symmetry': 'hcp', 'c/a': 1.584, 'a': 2.70},#Ru
|
| 315 |
{'symmetry': 'fcc', 'a': 3.80},#Rh
|
| 316 |
{'symmetry': 'fcc', 'a': 3.89},#Pd
|
| 317 |
{'symmetry': 'fcc', 'a': 4.09},#Ag
|
| 318 |
{'symmetry': 'hcp', 'c/a': 1.886, 'a': 2.98},#Cd
|
| 319 |
{'symmetry': 'Tetragonal', 'c/a': 1.076, 'a': 4.59},#In
|
| 320 |
{'symmetry': 'Tetragonal', 'c/a': 0.546, 'a': 5.82},#Sn
|
| 321 |
{'symmetry': 'Rhombohedral', 'a': 4.51, 'alpha': 57.60},#Sb
|
| 322 |
{'symmetry': 'hcp', 'c/a': 1.330, 'a': 4.45},#Te
|
| 323 |
{'symmetry': 'Orthorhombic', 'c/a': 1.347, 'a': 7.27, 'b/a': 0.659},#I
|
| 324 |
{'symmetry': 'fcc', 'a': 6.20},#Xe
|
| 325 |
{'symmetry': 'BCC', 'a': 6.05},#Cs
|
| 326 |
{'symmetry': 'BCC', 'a': 5.02},#Ba
|
| 327 |
{'symmetry': 'hcp', 'c/a': 1.619, 'a': 3.75},#La
|
| 328 |
{'symmetry': 'fcc', 'a': 5.16},#Ce
|
| 329 |
{'symmetry': 'hcp', 'c/a': 1.614, 'a': 3.67},#Pr
|
| 330 |
{'symmetry': 'hcp', 'c/a': 1.614, 'a': 3.66},#Nd
|
| 331 |
None,#Pm |
| 332 |
{'symmetry': 'Rhombohedral', 'a': 9.00, 'alpha': 23.13},#Sm
|
| 333 |
{'symmetry': 'BCC', 'a': 4.61},#Eu
|
| 334 |
{'symmetry': 'hcp', 'c/a': 1.588, 'a': 3.64},#Gd
|
| 335 |
{'symmetry': 'hcp', 'c/a': 1.581, 'a': 3.60},#Th
|
| 336 |
{'symmetry': 'hcp', 'c/a': 1.573, 'a': 3.59},#Dy
|
| 337 |
{'symmetry': 'hcp', 'c/a': 1.570, 'a': 3.58},#Ho
|
| 338 |
{'symmetry': 'hcp', 'c/a': 1.570, 'a': 3.56},#Er
|
| 339 |
{'symmetry': 'hcp', 'c/a': 1.570, 'a': 3.54},#Tm
|
| 340 |
{'symmetry': 'fcc', 'a': 5.49},#Yb
|
| 341 |
{'symmetry': 'hcp', 'c/a': 1.585, 'a': 3.51},#Lu
|
| 342 |
{'symmetry': 'hcp', 'c/a': 1.582, 'a': 3.20},#Hf
|
| 343 |
{'symmetry': 'BCC', 'a': 3.31},#Ta
|
| 344 |
{'symmetry': 'BCC', 'a': 3.16},#W
|
| 345 |
{'symmetry': 'hcp', 'c/a': 1.615, 'a': 2.76},#Re
|
| 346 |
{'symmetry': 'hcp', 'c/a': 1.579, 'a': 2.74},#Os
|
| 347 |
{'symmetry': 'fcc', 'a': 3.84},#Ir
|
| 348 |
{'symmetry': 'fcc', 'a': 3.92},#Pt
|
| 349 |
{'symmetry': 'fcc', 'a': 4.08},#Au
|
| 350 |
{'symmetry': 'Rhombohedral', 'a': 2.99, 'alpha': 70.45},#Hg
|
| 351 |
{'symmetry': 'hcp', 'c/a': 1.599, 'a': 3.46},#Tl
|
| 352 |
{'symmetry': 'fcc', 'a': 4.95},#Pb
|
| 353 |
{'symmetry': 'Rhombohedral', 'a': 4.75, 'alpha': 57.14},#Bi
|
| 354 |
{'symmetry': 'SC', 'a': 3.35},#Po
|
| 355 |
None,#At |
| 356 |
None,#Rn |
| 357 |
None,#Fr |
| 358 |
None,#Ra |
| 359 |
{'symmetry': 'fcc', 'a': 5.31},#Ac
|
| 360 |
{'symmetry': 'fcc', 'a': 5.08},#Th
|
| 361 |
{'symmetry': 'Tetragonal', 'c/a': 0.825, 'a': 3.92},#Pa
|
| 362 |
{'symmetry': 'Orthorhombic', 'c/a': 2.056, 'a': 2.85, 'b/a': 1.736},#U
|
| 363 |
{'symmetry': 'Orthorhombic', 'c/a': 1.411, 'a': 4.72, 'b/a': 1.035},#Np
|
| 364 |
{'symmetry': 'Monoclinic'},#Pu
|
| 365 |
None,#Am |
| 366 |
None,#Cm |
| 367 |
None,#Bk |
| 368 |
None,#Cf |
| 369 |
None,#Es |
| 370 |
None,#Fm |
| 371 |
None,#Md |
| 372 |
None,#No |
| 373 |
None]#Lw |