ICESAT2 Track Analysis
Installation for Developers
Prerequisites:
- A POSIX-compatible system (Linux or macOS)
- Python 3.10 (run
python --versionto check that your version of python is correct) - MPI (e.g. from
brew install open-mpion macOS) - HDF5 (e.g. from
brew install hdf5on macOS)
[!IMPORTANT]
Windows is not supported for development work – use WSL on Windows hosts
Installation:
[!NOTE] For testing purposes this repository uses Git Large File Storage (LFS) to handle large data files. If you want to clone the repository with the LFS files, make sure you have Git LFS installed on your system. You can download it from here. After installing, you can clone the repository as usual with
git clone. Git LFS files will be downloaded automatically. If you've already cloned the repository, you can download the LFS files withgit lfs pull.
-
Clone the repository:
- Navigate to https://github.com/brown-ccv/icesat2waves
- Click the "<> Code" button and select a method to clone the repository, then follow the prompts
-
Open a shell (bash, zsh) in the repository working directory
-
Create a new virtual environment named
.venv:python -m venv .venv
-
Activate the environment
source ".venv/bin/activate"
-
Upgrade pip
pip install --upgrade pip
-
Install or update the environment with the dependencies for this project:
pip install --upgrade --editable ".[dev]"
You may need to set the value of the
HDF5_DIRenvironment variable to install some of the dependencies, especially when installing on macOS.For Apple Silicon (M-Series) CPUs:
export HDF5_DIR="/opt/homebrew/opt/hdf5" pip install --upgrade --editable ".[dev]"
For Intel CPUs:
export HDF5_DIR="/usr/local/opt/hdf5" pip install --upgrade --editable ".[dev]"
-
Check the module
icesat2wavesis available by loading the module:python -c "import icesat2waves; print(icesat2waves.__version__)"
Command line interface
The icesat2waves package comes with a command-line interface (CLI) that facilitates interaction with the package directly from your terminal. This can be particularly useful for scripting and automation. You can access the help documentation for the CLI by running the following command:
icesat2waves --help
As suggested in the help, to run a specific command run icesat2waves [OPTIONS] COMMAND [ARGS].... To view help on running a command, run icesat2waves COMMAND --help. For example, to get help about the load-file command, you may issue icesat2waves load-file --help to get the following output:
(.venv) $ icesat2waves load-file --help
Usage: icesat2waves load-file [OPTIONS]
Open an ICEsat2 tbeam_stats.pyrack, apply filters and corrections, and
output smoothed photon heights on a regular grid in an .nc file.
Options:
--track-name TEXT [required]
--batch-key TEXT [required]
--id-flag / --no-id-flag [default: id-flag]
--output-dir TEXT [required]
--verbose / --no-verbose [default: no-verbose]
--help Show this message and exit.
Sample workflow
Below is a sample workflow that leverages the included CLI.
- Load single file
icesat2waves load-file --track-name 20190502052058_05180312_005_01 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Make spectra from downloaded data
icesat2waves make-spectra --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Plot spectra
icesat2waves plot-spectra --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Build IOWAGA priors
icesat2waves make-iowaga-threads-prior --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Build angles
icesat2waves make-b04-angle --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Define and plot angles
icesat2waves define-angle --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
- Make corrections and separations
icesat2waves correct-separate --track-name SH_20190502_05180312 --batch-key SH_testSLsinglefile2 --output-dir ./output
Metadata
Release files for icesat2waves 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| icesat2waves-1.0.0.tar.gz | 221.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| icesat2waves-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 432.8 kB
Release files / icesat2waves-1.0.0.tar.gz
| Download URL | icesat2waves-1.0.0.tar.gz |
|---|---|
| Size | 221.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
abd038ce26da0706758871598be5edcc311e217fab63b66fa518f37f54973bc2
|
|
BLAKE2b-256 checksum How to use checksums |
e23928850d165c358fcef6daa79a19a599815f0c5fe7dbf9c02158b9cc49042a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|
Release files / icesat2waves-1.0.0-py3-none-any.whl
| Download URL | icesat2waves-1.0.0-py3-none-any.whl |
|---|---|
| Size | 211.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7800b00cc3fd3f601c54a37efd179b315208580e52d467c51e1f0952e18852a1
|
|
BLAKE2b-256 checksum How to use checksums |
cd2e26fc8614bac74d0ebc285975d14720d8888cc3613bc8f69c826ce242e772
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.0.0 CPython/3.12.2
|