Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/PRBEM/IRBEM/llms.txt

Use this file to discover all available pages before exploring further.

The IRBEM library (International Radiation Belt Environment Modeling) is a set of scientific routines for radiation belt physics. It computes magnetic coordinates (L, L*, MLT), traces magnetic field lines, transforms between 15 geophysical coordinate systems, evaluates particle flux models, and propagates orbits — all from a single compiled shared library callable from Fortran, C, Python, MATLAB, and IDL. Originally developed in 2003 as ONERA-DESP-LIB by the French aerospace lab ONERA, IRBEM is now maintained as an international collaboration under the COSPAR Panel on Radiation Belt Environment Modeling (PRBEM).

Installation

Build IRBEM from source on Linux, macOS, or Windows with gfortran

Quickstart

Compute your first L* and coordinate transform in minutes

Python Interface

Use the MagFields and Coords classes to call IRBEM from Python

API Reference

Browse all routines: magnetic coordinates, models, and utilities

What IRBEM Does

IRBEM provides routines in five functional areas:

Magnetic Coordinates

Compute McIlwain L, Roederer L*, second invariant I, Bmin, and MLT for any spacecraft position using a choice of internal and external field models

Coordinate Transformations

Transform between 15 geophysical and heliospheric coordinate systems: GDZ, GEO, GSM, GSE, SM, GEI, MAG, HEE, HAE, HEEQ, J2000, TEME, and more

Field Line Tracing

Trace magnetic field lines, locate mirror points and the magnetic equator, and find conjugate foot points at any target altitude

Radiation Belt Models

Fly a spacecraft through NASA AE8/AP8, CRRES, and IGE-2006 particle flux models to compute electron and proton fluxes

Atmospheric Models

Evaluate MSIS-86, MSIS-E-90, and NRLMSISE-00 neutral atmosphere density and temperature profiles

Orbit Propagation

Propagate NORAD TLE sets with the SGP4 algorithm and output geodetic position time series

Supported Interfaces

IRBEM compiles to a shared library (.so on Linux/macOS, .dll on Windows) that is callable from multiple languages:

Python

High-level MagFields and Coords wrapper classes via ctypes — no manual array formatting required

Fortran & C

Direct CALL to any subroutine; link against libirbem.a (static) or libirbem.so (shared)

MATLAB

Vectorized .m wrapper functions prefixed onera_desp_lib_*, with keyword string inputs for field model selection

IDL

Access via CALL_EXTERNAL with the shared library; all inputs must be declared with correct types

Key Concepts

External Field Models

Choose from 14 external magnetic field models including the Tsyganenko series (T87, T89, T96, T01, T04, T07), Olson-Pfitzer, and Alexeev models

Coordinate Systems

15 supported systems with full descriptions of origin, orientation, and applicable distance units

Options Array

A 5-element integer array controlling L* computation, IGRF update frequency, field-line resolution, drift-shell resolution, and internal field model selection

Magnetic Input (maginput)

A 25-element array supplying Kp, Dst, solar wind parameters, and model-specific coupling coefficients to external field models

Citation

When publishing research that used IRBEM, acknowledge the team:
We acknowledge the use of the IRBEM library (version X.Y.Z), the latest version of which can be found at https://doi.org/10.5281/zenodo.6867552.
Replace version X.Y.Z with the release version used, or repository version <git-short-hash> for a development checkout.

Build docs developers (and LLMs) love