Created
November 14, 2024 10:05
-
-
Save tomschr/1155ff4694a5b9216190933f3b8da90f to your computer and use it in GitHub Desktop.
Atom definitions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| from collections import namedtuple | |
| Element = namedtuple('Element', 'symbol, z, weight') | |
| ATOMS = { | |
| 'H': Element('H', 1, 1.008), # Wasserstoff | |
| 'D': Element('D', 1, 2.0141), # Deuterium | |
| 'He': Element('He', 2, 4.002602), # Helium | |
| 'Li': Element('Li', 3, 6.94), # Lithium | |
| 'Be': Element('Be', 4, 9.0121831), # Beryllium | |
| 'B': Element('B', 5, 10.81), # Bor | |
| 'C': Element('C', 6, 12.011), # Kohlenstoff | |
| 'N': Element('N', 7, 14.007), # Stickstoff | |
| 'O': Element('O', 8, 15.999), # Sauerstoff | |
| 'F': Element('F', 9, 18.998403163), # Fluor | |
| 'Ne': Element('Ne', 10, 20.1797), # Neon | |
| 'Na': Element('Na', 11, 22.98976928), # Natrium | |
| 'Mg': Element('Mg', 12, 24.305), # Magnesium | |
| 'Al': Element('Al', 13, 26.9815385), # Aluminium | |
| 'Si': Element('Si', 14, 28.085), # Silicum | |
| 'P': Element('P', 15, 30.973761998), # Phosphor | |
| 'S': Element('S', 16, 32.06), # Schwefel | |
| 'Cl': Element('Cl', 17, 35.45), # Chlor | |
| 'Ar': Element('Ar', 18, 39.948), # Argon | |
| 'K': Element('K', 19, 39.0983), # Kalium | |
| 'Ca': Element('Ca', 20, 40.078), # Calcium | |
| 'Sc': Element('Sc', 21, 44.955908), # Scandium | |
| 'Ti': Element('Ti', 22, 47.867), # Titan | |
| 'V': Element('V', 23, 50.9415), # Vanadium | |
| 'Cr': Element('Cr', 24, 51.9961), # Chrom | |
| 'Mn': Element('Mn', 25, 54.938044), # Mangan | |
| 'Fe': Element('Fe', 26, 55.845), # Eisen | |
| 'Co': Element('Co', 27, 58.933194), # Cobalt | |
| 'Ni': Element('Ni', 28, 58.6934), # Nickel | |
| 'Cu': Element('Cu', 29, 63.546), # Kupfer | |
| 'Zn': Element('Zn', 30, 65.38), # Zink | |
| 'Ga': Element('Ga', 31, 69.723), # Gallium | |
| 'Ge': Element('Ge', 32, 72.630), # Germanium | |
| 'As': Element('As', 33, 74.921595), # Arsen | |
| 'Se': Element('Se', 34, 78.971), # Selen | |
| 'Br': Element('Br', 35, 79.904), # Brom | |
| 'Kr': Element('Kr', 36, 83.798), # Krypton | |
| 'Rb': Element('Rb', 37, 85.4678), # Rubidium | |
| 'Sr': Element('Sr', 38, 87.62), # Strontium | |
| 'Y': Element('Y', 39, 88.90584), # Yttrium | |
| 'Zr': Element('Zr', 40, 91.224), # Zirconium | |
| 'Nb': Element('Nb', 41, 92.90637), # Niob | |
| 'Mo': Element('Mo', 42, 95.95), # Molybdän | |
| 'Tc': Element('Tc', 43, 98), # Technicium | |
| 'Ru': Element('Ru', 44, 101.07), # Ruthenium | |
| 'Rh': Element('Rh', 45, 102.90550), # Rhodium | |
| 'Pd': Element('Pd', 46, 106.42), # Palladium | |
| 'Ag': Element('Ag', 47, 107.8682), # Silber | |
| 'Cd': Element('Cd', 48, 112.414), # Cadmium | |
| 'In': Element('In', 49, 114.818), # Indium | |
| 'Sn': Element('Sn', 50, 118.710), # Zinn | |
| 'Sb': Element('Sb', 51, 121.760), # Antimon | |
| 'Te': Element('Te', 52, 127.60), # Tellur | |
| 'I': Element('I', 53, 126.90447), # Iod | |
| 'J': Element('J', 53, 126.90447), # Jod | |
| 'Xe': Element('Xe', 54, 131.293), # Xenon | |
| 'Cs': Element('Cs', 55, 132.90545196), # Caesium | |
| 'Ba': Element('Ba', 56, 137.327), # Barium | |
| 'La': Element('La', 57, 138.90547), # Lanthan | |
| 'Ce': Element('Ce', 58, 140.116), # Cer | |
| 'Pr': Element('Pr', 59, 140.90766), # Praseodym | |
| 'Nd': Element('Nd', 60, 144.242), # Neodym | |
| 'Pm': Element('Pm', 61, 145), # Prometium | |
| 'Sm': Element('Sm', 62, 150.36), # Samarium | |
| 'Eu': Element('Eu', 63, 151.964), # Europhium | |
| 'Gd': Element('Gd', 64, 157.25), # Gadolinium | |
| 'Tb': Element('Tb', 65, 158.92535), # Terbium | |
| 'Dy': Element('Dy', 66, 162.500), # Dysprosium | |
| 'Ho': Element('Ho', 67, 164.93033), # Holium | |
| 'Er': Element('Er', 68, 167.259), # Erbium | |
| 'Tm': Element('Tm', 69, 168.93422), # Thulium | |
| 'Yb': Element('Yb', 70, 173.045), # Ytterbium | |
| 'Lu': Element('Lu', 71, 174.9668), # Lutetium | |
| 'Hf': Element('Hf', 72, 178.49), # Hafnium | |
| 'Ta': Element('Ta', 73, 180.94788), # Tantal | |
| 'W': Element('W', 74, 183.84), # Wolfram | |
| 'Re': Element('Re', 75, 186.207), # Rhenium | |
| 'Os': Element('Os', 76, 190.23), # Osmium | |
| 'Ir': Element('Ir', 77, 192.217), # Iridium | |
| 'Pt': Element('Pt', 78, 195.084), # Platin | |
| 'Au': Element('Au', 79, 196.966569), # Gold | |
| 'Hg': Element('Hg', 80, 200.592), # Quecksilber | |
| 'Tl': Element('Tl', 81, 204.38), # Thallium | |
| 'Pb': Element('Pb', 82, 207.2), # Blei | |
| 'Bi': Element('Bi', 83, 208.98040), # Bismut | |
| 'Po': Element('Po', 84, 209), # Polonium | |
| 'At': Element('At', 85, 210), # Astat | |
| 'Rn': Element('Rn', 86, 222), # Radon | |
| 'Fr': Element('Fr', 87, 223), # Francium | |
| 'Ra': Element('Ra', 88, 226), # Radium | |
| 'Ac': Element('Ac', 89, 227), # Actinium | |
| 'Th': Element('Th', 90, 232.0377), # Thorium | |
| 'Pa': Element('Pa', 91, 231.03588), # Protactinium | |
| 'U': Element('U', 92, 238.02891), # Uran | |
| 'Np': Element('Np', 93, 237), # Neptunium | |
| 'Pu': Element('Pu', 94, 244), # Plutonium | |
| 'Am': Element('Am', 95, 243), # Americium | |
| 'Cm': Element('Cm', 96, 247), # Curium | |
| 'Bk': Element('Bk', 97, 247), # Berkelium | |
| 'Cf': Element('Cf', 98, 251), # Californium | |
| 'Es': Element('Es', 99, 252), # Einsteinium | |
| 'Fm': Element('Fm', 100, 257), # Fermium | |
| 'Md': Element('Md', 101, 258), # Mendelevium | |
| 'No': Element('No', 102, 259), # Nobelium | |
| 'Lr': Element('Lr', 103, 266), # Lawrencium | |
| 'Rf': Element('Rf', 104, 267), # Rutherfordium | |
| 'Db': Element('Db', 105, 268), # Dubnium | |
| 'Sg': Element('Sg', 106, 269), # Seaborgium | |
| 'Bh': Element('Bh', 107, 270), # Bohrium | |
| 'Hs': Element('Hs', 108, 269), # Hassium | |
| 'Mt': Element('Mt', 109, 278), # Meitnerium | |
| 'Ds': Element('Ds', 110, 281), # Darmstadtium | |
| 'Rg': Element('Rg', 111, 281), # Roentgenium | |
| 'Cn': Element('Cn', 112, 285), # Copernicium | |
| 'Nh': Element('Nh', 113, 286), # Nihonium/Ununtrium | |
| 'Fl': Element('Fl', 114, 289), # Flerovium/Ununquadium | |
| 'Mc': Element('Mc', 115, 289), # Moscovium/Ununpentium | |
| 'Lv': Element('Lv', 116, 293), # Livermorium/Ununhexium | |
| 'Ts': Element('Ts', 117, 294), # Tennessine/Ununseptium | |
| 'Og': Element('Og', 118, 294), # Oganesson/Ununoctium | |
| } | |
| ALLATOMS = [a for a in ATOMS] | |
| # Sort after string length | |
| ALLATOMS.sort(key=len, reverse=True) | |
| # Needed for reg expressions | |
| JOINED_ATOMS = "|".join(ALLATOMS) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment