Data about chemical elements arranged in JSON format. The module also contains modules for accessing data in both Python and JavaScript/TypeScript.
The package can be installed from NPM as follow:
npm install @mat3ra/periodic-table
pip install mat3ra-periodic-table
import {PERIODIC_TABLE, ChemicalElement} from "@mat3ra/periodic-table";
console.log(PERIODIC_TABLE.H);
const li = new ChemicalElement("Li");
console.log(li.atomicRadiusIn("bohr"));
from mat3ra.periodic_table import PERIODIC_TABLE
from mat3ra.periodic_table.bonds import ELEMENT_BONDS
from mat3ra.periodic_table.colors import ELEMENT_COLORS
assert PERIODIC_TABLE["H"]["name"] == "Hydrogen"
assert PERIODIC_TABLE["H"]["atomic_radius_pm"] == 25
bond = next(b for b in ELEMENT_BONDS if b["elements"] == ["H", "O"])
assert bond["energy"]["value"] == 4.75721615
assert bond["energy"]["units"] == "eV"
assert bond["length"]["value"] == 0.96
assert bond["length"]["units"] == "angstrom"
assert ELEMENT_COLORS["H"] == "#FFFFFF" # white
name
: element namesymbol
: element symbolatomic_number
: atomic numberatomic_mass
: atomic mass in amuatomic_radius_pm
: empirical atomic radius in pm by Slater (doi: 10.1063/1.1725697)covalent_radius_pm
: covalent radius "2008 values" (doi: 10.1039/b801115j)van_der_Waal_radius_pm
: van der Waals radius (doi: 10.1021/jp8111556, 10.1021/j100785a001)
- Colors are in CPK convention
This repository is an open-source work-in-progress and we welcome contributions.
- Add pre-commit hook to run
python build_modules.py
before commit
- Periodic table original source: GPeriodic, Open source Linux software: link