pySTEPS

Runs pySTEPS radar precipitation nowcasting pipelines with staged tools, diagnostics, and validation.

155|6|Updated Mar 31, 2026
One-click install
npx skills add https://github.com/lzwei196/KISS-Knowledge-Infrastructure-for-Scientific-Simulation --skill pysteps-lzwei196
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pySTEPS
Source: https://github.com/lzwei196/KISS-Knowledge-Infrastructure-for-Scientific-Simulation/tree/main/models/pySTEPS
Command: npx skills add https://github.com/lzwei196/KISS-Knowledge-Infrastructure-for-Scientific-Simulation --skill pysteps-lzwei196

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pysteps, numpy, and includes scripts (resource) and references (resource) components.

What problem does it solve? Running the pySTEPS precipitation nowcasting library correctly requires operational expertise: converting radar reflectivity to rainfall rates, estimating optical-flow motion fields, configuring ensemble parameters, and verifying forecast skill. This Skill packages that expertise so an AI agent can execute, check, and debug real pySTEPS nowcast workflows without substituting approximations. ## Core Features & Use Cases - Five-stage executable pipeline: import radar data, estimate motion fields, run extrapolation/STEPS/ANVIL nowcasts, verify against held-out frames, and export results to NetCDF, GeoTIFF, or CSV. - Diagnostic recovery system: 20 symptom-diagnosis-remedy triplets covering unit mismatches, NaN propagation, memory limits, and projection errors, plus a preflight check that validates the environment before any run. - Validated synthetic test case: an analytical advection benchmark with known ground truth reporting CSI, POD, FAR, and FSS scores against cited literature conventions. - Use Case: Ask the agent to nowcast the next hour of rainfall from a sequence of OPERA radar frames; it converts dBZ to mm/h, estimates the motion field, runs the ensemble nowcast, and scores the result per lead time. ## Quick Start Run the preflight check and synthetic advection diagnostic in this Skill's directory to verify the pySTEPS environment and produce a validated nowcast with skill scores.

Frequently Asked Questions about pySTEPS

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run a pySTEPS precipitation nowcast from radar data?

Import radar frames with the format-specific importer, convert reflectivity to mm/h, estimate the motion field with optical flow, then call the nowcast method such as extrapolation or STEPS. This Skill's staged tools in tools/s1 through s5 walk through each step.

How do I convert radar reflectivity dBZ to rainfall rate for pySTEPS?

Apply the Marshall-Palmer Z-R relation R = (10^(dBZ/10) / 200)^(1/1.6) before nowcasting. Feeding dBZ directly into pySTEPS nowcast routines produces chaotic motion vectors and inflated rainfall values.

What nowcasting methods does pySTEPS support?

pySTEPS supports extrapolation, S-PROG, STEPS, SSEPS, ANVIL, and LINDA, selected via nowcasts.interface.get_method. STEPS produces stochastic ensembles while S-PROG and extrapolation are deterministic.

Why is my pySTEPS nowcast near zero everywhere?

The input was likely already in linear mm/h but passed through an extra dB transform, collapsing values toward zero. Check metadata['transform'] and remove the redundant transform; mm/h values should range roughly 0 to 100.

Can pySTEPS be validated against river discharge observations?

No, pySTEPS is not a hydrological model and cannot be scored against discharge or water-quality stations. It validates against held-out radar frames or synthetic analytical cases; discharge validation requires a coupled rainfall-runoff chain.

How many ensemble members does a STEPS nowcast need?

Use at least 20 ensemble members for stable exceedance probability estimates; 48 to 100 is recommended for severe-threshold research. Fewer members quantize probabilities and produce sharp 0%/100% maps.