ITU-Rpy
=======
|GitHub license| |Build Status| |PyPI version| |Coverage Status| |PyPI
pyversions| |Documentation Status|
A python implementation of the ITU-R P. Recommendations to compute
atmospheric attenuation in slant and horizontal paths.
The propagation loss on an Earth-space path and a horizontal-path,
relative to the free-space loss, is the sum of different contributions,
namely: attenuation by atmospheric gases; attenuation by rain, other
precipitation and clouds; scintillation and multipath effects;
attenuation by sand and dust storms. Each of these contributions has its
own characteristics as a function of frequency, geographic location and
elevation angle. ITU-Rpy allows for fast, vectorial computation of the
different contributions to the atmospheric attenuation.
Documentation
-------------
The documentation can be found at `ITU-Rpy
documentation <http://itu-rpy.readthedocs.io/en/latest/index.html>`__ in
Read the docs.
Examples of use cases can be found in the `examples
folder <https://github.com/inigodelportillo/ITU-Rpy/tree/master/examples>`__.
Installation
------------
ITU-Rpy has the followind dependencies: ``numpy``, ``scipy``,
``pyproj``, and ``astropy``. Installation of ``cartopy`` and
``matplotlib`` is recommended to display results in a map.
Using pip, you can install all of them by running:
.. code:: console
pip install itur
More information about the installation process can be found on the
`documentation <https://github.com/inigodelportillo/ITU-Rpy/blob/master/docs/installation.rst>`__.
ITU-R Recommendations implemented
---------------------------------
The following ITU-R Recommendations are implemented in ITU-Rpy
* **ITU-R P.453-13:** The radio refractive index: its formula and refractivity data
* **ITU-R P.530-17:** Propagation data and prediction methods required for the design of terrestrial line-of-sight systems
* **ITU-R P.618-13:** Propagation data and prediction methods required for the design of Earth-space telecommunication systems
* **ITU-R P.676-12:** Attenuation by atmospheric gases
* **ITU-R P.835-6:** Reference Standard Atmospheres
* **ITU-R P.836-6:** Water vapour: surface density and total columnar content
* **ITU-R P.837-7:** Characteristics of precipitation for propagation modelling
* **ITU-R P.838-3:** Specific attenuation model for rain for use in prediction methods
* **ITU-R P.839-4:** Rain height model for prediction methods.
* **ITU-R P.840-8:** Attenuation due to clouds and fog
* **ITU-R P.1144-10:** Interpolation methods for the geophysical properties used to compute propagation effects
* **ITU-R P.1510-1:** Mean surface temperature
* **ITU-R P.1511-2:** Topography for Earth-to-space propagation modelling
* **ITU-R P.1623-1:** Prediction method of fade dynamics on Earth-space paths
* **ITU-R P.1853-1:** Tropospheric attenuation time series synthesis
The individual models can be accessed using the ``itur.models`` package.
Usage
-----
The following code example shows the usage of ITU-Rpy. More examples can
be found in the `examples
folder <https://github.com/inigodelportillo/ITU-Rpy/tree/master/examples>`__.
.. code:: python
import itur
f = 22.5 * itur.u.GHz # Link frequency
D = 1 * itur.u.m # Size of the receiver antenna
el = 60 # Elevation angle constant of 60 degrees
p = 3 # Percentage of time that attenuation values are exceeded.
# Generate a regular grid latitude and longitude points with 1 degrees resolution
lat, lon = itur.utils.regular_lat_lon_grid()
# Comute the atmospheric attenuation
Att = itur.atmospheric_attenuation_slant_path(lat, lon, f, el, p, D)
itur.plotting.plot_in_map(Att.value, lat, lon,
cbar_text='Atmospheric attenuation [dB]')
which produces: |Attenuation worldmap|
Validation
----------
ITU-Rpy has been validated using the `ITU Validation examples (rev
5.1) <https://www.itu.int/en/ITU-R/study-groups/rsg3/ionotropospheric/CG-3M3J-13-ValEx-Rev5_1.xlsx>`__
, which provides test cases for parts of Recommendations ITU-R P.453-14,
P.618-13, P.676-12, P.836-6, P.837-7, P.838-3, P.839-4, P.840-8,
P.1511-2, P.1623-1.
The results of this validation exercise are available at the `validation
page <https://itu-rpy.readthedocs.io/en/latest/validation.html>`__ in
the documentation.
Citation
--------
If you use ITU-Rpy in one of your research projects, please cite it as:
::
@misc{iturpy-2017,
title={ITU-Rpy: A python implementation of the ITU-R P. Recommendations to compute atmospheric
attenuation in slant and horizontal paths.},
author={Inigo del Portillo},
year={2017},
publisher={GitHub},
howpublished={\url{https://github.com/inigodelportillo/ITU-Rpy/}}
}
.. |GitHub license| image:: https://img.shields.io/badge/license-MIT-lightgrey.svg
:target: https://raw.githubusercontent.com/Carthage/Carthage/master/LICENSE.md
.. |Build Status| image:: https://travis-ci.org/inigodelportillo/ITU-Rpy.svg?branch=master
:target: https://travis-ci.org/inigodelportillo/ITU-Rpy
.. |PyPI version| image:: https://badge.fury.io/py/itur.svg
:target: https://badge.fury.io/py/itur
.. |Coverage Status| image:: https://codecov.io/gh/inigodelportillo/ITU-Rpy/branch/master/graph/badge.svg?token=0FZBWMH271
:target: https://codecov.io/gh/inigodelportillo/ITU-Rpy
.. |PyPI pyversions| image:: https://img.shields.io/pypi/pyversions/itur.svg
:target: https://pypi.python.org/pypi/itur/
.. |Documentation Status| image:: https://readthedocs.org/projects/itu-rpy/badge/?version=latest
:target: http://itu-rpy.readthedocs.io/?badge=latest
.. |Attenuation worldmap| image:: https://raw.githubusercontent.com/inigodelportillo/ITU-Rpy/master/docs/images/att_world.png
Raw data
{
"_id": null,
"home_page": "https://github.com/inigodelportillo/ITU-Rpy",
"name": "itur",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "atmopheric-propagation attenuation communications",
"author": "Inigo del Portillo",
"author_email": "inigo.del.portillo@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/9c/57/d0eaedc1829a410b2c17e12259c423993186de0af233da5f83a2ea0674a1/itur-0.4.0.tar.gz",
"platform": null,
"description": "ITU-Rpy\n=======\n\n|GitHub license| |Build Status| |PyPI version| |Coverage Status| |PyPI\npyversions| |Documentation Status|\n\nA python implementation of the ITU-R P. Recommendations to compute\natmospheric attenuation in slant and horizontal paths.\n\nThe propagation loss on an Earth-space path and a horizontal-path,\nrelative to the free-space loss, is the sum of different contributions,\nnamely: attenuation by atmospheric gases; attenuation by rain, other\nprecipitation and clouds; scintillation and multipath effects;\nattenuation by sand and dust storms. Each of these contributions has its\nown characteristics as a function of frequency, geographic location and\nelevation angle. ITU-Rpy allows for fast, vectorial computation of the\ndifferent contributions to the atmospheric attenuation.\n\nDocumentation\n-------------\n\nThe documentation can be found at `ITU-Rpy\ndocumentation <http://itu-rpy.readthedocs.io/en/latest/index.html>`__ in\nRead the docs.\n\nExamples of use cases can be found in the `examples\nfolder <https://github.com/inigodelportillo/ITU-Rpy/tree/master/examples>`__.\n\nInstallation\n------------\n\nITU-Rpy has the followind dependencies: ``numpy``, ``scipy``,\n``pyproj``, and ``astropy``. Installation of ``cartopy`` and\n``matplotlib`` is recommended to display results in a map.\n\nUsing pip, you can install all of them by running:\n\n.. code:: console\n\n pip install itur\n\nMore information about the installation process can be found on the\n`documentation <https://github.com/inigodelportillo/ITU-Rpy/blob/master/docs/installation.rst>`__.\n\nITU-R Recommendations implemented\n---------------------------------\n\nThe following ITU-R Recommendations are implemented in ITU-Rpy \n * **ITU-R P.453-13:** The radio refractive index: its formula and refractivity data\n * **ITU-R P.530-17:** Propagation data and prediction methods required for the design of terrestrial line-of-sight systems\n * **ITU-R P.618-13:** Propagation data and prediction methods required for the design of Earth-space telecommunication systems\n * **ITU-R P.676-12:** Attenuation by atmospheric gases\n * **ITU-R P.835-6:** Reference Standard Atmospheres\n * **ITU-R P.836-6:** Water vapour: surface density and total columnar content\n * **ITU-R P.837-7:** Characteristics of precipitation for propagation modelling\n * **ITU-R P.838-3:** Specific attenuation model for rain for use in prediction methods\n * **ITU-R P.839-4:** Rain height model for prediction methods.\n * **ITU-R P.840-8:** Attenuation due to clouds and fog \n * **ITU-R P.1144-10:** Interpolation methods for the geophysical properties used to compute propagation effects \n * **ITU-R P.1510-1:** Mean surface temperature\n * **ITU-R P.1511-2:** Topography for Earth-to-space propagation modelling\n * **ITU-R P.1623-1:** Prediction method of fade dynamics on Earth-space paths\n * **ITU-R P.1853-1:** Tropospheric attenuation time series synthesis\n\nThe individual models can be accessed using the ``itur.models`` package.\n\nUsage\n-----\n\nThe following code example shows the usage of ITU-Rpy. More examples can\nbe found in the `examples\nfolder <https://github.com/inigodelportillo/ITU-Rpy/tree/master/examples>`__.\n\n.. code:: python\n\n import itur\n\n f = 22.5 * itur.u.GHz # Link frequency\n D = 1 * itur.u.m # Size of the receiver antenna\n el = 60 # Elevation angle constant of 60 degrees\n p = 3 # Percentage of time that attenuation values are exceeded.\n \n # Generate a regular grid latitude and longitude points with 1 degrees resolution \n lat, lon = itur.utils.regular_lat_lon_grid() \n\n # Comute the atmospheric attenuation\n Att = itur.atmospheric_attenuation_slant_path(lat, lon, f, el, p, D) \n itur.plotting.plot_in_map(Att.value, lat, lon, \n cbar_text='Atmospheric attenuation [dB]')\n\nwhich produces: |Attenuation worldmap|\n\nValidation\n----------\n\nITU-Rpy has been validated using the `ITU Validation examples (rev\n5.1) <https://www.itu.int/en/ITU-R/study-groups/rsg3/ionotropospheric/CG-3M3J-13-ValEx-Rev5_1.xlsx>`__\n, which provides test cases for parts of Recommendations ITU-R P.453-14,\nP.618-13, P.676-12, P.836-6, P.837-7, P.838-3, P.839-4, P.840-8,\nP.1511-2, P.1623-1.\n\nThe results of this validation exercise are available at the `validation\npage <https://itu-rpy.readthedocs.io/en/latest/validation.html>`__ in\nthe documentation.\n\nCitation\n--------\n\nIf you use ITU-Rpy in one of your research projects, please cite it as:\n\n::\n\n @misc{iturpy-2017,\n title={ITU-Rpy: A python implementation of the ITU-R P. Recommendations to compute atmospheric\n attenuation in slant and horizontal paths.},\n author={Inigo del Portillo},\n year={2017},\n publisher={GitHub},\n howpublished={\\url{https://github.com/inigodelportillo/ITU-Rpy/}}\n }\n\n.. |GitHub license| image:: https://img.shields.io/badge/license-MIT-lightgrey.svg\n :target: https://raw.githubusercontent.com/Carthage/Carthage/master/LICENSE.md\n.. |Build Status| image:: https://travis-ci.org/inigodelportillo/ITU-Rpy.svg?branch=master\n :target: https://travis-ci.org/inigodelportillo/ITU-Rpy\n.. |PyPI version| image:: https://badge.fury.io/py/itur.svg\n :target: https://badge.fury.io/py/itur\n.. |Coverage Status| image:: https://codecov.io/gh/inigodelportillo/ITU-Rpy/branch/master/graph/badge.svg?token=0FZBWMH271\n :target: https://codecov.io/gh/inigodelportillo/ITU-Rpy\n.. |PyPI pyversions| image:: https://img.shields.io/pypi/pyversions/itur.svg\n :target: https://pypi.python.org/pypi/itur/\n.. |Documentation Status| image:: https://readthedocs.org/projects/itu-rpy/badge/?version=latest\n :target: http://itu-rpy.readthedocs.io/?badge=latest\n.. |Attenuation worldmap| image:: https://raw.githubusercontent.com/inigodelportillo/ITU-Rpy/master/docs/images/att_world.png\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A python implementation of the ITU-R P. Recommendations",
"version": "0.4.0",
"split_keywords": [
"atmopheric-propagation",
"attenuation",
"communications"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "617be682678c0a6fcdd4529abc5f22324149cd7a725138465d76885a3a53c88f",
"md5": "f2f113731682d25cf763ced249fbfe62",
"sha256": "d7a357172216075b9f0b8f38cd68ce975dba1b7e22db8329f013e6ef651db9b2"
},
"downloads": -1,
"filename": "itur-0.4.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "f2f113731682d25cf763ced249fbfe62",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 163384630,
"upload_time": "2023-02-04T23:59:40",
"upload_time_iso_8601": "2023-02-04T23:59:40.950298Z",
"url": "https://files.pythonhosted.org/packages/61/7b/e682678c0a6fcdd4529abc5f22324149cd7a725138465d76885a3a53c88f/itur-0.4.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9c57d0eaedc1829a410b2c17e12259c423993186de0af233da5f83a2ea0674a1",
"md5": "6f4df238d6fd93ae552757f7c94026ce",
"sha256": "b833021dc11321f28a03560ec4ee27cdff60234bf4ec25642f013e33d254411e"
},
"downloads": -1,
"filename": "itur-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "6f4df238d6fd93ae552757f7c94026ce",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 163362049,
"upload_time": "2023-02-04T23:59:51",
"upload_time_iso_8601": "2023-02-04T23:59:51.293335Z",
"url": "https://files.pythonhosted.org/packages/9c/57/d0eaedc1829a410b2c17e12259c423993186de0af233da5f83a2ea0674a1/itur-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-02-04 23:59:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "inigodelportillo",
"github_project": "ITU-Rpy",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "setuptools",
"specs": []
},
{
"name": "numpy",
"specs": [
[
">=",
"1.14.0"
]
]
},
{
"name": "pandas",
"specs": [
[
">=",
"0.24.2"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"0.18.1"
]
]
},
{
"name": "astropy",
"specs": []
},
{
"name": "pyproj",
"specs": []
}
],
"lcname": "itur"
}