Skip to content

vatsal2025/Pyfortracc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PyForTraCC Enhanced: Tracking & Forecasting Atmospheric Systems

πŸ“– Overview

This repository contains an enhanced implementation of PyForTraCC with:

βœ… Support for NetCDF/HDF5 input files (not available in the original PyForTraCC).

βœ… A physics-aware machine learning forecasting module (Wide & Deep hybrid model).

βœ… End-to-end pipeline for tracking, analyzing, and forecasting convective cloud clusters.

It is designed for meteorologists, researchers, and data scientists working with satellite data who want both tracking and short-term forecasting capabilities.

✨ Key Features

Extended Data Input

Direct support for NetCDF & HDF5 datasets.

Automated variable detection (temperature, latitude, longitude).

Tracking

Improved PyForTraCC-based detection of convective systems.

Handles splits, merges, growth, decay, and dissipation.

Outputs system lifecycles, trajectories, and movement vectors.

Forecasting (Newly Added)

Physics-aware Wide & Deep ML architecture.

Forecasts brightness temperature evolution.

Constrained by physical laws β†’ realistic predictions.

Visualization

System trajectory animations.

Diagnostic plots: size evolution, intensity changes, movement dynamics.

Statistical summaries (DuckDB-based).

πŸ“‚ Repository Structure β”œβ”€β”€ Pyfortracc_Tracking_&_Enhanced_Forecasting.ipynb # Main notebook β”œβ”€β”€ data/ # Place NetCDF/HDF5 input files here β”œβ”€β”€ output/ # Tracking and forecast outputs β”œβ”€β”€ requirements.txt # Dependencies └── README.md # Project documentation

Run Jupyter Notebook / Colab Open the main notebook:

jupyter notebook Pyfortracc_Tracking_&_Enhanced_Forecasting.ipynb

▢️ Usage

  1. Upload NetCDF/HDF5 Files

Place your .nc or .hdf5 files in the data/ folder.

The notebook automatically detects variables (temperature, lat, lon).

  1. Configure Parameters

Set thresholds:

Warm cloud = 235K

Cold cloud = 200K

Adjust cluster size filtering if needed.

  1. Run Tracking

Detects cloud systems across time steps.

Outputs lifecycle statistics, trajectories, and movement vectors.

  1. Forecasting (New)

Uses physics-aware Wide & Deep ML model.

Produces short-term temperature forecasts.

Ensures outputs remain meteorologically realistic.

πŸ“Š Results (Example)

Tracking: Successfully identified both short-lived convective events and long-lived mesoscale systems.

Forecasting: Achieved 2–4K RMSE with <5% physical violations (temperature outside 150–350K).

Visualization: Generated animations and diagnostic plots for lifecycle analysis.

πŸ“¦ Requirements

Main dependencies:

pyfortracc (core algorithm)

xarray, numpy, pandas (data handling)

matplotlib, ipywidgets (visualization/UI)

duckdb (tracking result queries)

torch, lightgbm (forecasting models)

Install all with:

pip install -r requirements.txt

πŸš€ Your Contributions vs Original PyForTraCC

πŸ”Ή Original PyForTraCC: Limited to specific formats, tracking-only.

πŸ”Ή This Repo:

Added NetCDF/HDF5 input compatibility.

Added physics-aware ML forecasting.

Built an end-to-end workflow (tracking β†’ analysis β†’ forecasting β†’ visualization).

πŸ“Œ Future Work

Extend forecasts to spatial fields (not just point-based).

Add uncertainty quantification in forecasts.

Optimize for real-time streaming satellite data.

🀝 Acknowledgements

Original FORTRACC methodology.

PyForTraCC library.

Open-source ML & meteorological data analysis community.

πŸ“œ License

MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published