Claude-skill-registry analyzing-aorc-precipitation
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/analyzing-aorc-precipitation" ~/.claude/skills/majiayu000-claude-skill-registry-analyzing-aorc-precipitation && rm -rf "$T"
skills/data/analyzing-aorc-precipitation/SKILL.md- pip install
Analyzing AORC Precipitation
Purpose: Navigate precipitation workflows for HEC-RAS/HMS models using AORC historical data and Atlas 14 design storms.
This skill is a NAVIGATOR - it points you to the primary sources containing complete workflows and API documentation. For implementation details, always refer to the primary sources below.
Primary Sources (Read These First!)
1. Complete API Reference and Workflows
(329 lines - AUTHORITATIVE SOURCE)ras_commander/precip/CLAUDE.md
Contains:
- Complete module organization (PrecipAorc, StormGenerator)
- Full API reference with all methods
- Step-by-step AORC workflow (retrieval, spatial averaging, temporal aggregation, export)
- Step-by-step Atlas 14 workflow (query, generate, apply ARF, export)
- Multi-event workflows
- Performance characteristics
- Dependencies and installation
THIS IS THE PRIMARY DOCUMENTATION - use it for all detailed questions.
2. AORC Demonstration Notebook
examples/900_aorc_precipitation.ipynb
Live working example showing:
- AORC data retrieval from cloud storage
- Spatial averaging over watersheds
- Temporal aggregation to HEC-RAS intervals
- Export to DSS and CSV formats
- Integration with HEC-RAS unsteady flow files
3. Atlas 14 Single-Project Workflow
examples/720_atlas14_aep_events.ipynb
Complete design storm workflow:
- Query Atlas 14 precipitation frequency values
- Generate SCS Type II temporal distributions
- Apply areal reduction factors
- Create HEC-RAS plans for multiple AEP events
- Batch execution and results processing
4. Atlas 14 Multi-Project Batch Processing
examples/722_atlas14_multi_project.ipynb
Advanced batch processing:
- Process multiple HEC-RAS projects simultaneously
- Standardized AEP suite (10%, 2%, 1%, 0.2%)
- Automated plan creation across projects
- Parallel execution with result consolidation
Quick Start
AORC Historical Data (30 seconds)
from ras_commander.precip import PrecipAorc # Retrieve hourly AORC data for watershed aorc_data = PrecipAorc.retrieve_aorc_data( watershed="02070010", # HUC-8 code or shapefile path start_date="2015-05-01", end_date="2015-05-15" ) # Spatial average over watershed avg_precip = PrecipAorc.spatial_average(aorc_data, watershed) # Aggregate to HEC-RAS interval hourly = PrecipAorc.aggregate_to_interval(avg_precip, interval="1HR") # Export to DSS for HEC-RAS PrecipAorc.export_to_dss( hourly, dss_file="precipitation.dss", pathname="/PROJECT/PRECIP/AORC//1HOUR/OBS/" )
Atlas 14 Design Storm (30 seconds)
from ras_commander.precip import StormGenerator # Get 24-hr, 1% AEP (100-year) precipitation precip = StormGenerator.get_precipitation_frequency( location=(38.9, -77.0), # lat, lon duration_hours=24, aep_percent=1.0 ) # Generate SCS Type II distribution hyetograph = StormGenerator.generate_design_storm( total_precip=precip, duration_hours=24, distribution="SCS_Type_II", interval_minutes=15 ) # Export to HEC-RAS DSS StormGenerator.export_to_dss( hyetograph, dss_file="design_storm.dss", pathname="/PROJECT/PRECIP/DESIGN//15MIN/SYN/" )
When to Use This Skill
Use when you need to:
- Retrieve historical precipitation - AORC data for calibration and validation
- Generate design storms - Atlas 14 AEP events (10%, 2%, 1%, 0.2%, etc.)
- Process precipitation spatially - Watershed averaging, areal reduction factors
- Aggregate precipitation temporally - Match HEC-RAS/HMS timesteps
- Export to HEC-RAS/HMS - DSS files, CSV time series, or direct HDF integration
- Identify storm events - Extract individual storms from AORC record
- Apply temporal distributions - SCS Type II, IA, III for design storms
Core Concepts (Brief)
AORC Dataset
- Coverage: CONUS (1979-present), ~800m hourly resolution
- Format: Cloud-optimized Zarr on AWS S3 (anonymous access)
- Provider: NOAA Office of Water Prediction
- Use Case: Historical calibration, storm event analysis
NOAA Atlas 14
- Coverage: CONUS, Hawaii, Puerto Rico
- Data: Precipitation frequency estimates (depth-duration-frequency)
- Access: NOAA HDSC PFDS API (JSON)
- Use Case: Design storm generation for AEP events
Temporal Distributions
- SCS Type II: Standard for most of US (peak at 12hr of 24hr storm)
- SCS Type IA: Pacific maritime climate (peak at 8hr)
- SCS Type III: Gulf Coast and Florida (peak at 13hr)
Areal Reduction Factors (ARF)
- < 10 sq mi: ARF ≈ 1.0 (use point values)
- 10-100 sq mi: ARF = 0.95-0.98
- > 100 sq mi: ARF < 0.95 (significant reduction)
Common Workflows (High-Level)
Calibration with AORC
- Retrieve AORC for historical storm event
- Apply spatial average over watershed
- Aggregate to model timestep
- Run HEC-RAS/HMS model
- Compare modeled vs observed flow/stage
Details: See
ras_commander/precip/CLAUDE.md "AORC Workflow" section
Design Storm Analysis
- Query Atlas 14 for design AEP
- Generate temporal distribution (SCS Type II)
- Apply areal reduction (if needed)
- Export to HEC-RAS/HMS
- Run model for design event
Details: See
ras_commander/precip/CLAUDE.md "Atlas 14 Workflow" section
Multi-Event Suite
- Define AEP range (50% to 0.2%)
- Loop through events and generate design storms
- Batch run HEC-RAS models
- Generate flood frequency curves
Details: See
examples/104_Atlas14_AEP_Multi_Project.ipynb
API Quick Reference (Navigate to CLAUDE.md for Details)
PrecipAorc Methods
Data Retrieval:
- Download AORC time series for watershedretrieve_aorc_data()
- Query available data years (1979-present)get_available_years()
- Verify spatial and temporal coveragecheck_data_coverage()
Spatial Processing:
- Calculate areal average over watershedspatial_average()
- Extract data for HUC or custom polygonextract_by_watershed()
- Aggregate AORC grid cells to coarser resolutionresample_grid()
Temporal Processing:
- Aggregate to HEC-RAS/HMS intervals (1HR, 6HR, 1DAY)aggregate_to_interval()
- Identify and extract individual storm eventsextract_storm_events()
- Compute N-hour rolling precipitation totalscalculate_rolling_totals()
Output Formats:
- DSS format for HEC-RAS/HMSexport_to_dss()
- CSV time series for HEC-HMSto_csv()
- NetCDF for further analysisto_netcdf()
StormGenerator Methods
Design Storm Creation:
- Create Atlas 14 design storm hyetographgenerate_design_storm()
- Query Atlas 14 point precipitation valuesget_precipitation_frequency()
- Apply standard temporal patterns (SCS Type II, etc.)apply_temporal_distribution()
Spatial Processing:
- Apply ARF for large watershedsapply_areal_reduction()
- Interpolate Atlas 14 values to gridinterpolate_point_values()
- Spatially distributed design stormsgenerate_multi_point_storms()
Output Formats:
- HEC-RAS DSS precipitationexport_to_dss()
- HEC-HMS precipitation gage fileexport_to_hms_gage()
- Tabular hyetograph (CSV)to_csv()
Full method signatures and parameters: See
ras_commander/precip/CLAUDE.md
Example Patterns
AORC Storm Catalog Generation
from ras_commander.precip import PrecipAorc from ras_commander import init_ras_project from ras_commander.hdf import HdfProject # Initialize project ras = init_ras_project("path/to/project", "6.6") # Get project bounds from geometry HDF geom_hdf = ras.project_folder / f"{ras.project_name}.g09.hdf" bounds = HdfProject.get_project_bounds_latlon( geom_hdf, buffer_percent=50.0 # 50% buffer ensures full coverage ) # Generate storm catalog catalog = PrecipAorc.get_storm_catalog( bounds=bounds, year=2020, inter_event_hours=8.0, # USGS standard for storm separation min_depth_inches=0.75, # Minimum significant precipitation buffer_hours=48 # Simulation warmup buffer ) # Returns DataFrame with: # storm_id, start_time, end_time, sim_start, sim_end, # total_depth_in, peak_intensity_in_hr, duration_hours, rank
Complete workflow: See
examples/900_aorc_precipitation.ipynb
Atlas 14 Multi-Event Suite
from ras_commander.precip import StormGenerator # Define AEP suite aep_events = [10, 4, 2, 1, 0.5, 0.2] # 10%, 4%, 2%, 1%, 0.5%, 0.2% for aep in aep_events: # Query Atlas 14 precip = StormGenerator.get_precipitation_frequency( location=(38.9, -77.0), duration_hours=24, aep_percent=aep ) # Generate design storm hyetograph = StormGenerator.generate_design_storm( total_precip=precip, duration_hours=24, distribution="SCS_Type_II" ) # Export to DSS dss_file = f"design_storm_{aep}pct.dss" StormGenerator.export_to_dss(hyetograph, dss_file)
Complete multi-project workflow: See
examples/722_atlas14_multi_project.ipynb
Dependencies
Required:
- pandas (time series handling)
- numpy (numerical operations)
- xarray (for AORC NetCDF data)
- requests (Atlas 14 API access)
Optional:
- geopandas (spatial operations on watersheds)
- rasterio (AORC grid processing)
Installation:
pip install ras-commander[precip] # Includes all precipitation dependencies # OR pip install xarray rasterio geopandas
Navigation Map
When you need...
API Documentation
→ Read
ras_commander/precip/CLAUDE.md (329 lines, complete API reference)
AORC Workflow Example
→ Open
examples/900_aorc_precipitation.ipynb (live working code)
Atlas 14 Single Project
→ Open
examples/720_atlas14_aep_events.ipynb
Atlas 14 Multi-Project Batch
→ Open
examples/722_atlas14_multi_project.ipynb
Method Signatures and Parameters
→ Read
ras_commander/precip/CLAUDE.md "Module Organization" section
Use Cases and Performance
→ Read
ras_commander/precip/CLAUDE.md "Common Use Cases" and "Performance" sections
Data Source Details
→ Read
ras_commander/precip/CLAUDE.md "Data Sources" section
Key Design Principles
- Primary Sources First: Always refer to
for authoritative API detailsras_commander/precip/CLAUDE.md - Example Notebooks as References: Use notebooks to understand workflows in practice
- No Duplication: This skill does NOT duplicate workflows - it NAVIGATES to them
- Multi-Level Verifiability: All outputs reviewable in HEC-RAS/HMS GUI
- Lazy Loading: Optional dependencies only loaded when needed
Performance Notes (Brief)
AORC Data Retrieval:
- Speed: ~1-5 minutes per year of hourly data
- Storage: ~10-50 MB per year (hourly, single watershed)
- Caching: Local cache recommended for repeated analyses
Atlas 14 Queries:
- Speed: < 5 seconds per query (API access)
- Rate Limiting: NOAA PFDS has request limits (respect usage guidelines)
- Caching: Automatic caching of API responses
Details: See
ras_commander/precip/CLAUDE.md "Performance" section
See Also
Within Repository:
- Complete precipitation API reference (PRIMARY SOURCE)ras_commander/precip/CLAUDE.md
- Parent library contextras_commander/CLAUDE.md
- DSS file operationsras_commander/dss/AGENTS.md
- AORC demonstrationexamples/900_aorc_precipitation.ipynb
- Atlas 14 single projectexamples/720_atlas14_aep_events.ipynb
- Atlas 14 multi-projectexamples/722_atlas14_multi_project.ipynb
Related Components:
- Unsteady flow file managementras_commander.RasUnsteady
- DSS file operationsras_commander.dss.RasDss
- Spatial data handling patterns.claude/rules/python/path-handling.md
Usage Pattern
- Understand the workflow: Read
for complete detailsras_commander/precip/CLAUDE.md - See it in action: Open relevant example notebook (
,examples/24_*.ipynb
, etc.)examples/103_*.ipynb - Implement: Copy patterns from notebook, adapt to your project
- Verify: Check outputs in HEC-RAS/HMS GUI
This skill is a lightweight index - detailed content lives in primary sources.