Skip to main content

Radiation Belts Analysis and Modeling Library (rbamlib)

Overview

rbamlib is a lightweight, open-source Python library for the analysis and modeling of radiation belts.

The library aims to support the scientific community by providing essential functionalities for radiation belt studies, with detailed documentation. This includes system properties calculations, empirical model collections, and modeling support.

[!IMPORTANT] This library is currently in active development.

Some functions are placeholders and may not yet have full implementations. Expect ongoing updates and new features as the library evolves.

Documentation Status

Planned Key Features

  • System Properties: Adiabatic invariants transformation, drift velocities, phase space density, and motion period calculations, adaptable for different planets.
  • Empirical Models Collection: Radial diffusion coefficients, lifetimes, plasma densities, and more.
  • Modeling Support: Conversion between simulation grids, boundary and initial condition characteristics, adiabatic transformation of boundary scaling factors, local diffusion coefficients scaling.

Architecture

The library is architected into Python packages, acting as modules containing multiple functions organized in separate files. This design allows for direct function imports from the package, streamlining usage without the need to reference specific files.

For example, pc2en function from conv package is located in conv/pc2en.py file. To use it simply import it as follows:

from rbamlib.conv import pc2en

The primary function that users should utilize is named after the file itself, ensuring intuitive access. If this main function relies on any helper functions, they are located within the same file to maintain coherence. These helper functions are kept distinct to facilitate targeted testing and validation.

Development and Contribution

The library is being developed in compliance with the Heliophysics Community (PyHC) Standards and HP Data Policy. It will be documented, tested with a planned release on Python Package Index (PyPI).

How to Contribute

The contributions from the community are welcomed! If you're interested in contributing, please see CONTRIBUTING.md.

Installation

The package is available on PyPI:

pip install rbamlib

Alternatively, you can install from source by cloning the repository:

git clone https://github.com/radiation-belts/rbamlib.git
cd rbamlib
pip install -e .

Documentation

Please see documentation at https://rbamlib.readthedocs.io/.

Acknowledgements

The original development of the library was supported by NASA grant 80NSSC24K0462.

Special thanks to the PlasmaPy for inspiring with their approach to building open-source scientific software. We are also grateful to the Python in Heliophysics Community (PyHC) for their guidance.

License

rbamlib is released under the BSD-License (3-clause version). See the LICENSE and NOTICE files for details.

Metadata

Release files for rbamlib 26.2

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

Source distribution (sdist)

Source distribution for rbamlib 26.2
File Size Uploaded
rbamlib-26.2.tar.gz 76.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rbamlib 26.2
File Interpreter ABI Platform
rbamlib-26.2-py3-none-any.whl Python 3 none any Details

Total release size: 155.8 kB

Release files / rbamlib-26.2.tar.gz

Download URL rbamlib-26.2.tar.gz
Size 76.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f0a5e4f62b13c587dc2b45eb39a221db7f94fb5f7351dcdd967a836b5a7f28e4
BLAKE2b-256 checksum
How to use checksums
65a4ca493746268ab6528fa002829d8dd456fa48d246eb776496291b38ebd999
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release files / rbamlib-26.2-py3-none-any.whl

Download URL rbamlib-26.2-py3-none-any.whl
Size 79.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f76601eeff9b128c6babafca44f79e97c4f4583c961357827f844d61c580f9d6
BLAKE2b-256 checksum
How to use checksums
5e25ef5faa75b0dab35155fde1a14c7c55b7f7aad59b694bf2cafcda637ae8f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release history Release notifications | RSS feed

This release

26.2 This release

2 release files

25.4

2 release files

24.8

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