Skip to main content

pyrtlib - Radiative Transfer library

Project description

A Radiative Transfer Python Library (non-scattering)

docker-image-ci run-python-tests build-docs-action

Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. PyPI Latest Release GitHub release (latest by date)

codecov Codacy Badge

license DOI

PyRTlib is a Python package, for non-scattering line-by-line microwave RT simulations. PyRTlib is a user-friendly tool for computing down and up-welling brightness temperatures and related quantities (e.g., atmospheric absorption, optical depth, opacity) in Python.

spectrum

Plotting of nadir upwelling $\Delta T_b$ using the last two absorption models available in PyRTlib for six reference atmosphere climatology.

spectrum

Installation

Use pip package to install quicly the pyrtlib library. See installation instructions for more info on how instaling pyrtlib.

   $ pip install pyrtlib

Example

For examples of how to use pyrtlib see the examples gallery. Code can be downloaded both as python script or notebook file.

Performing calculation of upwelling brightness temperature.

   from pyrtlib.tb_spectrum import TbCloudRTE
   from pyrtlib.climatology import AtmosphericProfiles as atmp
   from pyrtlib.utils import mr2rh, ppmv2gkg

Atmospheric profile definition:

   z, p, _, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER)

Units conversion:

   gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)

Relative humidity of $H_2O$ (water vapor)

   rh = mr2rh(p, t, gkg)[0] / 100

Deifinition of angles and frequencies:

   ang = np.array([90.])
   frq = np.arange(20, 1001, 1)

Initialize parameters for main execution:

   rte = TbCloudRTE(z, p, t, rh, frq, ang)

Set absorption model:

   rte.init_absmdl('R22SD')

Execute model by computing upwelling radiances:

   df = rte.execute()
   df.tbtotal
   0      293.119811
   1      292.538088
   2      291.736672
   3      291.913658
   4      292.493971
            ...    
   976    230.179993
   977    231.435965
   978    232.592915
   979    233.666322
   980    234.667522
   Name: tbtotal, Length: 981, dtype: float64

My first run with PyRTlib

You can get started with PyRTlib by installing and executing the first radiative transfer calculation from the following Colab Notebook Open In Colab

Cite as

Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., and Romano, F.: PyRTlib: an educational Python-based library for non-scattering atmospheric microwave radiative transfer computations, Geosci. Model Dev., 17, 2053–2076, https://doi.org/10.5194/gmd-17-2053-2024, 2024.

Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., & Romano, F. (2024). PyRTlib: a python package for non-scattering line-by-line microwave Radiative Transfer simulations. (Computer software). https://doi.org/10.5281/zenodo.8219145

Contributors

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

pyrtlib-1.1.0.tar.gz (235.1 kB view details)

Uploaded Source

Built Distribution

pyrtlib-1.1.0-py3-none-any.whl (246.2 kB view details)

Uploaded Python 3

File details

Details for the file pyrtlib-1.1.0.tar.gz.

File metadata

  • Download URL: pyrtlib-1.1.0.tar.gz
  • Upload date:
  • Size: 235.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pyrtlib-1.1.0.tar.gz
Algorithm Hash digest
SHA256 1fe34f1b0fe639ee973cb60e3217f20c0c44e19c35537afb2305cb78d4333301
MD5 1f3f766da9f9a97e89ec4dfaa5cf223f
BLAKE2b-256 9af2a3c904097166419d658be91c1c98079adbd95b5934eb2ed309a568e0fef1

See more details on using hashes here.

File details

Details for the file pyrtlib-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyrtlib-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 246.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for pyrtlib-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4dd8f07007cf56245ad7cceef0799451a9e9cd614858377bcd703a7f6d94a87a
MD5 ffa4c3235c5bca64e8e5450995bd497f
BLAKE2b-256 77d0397d6d8486d4dbefd10925a8342ca218bb18dc55c293686d0bf0feb8d995

See more details on using hashes here.

Supported by

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