# 土壤怎样喝水？

一条经验衰减曲线，与一个向下推进的湿润锋。

专题：降雨到洪水。教学合成算例，待独立专业审稿。

## 入渗能力不是实际入渗

一块干土可以有很大的吸水能力，但如果天上只下很小的雨，它实际喝到的水仍然很少。先记住这个上限：实际入渗不能超过可供水量。把能力曲线直接当成实际入渗，会让模型凭空造水。

矩形降雨持续2小时，无地表蓄水。两条模型分别计算实际累计入渗F事件，径流=P−F事件。Horton取f0=50、fc=10mm/h，k=2/h。每一步取实际率min(i,f)。

## Horton：用曲线描述衰减

Horton方法先描述一个现象：持续湿润时，入渗能力从较高的初值逐渐降低，接近稳定值。初值控制开头，稳定值控制后期，衰减系数控制下降快慢。这是一种经验表达。

本实验fH(t)=10+40exp(−2t)，t以小时计。这里直接以降雨开始后的时间推进；完整SWMM还处理供水不足、干燥恢复等规则，本演示不等同于SWMM实现。EPA SWMM Hydrology Reference Manual 第4章提供Horton方法细节。

## Green–Ampt：追踪湿润锋

换一种思考方式：把土壤分成已经湿润的上层和尚未湿润的下层，中间是一道向下移动的湿润锋。吸力把水向下拉，饱和导水率控制传输能力。湿润锋越深，吸力带来的相对增益就越小。

均质深厚土层，Ks=10mm/h，含水量差Δθ=0.25，ψ默认100mm。能力fGA=Ks[1+ψΔθ/F累计]。设计算起点已有F0=1mm累计入渗；湿润锋深度z=F累计/Δθ，避免零分母。事件入渗是F累计−1。

## 先受雨控制，再受土控制

开始时，能力可能大于雨强，全部雨水都能进入土壤。随着能力下降，雨强超过能力，多出来的水形成地表径流。拖动雨强，观察两个模型的累计曲线什么时候开始分开。

数值积分步长为1/120小时，即30秒，使用步初能力并限制供水。输出每1分钟采样；缩小积分步长验证收敛。此处没有保留地表积水，因此未入渗的部分立即计入径流。

## 参数不是可以随便互换的旋钮

增大湿润锋吸力，Green–Ampt曲线会改变，Horton曲线则保持不动。两个模型都有毫米每小时的量，但参数代表的意义不同。不能把一个模型拟合出的数字，直接塞进另一个模型。

ψ单位mm，Δθ无量纲，ψΔθ/F无量纲；Ks和f单位mm/h。吸力滑块只作用于Green–Ampt。初始湿度、土壤分层、结皮与大孔隙都会影响适用性，均质锐利湿润锋是假设。

## 选方法，也要检查水量

模型可以用经验曲线，也可以用简化机理。重要的是知道各自依靠什么假设，用合适数据确定参数，再检查水量和误差。图中的两条线不是准确性排名，它们是两种不同的解释方式。

参考：HEC-HMS Green and Ampt Loss Model；Horton公式另见 [EPA SWMM Hydrology Reference Manual](https://nepis.epa.gov/Exe/ZyPURL.cgi?Dockey=P100NYRA.TXT)。不模拟停雨后再分配、恢复、地下水顶托或层状土；不可将本例用于场地入渗设计。

## 练习与解释

1. 雨强5mm/h而能力50mm/h时，实际入渗率是？

答案：5。无其他供水时受降雨约束。

2. Green–Ampt中的ψ单位是？

答案：mm。它是湿润锋吸力水头。

3. 初始累计入渗1mm是否属于本场新增入渗？

答案：否，应从总累计量扣除。事件增量必须相对初始状态计算。

## 算例与依据

下载页面上的完整Python算例包，解压后运行 reproduce.py，无需第三方库。模型源为 rainfall_models.py，输出 reference.csv。

[参考资料](https://www.hec.usace.army.mil/confluence/hmsdocs/hmstrm/canopy-surface-infiltration-and-runoff-volume/infiltration/green-and-ampt-loss-model)，查阅日期2026-09-15。公式、参数和实现简化见正文；来源用于机理核对，不代表本算例经过来源机构认可。
