Umbrella package for canVOD ecosystem
Project description
canvodpy
Umbrella package for unified GNSS VOD analysis.
Overview
canvodpy is the unified entry point for the canVOD ecosystem. It provides
three levels of API:
- Level 1: One-line convenience functions (fastest path to results)
- Level 2: Object-oriented classes (structured workflows)
- Level 3: Low-level components (full control)
Installation
# Installs canvodpy + all 7 sub-packages
uv pip install canvodpy
Quick Start
Level 1: Simple (One-Liners)
from canvodpy import process_date, calculate_vod
# Process one day of data
data = process_date("Rosalia", "2025001")
# Calculate VOD
vod = calculate_vod("Rosalia", "canopy_01", "reference_01", "2025001")
Level 2: Object-Oriented (More Control)
from canvodpy import Site, Pipeline
# Create site and pipeline
site = Site("Rosalia")
pipeline = site.pipeline(aux_agency="ESA", n_workers=8)
# Process data
data = pipeline.process_date("2025001")
# Or process multiple days
for date, datasets in pipeline.process_range("2025001", "2025007"):
print(f"Processed {date}")
Level 3: Low-Level (Full Control)
from canvod.readers import Rnxv3Obs
from canvod.auxiliary import Sp3File, ClkFile
from canvod.store import GnssResearchSite
from canvodpy.orchestrator import PipelineOrchestrator
# Direct access to all internals
site = GnssResearchSite("Rosalia")
orchestrator = PipelineOrchestrator(site, n_max_workers=12)
# ... custom processing ...
Included Packages
Installing canvodpy provides access to all 7 packages:
- canvod.readers -- RINEX file parsing (v3.04)
- canvod.auxiliary -- Auxiliary data (SP3, CLK) handling
- canvod.grids -- Hemisphere grid structures
- canvod.store -- Icechunk data storage
- canvod.vod -- VOD calculation algorithms
- canvod.viz -- 2D/3D visualization
- canvod.utils -- Shared utilities
Platform Support
| Platform | Status | Notes |
|---|---|---|
| Linux | Full support | Recommended |
| macOS | Full support | Fully tested |
| Windows | WSL only | Native not supported (reserved aux name) |
Configuration
Create a .env file in repository root (optional for NASA products):
# NASA CDDIS credentials (optional)
CDDIS_MAIL=your.email@example.com
# Data root directory (required)
GNSS_ROOT_DIR=/path/to/your/data
Without .env, canvodpy operates in ESA-only mode (COD, GFZ, ESA products).
Documentation
Development
See the main repository README for workspace development setup.
License
Apache License 2.0
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
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 canvodpy-0.2.0.tar.gz.
File metadata
- Download URL: canvodpy-0.2.0.tar.gz
- Upload date:
- Size: 94.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f76c5d16f80efa6bea0d3815e05503802fb02688c0edc9f8b3be81ac9b949f98
|
|
| MD5 |
603826d19c014e7d4ba7131afec3e3a7
|
|
| BLAKE2b-256 |
8ea4d42c2af8f3719f3059ec978ad0a7f872a36417b8726452f5ab96eac6c0ac
|
File details
Details for the file canvodpy-0.2.0-py3-none-any.whl.
File metadata
- Download URL: canvodpy-0.2.0-py3-none-any.whl
- Upload date:
- Size: 112.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f59f54a6e2cb89201b70e9b9144874d762ffad4c89eb0392d8c123e97ff03608
|
|
| MD5 |
2490ace3bcc009bd178ab2659283df21
|
|
| BLAKE2b-256 |
27831f60bf65bbace8fd057d6ea7c581a3ce043c88206fddf903e7c581cc1e87
|