Coder Social home page Coder Social logo

thaspius / iturpropagpy Goto Github PK

View Code? Open in Web Editor NEW

This project forked from iportillo/iturpropagpy

0.0 1.0 0.0 120.11 MB

A python inplmentation of ITU-R P. Recommendations to compute atmospheric attenuation in slant and horizontal paths.

License: Other

Python 100.00%

iturpropagpy's Introduction

ITURPropagPy

|GitHub license| |Build Status| |PyPI version| |Coverage 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 [https://github.com/mrazavian/ITURPropagPY/tree/master/Documents].

Examples of use cases can be found in the [https://github.com/mrazavian/ITURPropagPY/tree/master/Examples]

Installation

ITU-RPropagpy has the followind dependencies: numpy, scipy, joblib, pyproj, h5py, and astropy. Installation of basemap and matplotlib is recommended to display results in a map.

Using pip , you can install all of them by running:

::

pip install git+https://github.com/mrazavian/ITURPropagPY

More information about the installation process can be found on the [https://github.com/mrazavian/ITURPropagPY].

ITU-R Recommendations implemented

The following ITU-R Recommendations are implemented in ITURPropagPY

  • ITU-R P.453-13: The radio refractive index: its formula and refractivity data
  • ITU-R P.618-13: Propagation data and prediction methods required for the design of Earth-space telecommunication systems
  • ITU-R P.676-11: 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-7: Attenuation due to clouds and fog
  • ITU-R P.1144-7: Interpolation methods for the geophysical properties used to compute propagation effects
  • ITU-R P.1511-2: Topography for Earth-to-space propagation modelling
  • ITU-R P.1853-2: Tropospheric attenuation time series synthesis

The individual models can be accessed using the iturpropag.models package.

Usage

The following code example shows the usage of ITURPropagPY. More examples can be found in the [https://github.com/mrazavian/ITURPropagPY/tree/master/Examples].

.. code:: python

import matplotlib.pyplot as plt
import iturpropag

f = 22.5 * iturpropag.u.GHz    # Link frequency
D = 1 * iturpropag.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.
tau = 45
eta = 0.6

# Generate a regular grid latitude and longitude points with 1 degrees resolution   
lat, lon = iturpropag.utils.regular_lat_lon_grid() 

# Comute the atmospheric attenuation
Att = iturpropag.atmospheric_attenuation_slant_path(lat, lon, f, el, p, D, tau, eta) 
iturpropag.utils.plot_in_map(Att.value, lat, lon, 
                       cbar_text='Atmospheric attenuation [dB]')
plt.show()

which produces:

alt "atmospheric attenuation"

Citation

If you use ITURPropagPY in one of your research projects, please cite it as:

::

@misc{iturpropagpy-2019,
      title={ITURPropagPY: A python implementation of the ITU-R P. Recommendations to compute atmospheric attenuation in slant and horizontal paths.},
      author={Inigo del Portillo, Mojtaba Razavian, Thomas A. Prechtl},
      year={2019},
      publisher={GitHub},
      howpublished={\url{https://github.com/mrazavian/ITURPropagPY}}
}

Keywords: atmopheric-propagation attenuation communications Platform: UNKNOWN Classifier: Development Status :: 3 - Alpha Classifier: Intended Audience :: Telecommunications Industry Classifier: Topic :: Scientific/Engineering :: Physics Classifier: License :: OSI Approved :: ESA-PL โ€“ v2.3 Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7

iturpropagpy's People

Contributors

mrazavian avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.