Real-time processing for informed adaptive scanning of ARM weather radar operations and field campaigns.
Note: Adapt is under active development. We are not accepting external Pull Requests at this time. Contribution guidelines will be published after the stable release. Expect frequent breaking changes in APIs, configuration files, database schemas, and outputs.
ARM Adapt is a configuration-driven modular framework for near real-time analysis of convective systems designed to support adaptive sampling and study of convective storms and their life cycles. The system implements a modular pipeline that ingests radar observations, performs gridding and segmentation to identify convective cells, and maintains their identity through time using tracking. It further derives cell-level properties and motion to characterize storm evolution and generate candidate targets for adaptive radar scanning.
Adapt operates in both real-time and archival modes, producing standardized data products in the form of gridded fields, tabular summaries, and relational tracking records. Its design emphasizes reproducibility, extensibility, and consistency, allowing new analysis methods and data sources to be integrated without altering core workflows.
Currently it ingests NEXRAD Level-II data, performs gridding, segmentation, and analysis, and writes results for downstream visualization and scientific workflows.
AWS S3 (NEXRAD Level-II)
│
▼
Downloader
│ raw files
▼
Processor
├─ Ingest (Py-ART + xarray → Cartesian grid)
├─ Detection (threshold + morphology → cell labels)
├─ Projection (optical flow → future cell positions)
├─ Analysis (per-cell statistics)
└─ Tracking (stable cell identities across scans)
│
▼
Output repository (NetCDF + Parquet + SQLite)
│
▼
Dashboard (live Tkinter GUI)
Create a fresh conda environment (Python 3.13) and install from PyPI:
conda create -n adapt_env python=3.13 -y
conda activate adapt_env
pip install arm-adapt
adapt --help# Run real-time processing on a NEXRAD radar
adapt run-nexrad --radar KLOT --base-dir ~/adapt_output
# Open the dashboard in a second terminal
adapt dashboard --repo ~/adapt_output- Status: Alpha — provided for early testing and evaluation.
- No backward compatibility is guaranteed for code, APIs, configuration, or generated data products (SQLite, Parquet, NetCDF) until the first stable release.
Adapt is supported by the U.S. Department of Energy as part of the Atmospheric Radiation Measurement (ARM) User Facility within the Office of Science.
Copyright © 2026, UChicago Argonne, LLC. See the LICENSE file for terms and disclaimer.