
Claude Skills by lzwei196
github.com/lzwei196**Package**: `hydrocraft-parflow` v1.2.0 **Model**: ParFlow v3.13+ (LLNL / Colorado School of Mines / Juelich) **Created by**: Jianyun Zhang Research Group, Hohai University **Last updated**: 2026-03-22 **Status**: **PRODUCTION VALIDATED** (Bengbu basin, real CMFD forcing, physically plausible discharge) **Stats**: 12 tools | 9 skill documents | 36 diagnostic triplets (12 validated) | 14 error log entries | 3,144 lines of validated Python ---
Define the 3D computational domain covering the basin in a UTM-projected Cartesian grid. This is the foundation for all subsequent stages -- every ParFlow file (subsurface, slopes, forcing, mask) must match the grid dimensions exactly.
Assign spatially distributed hydraulic properties (permeability, porosity, van Genuchten parameters, Manning's n) to every grid cell. These control how water moves through the subsurface and over the surface.
Compute slope_x and slope_y from DEM for overland flow routing. ParFlow uses these slopes with Manning's equation to route surface water.
Configure CLM 4.5 as the upper boundary condition. CLM provides evapotranspiration, snow, canopy interception, and radiation balance.
Convert CMFD/MSWX forcing to ParFlow/CLM PFB format with correct units.
Set the initial pressure head field and boundary conditions. The initial condition determines how quickly the simulation reaches physical equilibrium.
Configure the ParFlow solver (Richards equation, Newton-Krylov, preconditioner) and generate the run script.
Run ParFlow, monitor convergence via kinsol.log, and validate output files.
Extract hydrological variables from ParFlow PFB output and convert to standard formats.
| Field | Value | |------------------|--------------------------------------------------------------| | **Model** | PorePy v1.12.0 | | **Domain** | Fractured porous media simulation (subsurface flow, poromechanics) | | **Language** | Python 3.10+ | | **Build** | pip install (setuptools) ...
**Package**: hydrocraft-pyaez-crop v1.0.0 **Stats**: 5 tools | 6 skill documents | 15+ diagnostic triplets | 6 pipeline stages
**Package**: `pyDeltaRCM-ki` v1.0.0 **Model**: pyDeltaRCM v2.2.0 — Reduced-Complexity Delta Model **Domain**: Geomorphology / Delta Evolution / Sediment Transport **Authors**: Andrew J. Moodie, Jayaram Hariharan, Eric Barefoot, Paola Passalacqua **Paper**: Moodie et al. (2021), JOSS, 6(64), 3398 **Last updated**: 2026-03-26 **Stats**: 4 tools | 5 skill documents | 15+ diagnostic triplets **Validation status**: `tested` (default delta, 5 timesteps) ---
```yaml package: name: pymt-ki version: 1.0.0 target_model: PyMT (Python Modeling Toolkit) model_version: 1.3.3.dev0 domain: earth-surface-dynamics / model-coupling-framework language: python authors: [CSDMS team, mcflugen@gmail.com] license: MIT validation_status: tested ``` ---
> PySWMM — Python Wrapper for EPA SWMM5 Stormwater Management Model > Domain: Urban hydrology / stormwater management > Engine: EPA SWMM 5.1.14–5.2.4 via swmm-toolkit > Language: Python 3.10–3.12 ---
**Package**: `pywr-knowledge-infrastructure` v1.0.0 **Model**: Pywr 1.30.0 (Python Water Resources Framework) **Domain**: Reservoir operations, water resources management, flood control, water supply **Role in HydroCraft**: Fills the reservoir operations gap — couples with VIC (inflow), CaMa-Flood (regulated routing), DSSAT (irrigation demand), DLBreach (dam-break trigger) ---
**Package**: `kdt-quincy` v1.0.0 **Model**: QUINCY (Thum et al. 2019, GMD) **Domain**: Terrestrial biogeochemistry (coupled C-N-P cycling) **Created by**: KDT Auto-Dissection **Last updated**: 2026-03-30 **Stats**: 4 tools | 1 skill document | ~1,800 lines of validated Python **Validation status**: `real-data` (FI-Hyy Hyytiala, FLUXNET2015 monthly) ---
**Package**: hydrocraft-rapid-routing **Version**: 1.0.0 **Model**: RAPID (Routing Application for Parallel computatIon of Discharge) **Domain**: River network routing **Language**: Fortran 90 + PETSc **Tools**: 5 | **Skill Documents**: 6 | **Diagnostic Triplets**: 20 ---
**Package**: hydrocraft-rapid-routing **Version**: 1.0.0 **Model**: RAPID (Routing Application for Parallel computatIon of Discharge) **Domain**: River network routing **Language**: Fortran 90 + PETSc **Tools**: 5 | **Skill Documents**: 6 | **Diagnostic Triplets**: 20 ---
**Package:** `rhessys-ki` v1.0.0 **Model:** RHESSys (Regional Hydro-Ecologic Simulation System) v7.4 / 5.14.3 **Domain:** Hydrology, Ecohydrology, Biogeochemistry **Language:** C (501 source files) **Build:** GNU Make **Last Updated:** 2026-03-25 | Metric | Value | |--------|-------| | Tools | 4 | | Skill Documents | 5 | | Diagnostic Triplets | 20 | | Validation Status | HJ Andrews Watershed 8 | ---
**Target Model:** ROMS v4.1 (Regional Ocean Modeling System) **Domain:** Ocean hydrodynamics, coastal/estuarine modeling **Developers:** Rutgers University — H. Arango, A. Shchepetkin, J. Warner **License:** MIT/X style **Repository:** https://github.com/myroms/roms ---
python tools/s7_scenario_assembly/initialize_scenario.py \ /path/to/new_project bengbu_wheat <new_site_name> \ <start_date> <end_date> python tools/s8_execution/run_rzwqm2.py <scenario_dir> <binary_path> ``` **For mass/batch runs**, use `tools/s10_mass_generation/mass_project_generator.py` which automates this entire copy-then-update pipeline for a CSV of sites. ``` KISSPATH_HOME/RZWQM2/RZWQM2/linux/main_ryzen_patched ``` The binary is also copied into each scenario directory by the temp...
Retrieve crop management parameters from five global geospatial datasets and write them into RZWQM2's `RZWQM.dat` management sections. This closes the gap where management events (planting dates, fertilizer amounts, harvest dates, irrigation mode) were previously inherited verbatim from template scenarios, enabling truly data-driven mass project generation.
**Stage:** s1_site_config **Pipeline Order:** 1 **Depends On:** None **Tool:** `write_site_properties` ---
**Stage:** s2_met_prep **Pipeline Order:** 2 **Depends On:** None (independent of site config, but needed before breakpoint generation) **Tools:** `generate_met_file`, `met_quality_check` ---
**Stage:** s3_brk_generation **Pipeline Order:** 3 **Depends On:** s2_met_prep (requires a completed .met file with daily precipitation data) **Tool:** `create_breakpoint_file` ---
**Stage:** s4_soil_setup **Pipeline Order:** 4 **Depends On:** s1_site_config **Tools:** `soil_texture_classification`, `pedotransfer_hydraulic`, `write_soil_properties` ---
**Stage:** s5_node_discretization **Pipeline Order:** 5 **Depends On:** s4_soil_setup (requires horizon depths to be set in RZWQM.dat) **Tool:** `generate_nodes` ---
**Stage:** s6_initial_conditions **Pipeline Order:** 6 **Depends On:** s4_soil_setup (horizon count and depths must match RZWQM.dat) **Tool:** `write_initial_conditions` ---
**Stage:** s7_scenario_assembly **Pipeline Order:** 7 **Depends On:** s2_met_prep, s3_brk_generation, s4_soil_setup, s5_node_discretization, s6_initial_conditions **Tools:** `initialize_scenario`, `update_ipnames_paths`, `update_rzx_paths` ---
**Stage:** s8_execution **Pipeline Order:** 8 **Depends On:** s7_scenario_assembly (complete, validated scenario directory) **Tool:** `run_rzwqm2` ---
**Stage:** s9_result_parsing **Pipeline Order:** 9 **Depends On:** s8_execution (model must have completed successfully, producing output files) **Tools:** `parse_ana_output`, `parse_layer_output` ---
**Package**: `hydrocraft-raven` v1.0.0 **Model**: Raven v4.1 (University of Waterloo, Prof. James Craig) **Created by**: Jianyun Zhang Research Group, Hohai University **Last updated**: 2026-03-21 **Stats**: 11 tools | 7 skill documents | 28 diagnostic triplets | 9 error log entries | ~4,500 lines of validated Python **Validation Status**: `production_validated` -- Full HydroCraft data run on Bengbu basin (118,358 km2, CMFD 224 cells, 2000-2005) ---
Compare Raven output with VIC output for the same basin, and optionally couple Raven with CaMa-Flood for routing. The primary use case is quantifying **structural uncertainty** by comparing independent model results.
Choose the right Raven emulation template for a basin. Wrong choice produces plausible but suboptimal results (e.g., no snow process in a snow basin). This stage determines the entire model structure.
Generate the Raven .rvh file defining subbasins and HRUs (Hydrologic Response Units). The .rvh file is the spatial foundation — it defines where and how water moves through the basin.
Convert CMFD, MSWX, or VIC forcing data into Raven .rvt format with correct units. **This is the single most critical stage in the entire Raven pipeline.** Raven explicitly states: "Raven ignores units and will not do units conversion." Every unit error produces a silent failure — the model runs fine with completely wrong results.
Run multiple Raven model structures on the same basin with identical forcing and compare results. This quantifies **structural uncertainty** — how much hydrological predictions depend on model choice. This is Raven's unique capability within HydroCraft.
Optimize model parameters using DDS (Dynamically Dimensioned Search) to match observed discharge. Calibrate ONLY the best-performing template from the ensemble comparison.
**Package**: `hydrocraft-ribasim` v1.0.0 **Model**: Ribasim 2026.1.0-rc2 (Deltares) **Domain**: Water resources / regional surface water management **Created by**: HydroCraft Auto-Dissect **Last updated**: 2026-03-26 **Stats**: 4 tools | 5 skill documents | 18 diagnostic triplets **Validation status**: `prototype` ---
**Package**: `hydrocraft-sfincs` v1.0.0 **Model**: SFINCS v2.x (Deltares) **Created by**: Jianyun Zhang Research Group, Hohai University **Last updated**: 2026-03-22 **Stats**: 9 tools | 8 skill documents | 28 diagnostic triplets | 12 error log entries | ~2,379 lines of validated Python **Validation**: Step 3 — Bengbu (Huai River) flood test (2026-03-22) — 384x455 cells, 100m, 397s, 6.99m max depth, CaMa-Flood cross-validated. Previous: Chaohe (2026-03-21) — 174x171 cells, 5.7s, 7.29m max dep...
Define the SFINCS computational grid from a basin shapefile or bounding box. This stage determines the spatial extent, resolution, and coordinate reference system for the entire simulation. All subsequent stages depend on the grid definition.
Build SFINCS topography (sfincs.dep), active cell mask (sfincs.msk), and index (sfincs.ind) files from a DEM. The quality of flood simulation depends critically on DEM accuracy and vertical datum consistency.
Generate spatially varying Manning's n roughness coefficient from land use/land cover data. Manning's n controls flow velocity and is the primary calibration parameter for SFINCS.
Prepare all forcing inputs for SFINCS: precipitation (rainfall), river discharge boundaries (from CaMa-Flood), and optionally tidal/surge boundaries for coastal domains. This is the most error-prone stage due to **unit conversions**.
Add thin dams (levees, embankments), weirs, and drainage structures to the SFINCS model. This stage is OPTIONAL — only needed for domains with significant hydraulic infrastructure that affects flood routing.
Generate the main SFINCS configuration file (sfincs.inp) with all simulation parameters. The most critical parameter is the computational timestep `dt`, which must satisfy the CFL stability condition.
Execute the SFINCS binary with preflight validation, log monitoring, and output verification. SFINCS is a Fortran binary that reads from the current working directory.
Extract flood results from SFINCS NetCDF output, compute flood statistics, generate GeoTIFF rasters and publication-quality flood maps.
> **MANDATORY EXECUTION POLICY** — READ BEFORE PROCEEDING > > You MUST run the **actual model binary or package** described in this document. > If the model fails to import, compile, or execute, you MUST: > 1. Check `diagnostics/triplets.yaml` for a matching error pattern > 2. Try the fix suggested in the triplet's `remedy` section > 3. If still failing, report the error to the user with full details > > You MUST NOT substitute a simplified Python formula, regression equation, > or hand-coded ap