A Python3 package to process data from CRESIS SnowRadar systems
Project description
pySnowRadar
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:
- Batch-processing of multiple NSIDC L1b Deconvoluted SnowRadar products
- Layer retrieval test of AWI SnowRadar product
- Layer retrievel test of OIB SnowRadar product
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8fbe24bb43dc1ada6b161a21ff3db9f317055bbf3c035cc95f16e73d7b9f42a |
|
MD5 | 5c9e459d6beb1ba971f9f80ef69197c9 |
|
BLAKE2b-256 | 709de7864ec751c253e60f0e9fe22629fbe8804d9046dfadb9d4f6244587a1f8 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | c805168cb5e974d4107420c47a921820b893232bbc1caca232fde171c3b45a98 |
|
MD5 | 69cd594109ee3922a564fc41924fe51f |
|
BLAKE2b-256 | 5cae284b539ef9566cce9e17ba583247c82c712a48a26d83d344034ccbf38f5d |