Skip to main content

A radiative transfer model for the Earth observation community

Project description

Eradiate is a modern radiative transfer simulation software package for Earth observation applications. Its main focus is accuracy, and for that purpose, it uses the Monte Carlo ray tracing method to solve the radiative transfer equation.

Detailed list of features

  • Spectral computation
    Solar reflective spectral region Eradiate ships spectral data in the solar reflective region (at least from 280 nm to 2500 nm).
    Line-by-line simulation These are true monochromatic simulations (as opposed to narrow band simulations). Eradiate provides monochromatic absorption databases covering the [250, 3125] nm interval. User-defined absorption databases are also supported (see the database format).
    Band simulation These simulations compute results in spectral bands. The correlated k-distribution (CKD) method with configurable quadrature rule is used. This method achieves a trade-off between performance and accuracy for the simulation of absorption by gases. Eradiate provides CKD-ready absorption databases for the [250, 3125] nm interval, with various spectral bin sizes (100 cm⁻¹, 1 nm, 10 nm). User-defined absorption databases are also supported (see the database format).
    Polarization Eradiate optionally supports polarized light simulation. This feature can be switched on or off to achieve the best compromise between accuracy and performance.
  • Atmosphere
    One-dimensional atmospheric profiles Both standard profiles, e.g. the AFGL (1986) profiles, and customized profiles are supported.
    Plane-parallel and spherical-shell geometries This allows for more accurate results at high illumination and viewing angles.
  • Surface
    Lambertian, RPV, Ross Thick-Li Sparse, Hapke, Maignan and ocean surface reflection models All models can be parametrized against the spectral dimension.
    Detailed surface geometry Add a discrete canopy model (either disk-based abstract models, or more realistic mesh-based models).
    Combine with atmospheric profiles Your discrete canopy can be integrated within a scene featuring a 1D atmosphere model in a fully coupled simulation.
  • Illumination
    Directional or finite-size illumination model Eradiate supports both ideal (Delta angular distribution), and realistic (finite angular size) illumination models.
    Many irradiance datasets Pick your favourite or bring your own.
  • Measure
    Top-of-atmosphere radiance and BRF computation An ideal model suitable for satellite data simulation.
    Perspective camera sensor Greatly facilitates scene setup: inspecting the scene is very easy.
    Many instrument spectral response functions Our SRF data is very close to the original data, and we provide advice to further clean up the data and find the right balance between accuracy and performance.
  • Monte Carlo ray tracing
    Mitsuba renderer as radiometric kernel We leverage the advanced Python API of a cutting-edge C++ rendering system.
    State-of-the-art volumetric path tracing algorithm Mitsuba ships a null-collision-based volumetric path tracer which performs well in many of the cases Eradiate is used for. We also provide a special-purpose path tracing algorithm for plane-parallel geometries that can perform up to 2 orders of magnitude faster than the null-collision algorithm.
  • Traceability
    Documented data and formats We explain where our data comes from and how users can build their own data in a format compatible with Eradiate's input.
    Transparent algorithms Our algorithms are researched and documented, and their implementation is open-source.
    Thorough testing Eradiate is shipped with a large unit testing suite and benchmarked periodically against community-established reference simulation software.
  • Interface
    Comprehensive Python interface Abstractions are derived from computer graphics and Earth observation and are designed to feel natural to EO scientists.
    Designed for interactive usage Jupyter notebooks are now an essential tool in the digital scientific workflow.
    Integration with Python scientific ecosystem The implementation is done using the Scientific Python stack.
    Standard data formats (mostly NetCDF) Eradiate uses predominantly Xarray data structures for I/O.

Installation and usage

For build and usage instructions, please refer to the documentation.

Support

Got a question? Please visit our discussion forum.

Authors and acknowledgements

Eradiate is developed by a core team consisting of Vincent Leroy, Claudia Emde, Nicolae Marton, Nicolas Misk and Yves Govaerts. For more information about the Eradiate team, visit our website.

Eradiate uses the Mitsuba 3 renderer, developed by the Realistic Graphics Lab, taking advantage of its Python interface and proven architecture, and extends it with components implementing numerical methods and models used in radiative transfer for Earth observation. The Eradiate team acknowledges Mitsuba creators and contributors for their work.

The development of Eradiate is funded by the Copernicus programme through a project managed by the European Space Agency (contract no 40000127201/19/I‑BG). The design phase was funded by the MetEOC-3 project (EMPIR grant 16ENV03).

Citing Eradiate

The most general citation is as follows:

@software{Eradiate,
    author = {Leroy, Vincent and Nollet, Yvan and Schunke, Sebastian and Misk, Nicolas and Marton, Nicolae and Govaerts, Yves},
    license = {LGPL-3.0},
    title = {Eradiate radiative transfer model},
    url = {https://github.com/eradiate/eradiate},
    doi = {10.5281/zenodo.7224314},
    year = {2024}
}

If you want to reference a specific version, you can update the previous citation with doi, year and version fields populated with metadata retrieved from our Zenodo records. Example:

@software{Eradiate,
    author = {Leroy, Vincent and Nollet, Yvan and Schunke, Sebastian and Misk, Nicolas and Marton, Nicolae and Govaerts, Yves},
    license = {LGPL-3.0},
    title = {Eradiate radiative transfer model},
    url = {https://github.com/eradiate/eradiate},
    doi = {10.5281/zenodo.19186132},
    year = {2026},
    version = {1.1.0},
}

License

Eradiate is free software licensed under the GNU Lesser General Public License (v3).

Project status

Eradiate is actively developed. It is beta software.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eradiate-1.2.0rc5.tar.gz (300.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eradiate-1.2.0rc5-py3-none-any.whl (389.3 kB view details)

Uploaded Python 3

File details

Details for the file eradiate-1.2.0rc5.tar.gz.

File metadata

  • Download URL: eradiate-1.2.0rc5.tar.gz
  • Upload date:
  • Size: 300.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eradiate-1.2.0rc5.tar.gz
Algorithm Hash digest
SHA256 0a3f9a3f618bf01ec7809ae8888f4259f4578e30b66f9304d646a1068dd3d9f6
MD5 3f5aae239799d56621599670939d15cf
BLAKE2b-256 d48ae646266856a04637a9942902099591048e27bbb01a03e0611d845aa12bdb

See more details on using hashes here.

Provenance

The following attestation bundles were made for eradiate-1.2.0rc5.tar.gz:

Publisher: cd.yml on eradiate/eradiate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eradiate-1.2.0rc5-py3-none-any.whl.

File metadata

  • Download URL: eradiate-1.2.0rc5-py3-none-any.whl
  • Upload date:
  • Size: 389.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for eradiate-1.2.0rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 5f5fc80a9e515fcbfd2a2d39f8df7899b6c48d3319b908bf4fc658d59d6ccaa4
MD5 d6df0ed3b12793924817990996f13c9c
BLAKE2b-256 e9199921269b79d48dc336234210d3148cf78a7c4386267ed53a912109eadc00

See more details on using hashes here.

Provenance

The following attestation bundles were made for eradiate-1.2.0rc5-py3-none-any.whl:

Publisher: cd.yml on eradiate/eradiate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page