Skip to main content

pycraf-gui - simple GUI for pycraf

Project description

  • Version: 2.0.1

  • Authors: Benjamin Winkel, Marta Bautista, Federico Di Vruno, Gyula I. G. Józsa

  • User manual: stable | developer

PyPI tag License Zenodo DOI

The pycraf Python package provides functions and procedures for various tasks in spectrum-management compatibility studies. A typical example would be to calculate the interference levels at a radio telescope produced from a radio broadcasting tower. This package, pycraf-gui contains a simple graphical user interface, which can be used to do path attenuation calculations.

Releases are registered on PyPI, and development is occurring at the project’s github page.

Project Status

Pycrafs's CI Status on Azure Pipelines

Usage

Starting pycraf-gui

After installation, you can run:

pycraf-gui

License

Several licenses apply; see the license directory in the pycraf repository. The pycraf and pycraf-gui Python packages itself are published under GPL v3, an open-source license.

For some of the functionality provided in pycraf, data files provided by the ITU are necessary. For example, the atmospheric model in the pycraf.atm subpackage implements the algorithm described in ITU-R Recommendation P.676. Annex 1 of this Recommendation makes use of spectroscopic information of the oxygen and water vapour lines given in Tables 1 and 2 of P.676. Another example are the radiometeorological data files that are distributed alongside ITU-R Rec. P.452-16

ITU kindly gave us permission to include data files into pycraf that are distributed with the Recommendations on the ITU servers. This makes it possible to just use pycraf without the need to manually download necessary data files. However, these data files are not free for commercial use. For details, please see the LICENSE.ITU file.

Some of the examples/images in the pycraf documentation and tutorial notebooks make use of Copernicus data. For these, the conditions in COPERNICUS.EU apply.

Since pycraf uses the Astropy Package Template for packaging, we also refer to the associated license.

Installation

We strongly recommend to use the Anaconda Python distribution, as it allows to download pycraf binaries for all major platforms (Linux, OSX, Windows). After installing Anaconda/Miniconda, one can use the conda package manager to install it:

conda install pycraf pycraf-gui -c conda-forge

Of course, it is always a good idea to do this in its own environment, such that you don’t mess up with your standard environment, e.g.:

conda create -n pycraf-env python=3.9 pycraf pycraf-gui

If you don’t like Anaconda, the easiest way to install pycraf is via pip:

pip install pycraf pycraf-gui

The installation is also possible from source. Download the tar.gz-file, extract (or clone from GitHub) and simply execute:

python -m pip install .

For further details, we refer to the online documention installation instructions. It also includes some hints for running pycraf on Windows or MacOS. Older versions of the packages may work, but no support will be provided.

SRTM data

To make full use of the path attenuation calculations provided by pycraf (implements ITU-R Rec. P.452), we recommend to use NASA’s Shuttle Radar Topography Mission (SRTM) data for height-profile generation. pycraf can work with so-called .hgt files, a very simple binary format. Each .hgt file, a so-called tile, just contains 1201x1201 16-bit integers. From the file naming scheme, one can infer the associated coordinates. Most tiles contain one square-degree.

Unfortunately, we cannot provide SRTM data as part of the package, due to the large file sizes and legal reasons. But once you downloaded the necessary tiles (all or only a subset appropriate for your region), simply define the environment variable SRTMDATA, let it point to the folder containing the tiles, and pycraf will find the files when it is imported from Python.

On windows:

set SRTMDATA=C:\[path-to-srtm]\

On Linux/MacOS (sh-like):

export SRTMDATA=[path-to-srtm]/

There is also the possibility to change the path to the SRTM directory during run-time (see documentation).

Acknowledgments

We are very grateful for the kind support from ITU study groups and ITU’s legal department.

This code is makes use of the excellent work provided by the Astropy community. pycraf uses the Astropy package and also the Astropy Package Template for the packaging.

Who do I talk to?

If you encounter any problems or have questions, do not hesitate to raise an issue or make a pull request. Moreover, you can contact the devs directly:

  • bwinkel@mpifr.de

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

pycraf-gui-2.0.1.tar.gz (62.5 kB view details)

Uploaded Source

File details

Details for the file pycraf-gui-2.0.1.tar.gz.

File metadata

  • Download URL: pycraf-gui-2.0.1.tar.gz
  • Upload date:
  • Size: 62.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for pycraf-gui-2.0.1.tar.gz
Algorithm Hash digest
SHA256 5f52b9208b145d4a86cf88c21814cece65d7917831a6c6889d460bf95ad6f318
MD5 988631cb64d418542721c2c2ebac9f06
BLAKE2b-256 1c0936aa5870f3b5eb4a90a10362e1752ce8cff5cfc2946bb9d5dd38ca54fb44

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