Skip to content

ChiantiPy is a python package to calculate the radiative properties of astrophysical plasmas based on the CHIANTI atomic database

Notifications You must be signed in to change notification settings

chianti-atomic/ChiantiPy

Repository files navigation

ChiantiPy - Version 0.15.1

Documentation Status Coverage Status ascl:1308.017

ChiantiPy is the Python interface to the CHIANTI atomic database for astrophysical spectroscopy. It provides the capability to calculate the emission line and continuum spectrum of an optically thin plasma based on the data in the CHIANTI database.

What is CHIANTI?

CHIANTI provides a database of atomic data that can be used to interpret the emission of spectral lines and continua emitted from high-temperature, optically-thin astrophysical sources. The CHIANTI project provides a suite of routines written in Interactive Data Language (IDL) to access the database and calculate various quantities for use in interpreting observed spectra or producing synthetic spectra. As of ChiantiPy 0.10.0, the CHIANTI database version 10 or later is required

Installation

The following dependencies are required to run ChiantiPy,

The following two are extremely useful for running Python programs

Optionally, if you'd like to use the GUI dialogs,

If you are not familiar with installing Python and the needed dependencies, we recommend the Anaconda platform. Next, download the CHIANTI database, version 10.0 or later. Assuming you've placed the CHIANTI tree in $HOME, set the environment variable in your .bashrc file,

export XUVTOP=$HOME/MY_CHIANTI_DIRECTORY

should point to the top directory of your CHIANTI distribution

Finally, clone and install the source from GitHub,

$ git clone --recursive https://github.com/chianti-atomic/ChiantiPy.git
$ cd ChiantiPy
$ python setup.py install

The release is also available on PyPI

Usage

As a quick example, we'll calculate the populations of the top 10 levels of Fe XIV as a function of temperature at constant density and plot them:

>>> import ChiantiPy.core as ch
>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> temperature = np.logspace(5.8,6.8,21)
>>> fe14 = ch.ion('fe_14',temperature=temperature,eDensity=1.e+9,em=1.e+27)
>>> fe14.popPlot()
>>> plt.show()

Help

For more information about installing and using either ChiantiPy or the CHIANTI atomic database, check out the following links: