4. 局部敏感性分析方法与实操
局部敏感性分析回答的是一个非常具体的问题:在当前这组基准参数附近,把某一个参数稍微动一下,模型输出会变化多少?它不考察参数在整个取值范围内的大幅变动,也不考虑参数之间的联合作用,因此计算量小、结果直观,是地下水模型参数筛选和初步诊断最常用的手段。本节围绕四种实现方式展开:一次一因子法(OAT)、扰动法、直接求导法和有限差分灵敏度计算,并说明它们在典型地下水模型中的落地步骤与结果解读。
一、灵敏度的数学定义与参照约定
设模型输出为 y,待分析参数为 pi,基准值为 pi0。局部灵敏度最常用的定义是偏导数:
S_i = ∂y/∂p_i |_(p=p0)
由于不同参数量纲差异极大(渗透系数单位 m/d,给水度无量纲,补给量 mm/a),直接比较偏导数没有意义,因此实际工作中更常用无量纲相对灵敏度:
S_i^rel = (Δy / y0) / (Δp_i / p_i0)
它表示参数变化 1% 时输出变化百分之几。本文约定:参数增大时输出增大,灵敏度为正;参数增大时输出减小,灵敏度为负。所有图示与算例均遵循这一符号约定。若输出本身可能为零或负值(如水头为负标高),相对灵敏度需改用绝对值基准或改用绝对灵敏度,这一点必须在报告中写明。
二、四种方法的实现逻辑
一次一因子法(OAT)是最基础的方案:固定其余参数在基准值,逐个改变单个参数,记录输出。它的优点是实现简单、结果可解释;缺点是忽略了参数交互,且结果依赖基准点的选取。实操中通常对每个参数取基准值的 ±10% 或 ±20% 两个扰动水平,形成“参数—输出”对照表。
扰动法可以看作 OAT 的工程化实现:不追求解析导数,而是直接对参数施加一个小扰动 δ,用 (y(p+δ) − y(p))/δ 近似导数。关键在于 δ 的选取——太小会被模型数值误差淹没,太大则引入非线性偏差。经验做法是取参数基准值的 1%~5%,并做一次 δ 减半检验:若两次结果相差小于 5%,认为 δ 合适。
直接求导法适用于输出对参数有解析表达的情形,例如一维稳定流中定水头边界下的解析解,或简单均衡模型中的水量平衡方程。此时可对公式直接求偏导得到灵敏度,结果精确、无截断误差,但对复杂数值模型(如 MODFLOW 有限差分模型)通常不可行。
有限差分灵敏度计算是数值模型中最通用的方法,本质是用差分商代替导数:
前向差分:S_i ≈ [y(p_i + Δp_i) − y(p_i)] / Δp_i
中心差分:S_i ≈ [y(p_i + Δp_i) − y(p_i − Δp_i)] / (2Δp_i)
中心差分精度更高(二阶),但每个参数需要两次模型运行;前向差分只需一次。对于参数个数为 n 的模型,OAT 加中心差分的总运行次数约为 2n+1(含基准运行)。这正是局部方法相对全局方法(如 Sobol 分析需成千上万次运行)的最大优势。
三、在典型地下水模型中的实现步骤
以一个二维承压含水层稳定流模型为例(示例设定,非实测):模型 50×50 网格,两侧定水头边界,中间一口抽水井,输出为井位处水位降深 s。待分析参数包括渗透系数 K(基准 10 m/d)、给水度 Sy(0.15,稳定流下不参与)、补给量 R(0.5 mm/d)和边界水头 H(30 m)。稳定流条件下给水度不影响结果,这本身就是一个应先通过敏感性排序发现的事实。
实操流程可归纳为:
- 确定输出指标与基准运行:明确 y 是降深、水头还是均衡项,运行基准模型得到 y₀,并保存为对照基准。
- 设定扰动幅度:对每个参数取 ±10%,即 K 取 9 和 11 m/d,R 取 0.45 和 0.55 mm/d,H 取 27 和 33 m。记录每次运行的输出。
- 计算灵敏度:用中心差分计算绝对灵敏度,再换算为相对灵敏度,填入灵敏度表。
- 排序与判断:按 |S_rel| 排序,识别主导参数;对 |S_rel| 很小的参数,考虑固定取值以降低后续反演维度。
- 扰动幅度复核:将 Δp 减半重算,若灵敏度变化超过 5%,说明基准点附近非线性较强,应缩小扰动幅度或改用更小步长。
假设示例计算结果为:K 的相对灵敏度约 −0.62,R 约 +0.35,H 约 +0.08。负号表示 K 增大时降深减小(渗透性越好,井位水位下降越少),符合物理直觉;R 增大补给增强,降深减小应为负,此处若出现正号则需检查补给项符号约定是否与模型输入一致——这类符号异常往往是输入方向错误的早期信号。
四、结果解读与常见陷阱
解读灵敏度结果时,首先要区分绝对灵敏度与相对灵敏度:前者用于同一参数不同工况间的比较,后者用于不同参数之间的横向排序。其次要警惕三个陷阱:其一,基准点选择偏差,若基准值本身远离真实值,局部灵敏度可能严重失真;其二,扰动幅度不当,过小导致数值噪声主导,过大引入非线性;其三,忽略参数相关性,OAT 结果不能直接外推到多参数同时变化的情形。
局部敏感性分析的价值不在于给出精确的方差贡献,而在于以极低的计算成本快速识别“哪些参数值得花力气”。它是后续全局敏感性分析和参数反演的前置筛选步骤,也是模型校准时判断“调哪个参数最有效”的直接依据。