NEXT PASS
Predict the next satellite overpass for a point, bounding box, or KML AOI — supporting Sentinel‑1, Sentinel‑2, Landsat‑8, Landsat‑9, and NISAR. Optionally filter by OPERA product families, estimate cloudiness for the upcoming pass, and email results.
Highlights
- Satellites: Sentinel-1, Sentinel-2, Landsat-8, Landsat-9, NISAR
- AOI inputs: Point (lat, lon), SNWE bounding box, or KML polygon
- OPERA product filters: limit search to product families (e.g.,
DSWX-HLS_V1,DSWX-S1_V1) - Cloudiness prediction: for next S1/S2 overpasses (
-c) - Email notifications: send S1/S2 results via SMTP (
--email) - Examples included:
examples/
Repo layout
next_pass/
├─ examples/ # Jupyter notebooks and sample workflows
├─ utils/ # Core helpers (Sentinel/Landsat passes, cloudiness, OPERA products, plotting, I/O)
├─ next_pass.py # CLI entry point (used by the `next-pass` console script)
├─ environment.yml # Conda/mamba environment for development and notebooks
├─ requirements.txt # Runtime dependency list (used by pyproject / pip)
├─ pyproject.toml # Modern packaging metadata (setuptools backend)
├─ setup.py # Legacy shim for older tooling
└─ LICENSE # Apache-2.0
Installation
Clone the repository:
git clone https://github.com/OPERA-Cal-Val/next_pass.git
cd next_pass
Create a fresh environment (recommended):
mamba env create -f environment.yml
mamba activate next_pass
or with conda
conda env create -f environment.yml
conda activate next_pass
Alternatively, install the runtime dependencies directly:
conda install -c conda-forge --yes --file requirements.txt
Install the package (optional but recommended)
pip install -e .
Usage
The main entry point is next-pass. Choose one AOI input form and add options as needed.
1) Point (lat, lon)
next-pass -b 34.20 -118.17
2) Bounding box (SNWE = South North West East)
next-pass -b 34.15 34.25 -118.20 -118.15
3) KML file (polygon)
next-pass -b /path/to/aoi.kml
4) WKT coordinates (polygon or point)
next-pass -b "POLYGON ((-123.1 47.33, -123.16 47.28, -123.33 47.33, -123.25 47.34, -123.19 47.32, -123.15 47.35, -123.1 47.33))"
5) link to .geojson file (online or local)
next-pass -b "https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.dc03b8d7d3aa06ec27afb812ac02d6afa8b5f0ce.002.1"
next-pass -b AOI_from_url.geojson
Options
-
Satellite subset (e.g., S1 only) and email the results:
next-pass -b 50 52 -102 -100 -s sentinel-1 --email
-
NISAR overpasses from the official NASA observation-plan KMZ:
next-pass -b 34.15 34.25 -118.20 -118.15 -s nisar
-
Restrict OPERA products considered during the search (space‑separated list):
next-pass -b 29 31 -100 -97 -p DSWX-HLS_V1 DSWX-S1_V1
-
Predict cloudiness for the next S1/S2 overpasses (adds a cloud estimate column):
next-pass -b 29 31 -100 -97 -p DSWX-HLS_V1 DSWX-S1_V1 -c
-
Generate old OPERA products for a previous event date (YYYY-MM-DD):
next-pass -b 17.32 18.80 -78.61 -75.58 -f opera_search -d 2025-10-01
-
Generate OPERA Products DRCS map using a UTC event date in format YYYY-MM-DDTHH:MM (Please consider replacing the date in the example with a recent event date):
next-pass -b 17.32 18.80 -78.61 -75.58 -g 2025-11-18T01:00
Use
-h/--helpto see all flags and defaults.
Contributing
Issues and pull requests are welcome! If adding a new satellite, product family, or IO backend, please include a small example and a test (if applicable).
For development setup and code quality standards, see CONTRIBUTING.md.
License
Apache‑2.0 — see LICENSE.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file next_pass-1.3.0.tar.gz.
File metadata
- Download URL: next_pass-1.3.0.tar.gz
- Upload date:
- Size: 77.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34791cf4f90e0371ab3e94121ca837dd0675f9ec2eee3b1e6ff289ea567b9afb
|
|
| MD5 |
b906deb96b977a82017f47362c11c18b
|
|
| BLAKE2b-256 |
9195e6468598d9ea08952f44e6985b6074e31931c86f1c3933c3dd1f523e7ff3
|
File details
Details for the file next_pass-1.3.0-py3-none-any.whl.
File metadata
- Download URL: next_pass-1.3.0-py3-none-any.whl
- Upload date:
- Size: 66.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0428ae03b332379b65067203dab41ce0fa8ce36ef68e86ec20ce415abb1bdd53
|
|
| MD5 |
6819dd0c99827602ffa82b698f3c7d2f
|
|
| BLAKE2b-256 |
0e853c6f5881a5ef08f0725c989d699647d8e0d1f3820bbdc0ada694540f79b2
|