—
Generates minplascalc JSON files for monatomic, diatomic and polyatomic species.#
Input data to generate the JSON files are loaded from the ./data/minplascalc/species_data.yaml file.
# Import the required libraries.
import rizer.misc.units as u
from rizer.io.minplascalc.generate_minplascalc_data import (
_effective_electrons,
_electron_cross_section_m2,
_polarisability_m3,
build_diatomic,
build_polyatomic,
generate_monoatomic_species,
load_species_data,
save_species,
)
# Load the species data.
data = load_species_data()
# Generate the JSON files for the monatomic species.
for record in data["monoatomic"]:
if not record.get("enabled", True):
continue
save_species(
generate_monoatomic_species(
species=record["species"],
ionisation_energy=record["ionisation_energy_eV"] * u.eV_to_J,
spin_multiplicity=record["spin_multiplicity"],
polarisability=_polarisability_m3(record),
n_eff=_effective_electrons(record),
electron_cross_section_m2=_electron_cross_section_m2(record),
)
)
# Generate the JSON files for the diatomic species.
for record in data["diatomic"]:
save_species(build_diatomic(record, data))
# Generate the JSON files for the polyatomic species.
for record in data["polyatomic"]:
save_species(build_polyatomic(record, data))