模块 5 · 产流 / 土壤水量平衡 核心

模型的心脏:到达地面的水,多少入渗、多少蒸发(AET)、多少变产流(快 RS / 慢 RI)? 每步闭合:P − AET − RS − RI = ΔW。本页 V3 是 EF5 源码 CRESTModel.cpp 的逐行 Python 直译(已与向量化实现对拍到 3.6e-15)。

概念示意

P net rain AET ≤ PET soil store W (mm), capacity WM RS surface (fast) RI interflow (slow) P − AET − RS − RI = ΔW

交互实验台:案例 × 方法(5 版本可切换、可改代码)

案例 Case(同样的代码,不同的世界)

方法 Version

版本产流机制谁用
V1 bucket蓄满溢流教学最简
V2 HBV-beta蓄满(幂律)HBV (Bergstrom 1976)、本课程
V3 CREST(源码直译)蓄满曲线 + FC(temX) 强度劈分 = 混合CREST/EF5 CREST、VIC、新安江同族
V4 SCS-CN超渗(经验事件法)USDA/SWAT/HEC-HMS
V5 Horton-cap显式超渗(入渗能力上限)Green-Ampt 族(简化)/KINEROS/陕北型 — 干旱正解
土壤水状态 W(t)(% 容量)——模型的"记忆"

CREST 原理 · 可变入渗曲线的几何(可交互,即时重绘)

把一个网格内所有点按容量从小到大排,黑线是容量曲线 i(x) = Wmaxm·[1−(1−x)^(1/B)],其中 Wmaxm = WM(1+B)(保证平均容量=WM)。 当前蓄水 W 对应一条水位线 ACRESTModel.cpp:168);一场雨把水位抬到 A+Psoil曲线左侧(红)=已饱和面积→产流 R:186 的双 pow 公式算的就是这块面积), 右侧(绿)=还能吸→入渗。产流 R 再被 temX=平均湿度×FC:217)劈成慢流(interflow)与快流(overland)。

固定:WM=120mm, pet=2mm, KE=1, IM=0.03(与正文手算实例一致)。观察三件事: ① 土越湿/雨越大 → 红区(产流)越大;② B 越大曲线越下凹 → 干土也有红区(低容量点先饱和); ③ 拖 FC → 快慢劈分变、红区总面积纹丝不动(FC 不改产流量)。

参考结果(lab 实验,可复现)

案例A 湿润 Hesperange(日尺度, 观测径流系数 0.46):CREST 默认参数产流率 48.9% 最接近观测;AET=515 最接近推断 549。

案例B 干旱合成(小时尺度, 44天干旱后 55mm/2h 暴雨打 8% 湿度干土, 观测参考场次RC 15–40%):

方法场次RC(小时)洪峰 mm/h快流%场次RC(聚合成日)
V1 bucket3.1% 漏报0.030%3.0%
V2 HBV-beta8.9%3.877%2.0%
V3 CREST CREST21.4% 入区间6.584%16.8%(峰塌到0.39)
V4 SCS-CN23.8%9.690%44.1% 反升(事件法本为日/场次设计)
V5 Horton-cap78.9%29.099%3.0% 崩溃(强度阈值在日尺度失义)

FC 扫描铁证:FC 0.5→20 mm/h,事件产流量恒 21.4%(量由 VIC 曲线独家决定),快流占比 97%→18%——FC(temX, CRESTModel.cpp:217) 是纯"劈分/尖锐度"旋钮。结论:干旱区"时间步长比模型选择更先决"。

术语 Glossary

蓄满 vs 超渗 · Saturation-excess vs Infiltration-excess
Saturation-excess (Dunne): runoff where soil is full - wetness-controlled. Infiltration-excess (Horton): rain rate exceeds infiltration capacity - intensity-controlled. Arid flash floods are Hortonian; humid gentle rains are Dunnean.
蓄满(Dunne):湿度控制,土满才产流(湿润区)。超渗(Horton):强度控制,雨强超过下渗能力即产流(干旱区山洪)。案例A/B 正是这两个世界。
CREST 的混合机制 · temX 劈分(源码级)
Volume is set by the VIC curve (saturation logic); the split of excess R into interflow vs overland is capped by temX = wetness x FC x dt (CRESTModel.cpp:217). Small FC or dry soil forces R overland - an intensity-sensitive, Horton-like response. FC changes the split, never the volume (verified: event RC constant over FC 0.5-20).
产流量由 VIC 曲线决定(蓄满);R 的快慢劈分被 temX=湿度×FC×dt 封顶(cpp:217)。FC 小或土干 → R 被迫走地表 → 强度敏感的类超渗行为。FC 只改劈分不改总量(实验证实)。
入渗能力 · Infiltration capacity / Φ-index / Green-Ampt
The max rate soil can absorb water (mm/h). Phi-index: constant capacity; Green-Ampt: capacity decays as wetting front advances. Rain above capacity runs off regardless of storage - the lead mechanism in arid models. Intensity thresholds are meaningless at daily dt.
土壤能吸水的最大速率(mm/h)。Φ-index 取常数;Green-Ampt 随湿润锋推进衰减。超过能力的雨不管蓄水多空都成地表流——干旱模型的主机制。注意:强度阈值在日尺度无意义。
场次径流系数 · Event runoff coefficient
Event runoff volume / event rainfall. For flash floods on dry crusted soils, typically 15-40%. A pure storage model on dry soil predicts ~0 - the classic arid failure.
一场暴雨的产流量/雨量。干硬结皮土上的山洪常见 15–40%;纯蓄水逻辑在干土上给出≈0——干旱区经典失效。
data: TU Delft CIE4431 Hesperange + synthetic arid year · anchor: CREST/EF5 (CRESTModel.cpp, parity 3.6e-15)