Skip to main content

A Python3 package to process data from CRESIS SnowRadar systems

Project description

pySnowRadar

Build Tests DOI

A Python3 package to process data from CRESIS SnowRadar systems.

From-Source Installation (PyPI and conda-forge packages coming soon)

Install and initialize conda: https://docs.conda.io/en/latest/miniconda.html

Clone this repository, create the conda environment and install pySnowRadar:

(base) $ git clone https://github.com/kingjml/pySnowRadar.git
(base) $ cd ./pySnowRadar
(base) $ conda env create -f exact_dev_env.yml
(base) $ conda activate py3-pySnowRadar
(py3-pySnowRadar) $ pip install . 

Usage

Check out the Jupyter notebook examples for usage scenarios and code snippets:

pySnowRadar does not validate interface or snow depth estimates. It is highly recommended that users compare outputs with measurements or references to quantify errors. Users should consider uncertainties including but not limited to surface roughness, salinity, and sidelobes.

For reference, the following papers (not an exhaustive list) describe uncertainties involved with the handling of SnowRadar data: Panzer et al. (2013), Newman et al. (2014), Webster et al. (2014), King et al. (2015), Kwok et al. (2017)

Development and Contributing

The following instructions are suitable for users who have already cloned this repository and would like to modify the inner workings of pySnowRadar.

From inside the local clone or fork, create a new branch where your modifications will reside:

(py3-pySnowRadar) $ git checkout -b new_feature

After you make your modifications, you can test your changes by reinstalling pySnowRadar by using pip from within the local clone:

# Make sure you're in the proper python environment!
(py3-pySnowRadar) $ pip install . --upgrade

When you are satisfied with your changes, you may push your changes to github.com and open a pull request. For more information on pull requests, consult Github's Documentation

(Optional) Test-running

Test files are stored under the tests subdirectory and require the pytest and coverage packages.

Running tests

(py3-pySnowRadar) $ pytest 

Running tests and generating coverage reports

These commands run the tests and generate a coverage report for any untested files where the Missing columns indicates line numbers that still require testing

(py3-pySnowRadar) $ coverage run -m pytest
(py3-pySnowRadar) $ coverage report # to display the coverage report within a terminal

Sometimes it's nicer to see a html-ified coverage report, so use the following command:

(py3-pySnowRadar) $ coverage html 

This will generate a htmlcov folder containing the coverage report. Open htmlcov/index.html in a browser to see what code needs test coverage.

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

pySnowRadar-1.1.1.tar.gz (890.6 kB view details)

Uploaded Source

Built Distribution

pySnowRadar-1.1.1-py3-none-any.whl (890.5 kB view details)

Uploaded Python 3

File details

Details for the file pySnowRadar-1.1.1.tar.gz.

File metadata

  • Download URL: pySnowRadar-1.1.1.tar.gz
  • Upload date:
  • Size: 890.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.1 CPython/3.8.6

File hashes

Hashes for pySnowRadar-1.1.1.tar.gz
Algorithm Hash digest
SHA256 d8fbe24bb43dc1ada6b161a21ff3db9f317055bbf3c035cc95f16e73d7b9f42a
MD5 5c9e459d6beb1ba971f9f80ef69197c9
BLAKE2b-256 709de7864ec751c253e60f0e9fe22629fbe8804d9046dfadb9d4f6244587a1f8

See more details on using hashes here.

File details

Details for the file pySnowRadar-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: pySnowRadar-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 890.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.1 CPython/3.8.6

File hashes

Hashes for pySnowRadar-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c805168cb5e974d4107420c47a921820b893232bbc1caca232fde171c3b45a98
MD5 69cd594109ee3922a564fc41924fe51f
BLAKE2b-256 5cae284b539ef9566cce9e17ba583247c82c712a48a26d83d344034ccbf38f5d

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