Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

NebulaPy

PyPI version License Python version

NebulaPy is a Python library for post-processing PION simulation data.

Features

  • Spectral Energy Distribution (SED) Binning: Energy binning of ATLAS and Potsdam stellar-atmosphere models, and blackbodies, across a wide range of metal abundances.
  • Line Luminosity Calculations:
    • Computes line luminosities for spherical geometry (1D nested and uniform grid).
    • Computes line luminosities for cylindrical geometry (2D nested and uniform grid).
    • Computes line luminosities for cylindrical geometry via MultiProcessing.
  • Cooling Function Maps for 2D simulations
  • Identifies the dominant spectral lines for ions in 1D and 2D simulation snapshots by calculating the line luminosity for all lines based on grid-level data. It then outputs the dominant lines for a specified list of ions.
  • Emissivity Map Generator for 2D simulation snapshot:
    • Generates emrissivity maps for single ion multi-line emissions from a 2D simulation snapshot.
    • Generates emissivity maps for multiple ions, multi-line emissions from a 2D simulation snapshot.

Installation

pip install NebulaPy
# This will also install dependencies

# Download and set up the CHIANTI database (require ~1 GB disk space)
wget https://download.chiantidatabase.org/CHIANTI_10.1_database.tar.gz

# Extract it to a directory (~5 GB disk space required)
tar -xzf CHIANTI_10.1_database.tar.gz -C CHIANTI-DATABASE-DIRECTORY

# Add the following environmental variable to your .bashrc
echo "export XUVTOP=CHIANTI-DATABASE-DIRECTORY" >> ~/.bashrc

# Reload your .bashrc
source ~/.bashrc

# Install the Python-SILO interface:
# Execute the following command from the NebulaPy root directory.
install-silo

# Fix the SILO library path in your local distribution:
# Open the file:
#   ${HOME}/.local/venv/lib/python3.11/site-packages/pypion/SiloHeader_data.py
# Modify line 18 to append /lib to the path

# Install the NebulaPy database
nebulapy database install --destination "$HOME/.nebulapy"

# Configure the database path
echo 'export NEBULAPY_DB="$HOME/.nebulapy/nebulapy-db-1.0.0"' >> "$HOME/.bashrc"
source "$HOME/.bashrc"

Usage

For detailed usage instructions, examples, and features, please visit NebulaPy Wiki. Sample scripts demonstrating NebulaPy functionalities can be found in the NebulaPy/Research directory.

Documentation

Check the full API documentation at nebulapy.github.io/NebulaPy, rebuilt automatically from the source on every commit to main.

Support

For bug reports and feature requests, visit the issues section of the repository:

Changelog

  • Version 1.0.0-beta – March 5, 2025: Beta release
  • Version 1.0.1-beta – March 6, 2025: Minor bug fixes
  • Version 1.0.2-beta – March 6, 2025: Include silo installation script
  • Version 1.0.3-beta – March 6, 2025: Fixed bugs in spectral line emissivity map script

Licence

NebulaPy source code is licensed under the MIT License.

NebulaPy-authored database tables are licensed separately under the Creative Commons Attribution 4.0 International (CC BY 4.0) License.

Third-party datasets, including ATLAS and PoWR stellar-atmosphere data, are not covered by either licence and remain subject to the terms of their respective providers.

Author

Arun Mathew
Astronomy & Astrophysics
Computational and High Energy Astrophysics
Dublin Institute for Advanced Studies (DIAS), Ireland

Metadata

Release files for NebulaPy 1.0.4b0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for NebulaPy 1.0.4b0
File Size Uploaded
nebulapy-1.0.4b0.tar.gz 290.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for NebulaPy 1.0.4b0
File Interpreter ABI Platform
nebulapy-1.0.4b0-py3-none-any.whl Python 3 none any Details

Total release size: 591.7 kB

Release files / nebulapy-1.0.4b0.tar.gz

Download URL nebulapy-1.0.4b0.tar.gz
Size 290.1 kB
Tags Source
SHA-256 checksum
How to use checksums
dc83f3c5ada3cdfa271c907449c4625123d4dfc41ec4746d3cf7590e75c01d64
BLAKE2b-256 checksum
How to use checksums
2fc025f96b844d6d24de92b3cc632a98ffa90ee2022fa7d37cc7f98e6389c305
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / nebulapy-1.0.4b0-py3-none-any.whl

Download URL nebulapy-1.0.4b0-py3-none-any.whl
Size 301.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9990852252c8328cd08974ce1d860c3b84895a2232d1e27fb8e348f077d3239e
BLAKE2b-256 checksum
How to use checksums
4ae187cdb545da7e7a0fc3f3359f2e02f7ce07f38d5231f110bf6550a195538b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

1.0.4b0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page