Package performing spectral diagnostics and radiative transfer calculations
Project description
DIPPERpy: Diagnostics Inferring the Physics of Plasma and Emitted Radiation in python
Author: Philip G. Judge
Contact: judge@ucar.edu ; mauricew@ucar.edu
Summarizing if DIPPERpy is right for you
| Targeted problems | |
| tenuous plasma, "low energy" regime | |
| LTE to optically thin plasmas | |
| compilation of needed rate coefficients | |
| teaching/learning spectroscopy | |
| simple statistical equilibrium calculations | |
| $\quad\quad$- including escape probabilities | |
| simple non-equilibrium calculations | |
| $\quad\quad$- evolution of atomic systems | |
| provide "building blocks" of data and code to permit the user to make more sophisticated calculations | |
| $\quad\quad$- e.g, detailed radiative transfer or radiation hydrodynamics | |
| Limitations | |
| elements lighter than Zn (nuclear charge 30) | |
| principal quantum numbers < 10 | |
| incomplete databases | |
| photoionization data are summed over final states, and are split approximately over fine structure | |
| no impact line broadening | |
| no hyperfine structure | |
| no configuration mixing | |
| Cannot handle | |
| non-Maxwellian particle distributions | |
| inner shell excitations (high energy phenomena) | |
| atomic and spectral polarization | |
| molecules | |
| accurate radiative transfer |
What makes DIPPERpy unique?
- It is based upon the fast, flexible database software system written by D. Lindler for IDL, and takes some advantage of this system.
- It works with quantum numbers for atomic levels, enabling it to perform tasks otherwise difficult or very tedious, including a variety of data checks, calculations based upon the atomic numbers, and searching and manipulating data based upon these quantum numbers.
- In principle, DIPPERpy can handle conditions from LTE to coronal-like conditions.
- There is some capability for estimating data for which no accurate parameters are available, and for accounting for the effects of missing atomic levels.
Requirement
- A database of atomic quantum states and transition rates is needed. The CHIANTI atomic database has been re-organized and reformatted into an assortment of database files that is convenient for the DIPPERpy code to access it for education and research purposes.
- The database file sizes are too large to include in this repository.
- The files are within a tar archive compressed with gzip that can be downloaded here: DIPPERpy_dbase.tar.gz
- Unpack the file and make note of the path location for the unpacked "dbase" directory.
$ tar -xvz -f DIPPERpy_dbase.tar.gz
dbase/
dbase/ar85ci.dat
dbase/ar85ct.dat
dbase/Barklem_dfdata.dat
dbase/Barklem_pddata.dat
dbase/Barklem_spdata.dat
dbase/bass5250.txt
dbase/bass6302.txt
dbase/bbsql.db
dbase/bfsql.db
dbase/cbbsql.db
dbase/cbfsql.db
dbase/ctab.dat
dbase/fal.pickle
dbase/htab.dat
dbase/lvlsql.db
dbase/mooreip.dat
dbase/pf_Kurucz.input
dbase/rh_atoms.pickle
dbase/shull82.dat
dbase/shull82changes.txt
dbase/shull82changes.txt.gz
Setting Conda Environment
It is useful to create a conda environment first, like so:
$ conda create --name dipperpy
$ conda activate dipperpy
$ conda install python numpy astropy scipy matplotlib numba
$ pip install specutils
Recommended Option: Direct Installation
$ conda install -c mauricewilson dipperpy
or, use pip instead...
$ pip install dipperpy
Alternative Option: Download/clone the repository and execute (offline) installation
The DIPPERpy package can be installed via a terminal (for macOS or Linux) or command prompt (for Windows) by running the following lines of code:
$ git clone https://github.com/MWilson1/dipperpy.git
$ cd dipperpy
$ pip install dist/dipperpy-1.0.1.tar.gz
Acknowledgment
DIPPERpy is the python version of the original HAOS-DIPER code written in IDL. HAOS-DIPER grew out of a need to work with and manipulate data for neutral atoms and atomic ions to understand radiation emitted by some space plasmas, notably the solar atmosphere and stellar atmospheres. An early version was described by Judge and Meisner (1994). This IDL code can be found at www.hao.ucar.edu/modeling/haos-diper/.
Most of the radiative transfer functionality comes from Lightspinner. This Lightspinner code is a pure python, stripped-down version of the Lightweaver code, which is detailed in the Osborne and Milic (2021) paper. Both software, as well as DIPPERpy, use a copy of the 'witt.py' code written by Alexander Wittmann and translated into python by Jaime de la Cruz Rodriguez, albeit inspired by Dimitri Mihalas' Stellar Atmospheres textbook. Lastly, these codes also use the atomic data archived within the RH code. See the Uitenbroek (2001) and Rybicki and Hummer (1992) papers for further elaboration regarding the methodology of the RH code.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dipperpy-1.0.3.tar.gz.
File metadata
- Download URL: dipperpy-1.0.3.tar.gz
- Upload date:
- Size: 82.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b66bb8c116b0e06e8ec370c806217efddb4b18e94ac08305eec5240b6b219199
|
|
| MD5 |
6ad9c7fab00c28f92c9e0323ebfa900f
|
|
| BLAKE2b-256 |
ef4d68df27a7bf382db6fe4b2a8d3767a2ef18b674049e51073f54c006d7a49b
|
File details
Details for the file dipperpy-1.0.3-py3-none-any.whl.
File metadata
- Download URL: dipperpy-1.0.3-py3-none-any.whl
- Upload date:
- Size: 86.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
174b81015978d7d95a445d497680bca5503df634e0f34009105c0f2e1577c173
|
|
| MD5 |
4feba8149aa09c1adcd0b3afd412d38a
|
|
| BLAKE2b-256 |
61140f852b75bf811a4fe1e582dbd9e4a8bfe1a246f9d2682d731b1861c6bda2
|