pyEQUIB – Python Package for Equilibrium Atomic Populations and Line Emissivities

pyEQUIB is a collection of Python programs developed to calculate atomic level populations and line emissivities in statistical equilibrium in multi-level atoms for different physical conditions of the stratification layers where the chemical elements are ionized. pyEQUIB includes the Python version of the program EQUIB, which was originally written in FORTRAN by Howarth & Adams (1981), and was recently converted to Python.

Installation

To install the last version:

python setup.py install

To install the stable version:

pip install pyequib
Usage
Plasma Diagnostics
import pyequib

ion='s_ii'
levu='1,2,1,3/'
levl='1,5/'
diagtype='T'
density = 2550.0
siiTratio=10.753
temperature=pyequib.cel.calc_temperature(line_flux_ratio=siiTratio, density=density, ion=ion, upper_levels=levu, lower_levels=levl)
print(temperature)

ion='s_ii'
levu=levu='1,2/'
levl='1,3/'
diagtype='D'
temperature = 7000.0
siiNratio=1.506
density=pyequib.cel.calc_density(line_flux_ratio=siiNratio, temperature=temperature, ion=ion, upper_levels=levu, lower_levels=levl)
print(density)
Abundance Analysis
import pyequib

ion='o_iii'
temperature=10000.0
density=5000.0
levels5007='3,4/'
iobs5007=1200.0
emis=pyequib.cel.calc_emissivity(temperature=temperature, density=density, ion=ion, levels=levels5007)
print(emis)

ion='o_iii'
temperature=10000.0
density=5000.0
levels5007='3,4/'
iobs5007=1200.0
Abb5007=pyequib.cel.calc_abundance(temperature=temperature, density=density, line_flux=iobs5007, ion=ion, atomic_levels=levels5007)
print(Abb5007)

Acknowledgement

A. Danehkar (2018) PASA 35:e005

A Danehkar, Q A Parker & W Steffen (2016) AJ 151:38

A Danehkar, H Todt, B Ercolano & A Y Kniazev (2014) MNRAS 439:3605

A Danehkar, Q A Parker & B Ercolano (2013) MNRAS 434:1513