供水管网漏损治理里,"哪里在漏"是最贵的一问:漏点埋在地下,全网逐段开挖排查不现实。本次汇报讲一个用在线压力监测缩小排查范围的方法——压力指纹法,围绕三个问题展开:
方法链条上每个数字都可溯源:全程用一张 6 节点教学演示网算到底,所有中间量(阻力系数、流量分配、压降、相关系数、概率)都摆在页面上,专家可以拿计算器抽验任何一格。
| 章 | 内容 | 回答什么 | 节 |
|---|---|---|---|
| A | 问题定义 | 定位环节在漏损治理链条里的位置;输入输出的数学形式 | §3–4 |
| B | 演示网与水力学 | 6 节点演示网全参数;从 Hazen-Williams 一根管,推到有漏工况 16 条方程的联立解 | §5–9 |
| C | 指纹库 | 什么是漏损"指纹";7×6 指纹表怎么来、怎么读;为什么只用压力 | §10–12 |
| D | 匹配算法 | 残差 → 去均值 Pearson → softmax 全链手算;live 演示一;平局的含义 | §13–18 |
| E | 精度与自由度 | M 块表只有 M−1 维;哪些候选天生分不开;P0 盲区 | §19–21 |
| F | 装表决策 | 表数 6→1 的性能阶梯(live Monte Carlo);三个拐点;第 4 块表加哪 | §22–25 |
| G | 边界与结论 | 方法的诚实边界;四条结论;备查问答 | §26–28 |
推导链环环相扣但每节自足:赶时间可以只走 A → C → D(§17) → F(§23) → G 的演示主线,B 章水力学推导供质询时回溯。
漏损治理的完整链条是一条逐级收窄的漏斗,每级用的物理量和设备都不同:
压力和流量在这条漏斗里分工明确、互不替代:
| 流量(总表对账) | 压力(多点模式) | |
|---|---|---|
| 回答的问题 | 有没有漏、漏多少(发现) | 漏在哪根管(定位) |
| 信息形态 | 一个总量,无空间分布 | 压降的空间分布,位置信息的载体 |
| 设备经济性 | 流量计贵,只装进出口边界 | 压力表便宜,可铺在管网内部 |
| 盲区 | 定不了位(边界只有总量) | 总管类均匀降压漏损(§21) |
所以"为什么定位只用压力不用流量"的第一层答案是分工:流量已经在①把"有漏"确认了,②要的是空间信息,而空间信息只在密布的压力表上。更深一层的物理答案在 §12。
把定位问题写成算式,输入输出都很小:
为什么输出是概率排名,不是一个坐标?三个原因:
方法全链只有四步:建指纹库(离线一次)→ 算残差 → 去均值 Pearson 匹配 → softmax 概率。往下 B、C、D 三章把每一步的数字算到底。
| 管 | 连接 | 长 L (m) | 径 D (m) | R(m/(m³/s)1.852) |
|---|---|---|---|---|
| P0 | 水厂–J1(总管) | 150 | 0.30 | 111.4 |
| P1 | J1–J2 | 250 | 0.25 | 451.5 |
| P2 | J2–J3 | 400 | 0.20 | 2 141.8 |
| P3 | J3–J4 | 200 | 0.15 | 4 348.4 |
| P4 | J4–J5 | 500 | 0.15 | 10 871 |
| P5 | J5–J6 | 300 | 0.20 | 1 606.4 |
| P6 | J6–J1 | 180 | 0.25 | 325.0 |
选这张小网做全程算例,是刻意的:它小到每个数字都能手算跟仿真对账(B 章会当场对),又大到具备真实管网的关键结构——环状供水(水能绕两条路走)、管径差异、总管与末梢的区别。方法在这张网上讲清了,规模放大只是把矩阵变大,链条一步不变。
整个方法只依赖一条水力学经验公式。水在管里流动要跟管壁摩擦,能量沿程消耗,表现为水头(= 压力,本网高程全 0)一路变小。一根管消耗的水头叫沿程损失 h,自来水行业用 Hazen-Williams 公式:
拿总管 P0 从头算一遍(L=150 m,D=0.30 m,C=100;水库 40 m;全网用水 0.024 m³/s 全部经它进网):
| 步 | 算式 | 结果 |
|---|---|---|
| ① | R = 10.667 × 100⁻¹·⁸⁵² × 0.30⁻⁴·⁸⁷¹ × 150 = 10.667 × 0.0001977 × 352.3 × 150 | R = 111.4 |
| ② | h = 111.4 × 0.024¹·⁸⁵² = 111.4 × 0.001000 | h = 0.111 m |
| ③ | H(J1) = 40 − 0.111 | 39.889 m |
三步之外没有别的了——J1 处压力表就该读 39.889 m。感受一下非线性:用水翻倍到 0.048 m³/s,损失变 111.4 × 0.0481.852 = 0.402 m,是 0.111 m 的 3.61 倍而不是 2 倍。这个非线性决定了整网方程组没有解析解,只能迭代(§9)。
再加一条常识就够用了——节点守恒:节点不存水,任一时刻"流进 = 流出 + 该点用户用掉"。一条公式一条常识,就是全部水力学。
没漏水时全网什么状态?未知数 = 6 个节点水头 + 7 根管流量 = 13 个。三步吃掉:
| 试 q (m³/s) | 上路合计 (m) | 下路合计 (m) | 判断 |
|---|---|---|---|
| 0.008 | 0.137 | 0.694 | 上路损失小太多 → 水还会往上路挤 → q 应更大 |
| 0.012 | 0.563 | 0.101 | 挤过头 → q 应更小 |
| 0.010 | 0.297 | 0.297 | 两路相等 ✓(精确根 0.0099975,手算取 0.010) |
流量全知道了,从水库 40 m 沿管逐段减损失(每行就是 §6 的三步):
| 求谁 | 路径 | h 代入式 | 手算 H (m) | 仿真值 (m) |
|---|---|---|---|---|
| J1 | 40 − h([email protected]) | 111.4×0.001000 = 0.111 | 39.889 | 39.8885 |
| J2 | J1 − h([email protected]) | 451.5×0.000198 = 0.089 | 39.800 | 39.7993 |
| J3 | J2 − h([email protected]) | 2141.8×0.0000768 = 0.164 | 39.636 | 39.6350 |
| J6 | J1 − h([email protected]) | 325.0×0.000198 = 0.064 | 39.825 | 39.8242 |
| J5 | J6 − h([email protected]) | 1606.4×0.0000768 = 0.123 | 39.702 | 39.7008 |
| J4 | J5 − h([email protected]) | 10871×0.0000100 = 0.109 | 39.593 | 39.5915 |
手算与仿真最大差 0.002 m,全部来自展示舍入(q 取 0.010 而非 0.0099975、每行 h 只留 3 位);取满精度重走这条链,六个节点四位小数逐位等于仿真值——手算和仿真解的是同一套方程,模型没有黑箱。带走一行数,三块表(J1/J3/J5)看到的基线:
模型里的管是一条线,线上没法直接开洞,所以做小手术(代码里叫 split_pipe):把管从中点劈成两半,劈点生成一个虚拟节点 LEAK,洞开在它身上。以 P5(J5–J6,300 m)为例:
洞往外喷多少水?托里拆利结论——孔口喷速 = 从"压力水头那么高"自由落体的末速度 v = √(2gp),流量 = 速度 × 面积 × 折减系数:
P5 开洞后,未知数变 16 个:7 个节点水头(含 HLEAK)+ 8 根管流量(P5 劈成两段)+ 1 个漏量。方程恰好 16 条:7 条节点守恒 + 8 条管道能量(§6 公式)+ 1 条漏口方程(§8),恰好封闭。非线性来自 1.852 次方和开根号,没有解析解——仿真里用 Newton 迭代(跟 §7 的"试算逼近"是同一件事的机器版)。收敛解的关键数字:
| 量 | 值 | 读出什么 |
|---|---|---|
| 漏量 Qleak | 0.02063 m³/s | ≈ 全网正常用水 0.024 的 86%——教学上故意开的大洞,信号明显 |
| 漏点压力 HLEAK | 38.5529 m | 代回洞方程验证:√(19.62×38.5529)=27.50 m/s(喷速≈99 km/h),0.75×0.001×27.50=0.02063 ✓ 漏量确实是从压力算出来的 |
| 总管流量 QP0 | 0.04463 m³/s | = 0.024 + 0.02063:水厂多供出漏掉的份;总管损失从 0.111 涨到 0.352 m |
| P5 段流向 | 0.00178(J5→LEAK) | 远路的水掉头倒流反向给洞送水(基线里本是 J6→J5)——流向不是设定的,是解出来的 |
16 条方程逐条代回全部闭合(能量方程 ±0.0003 m 零头为表值舍入)。把漏后压力与 §7 基线逐节点相减,得到本章的最终产物——压降向量 Δp:
| J1 | J2 | J3 | J4 | J5 | J6 | |
|---|---|---|---|---|---|---|
| 基线 (m) | 39.889 | 39.799 | 39.635 | 39.592 | 39.701 | 39.824 |
| P5 漏后 (m) | 39.648 | 39.477 | 39.036 | 38.679 | 38.546 | 39.260 |
| Δp (m) | 0.240 | 0.322 | 0.599 | 0.913 | 1.154 | 0.564 |
规律一眼可见:离洞越近降得越多(洞在 J5–J6 之间,J5 降 1.154 m 最狠;J1 挨着水厂只降 0.240 m)。压降的这种空间分布模式,就是下一章说的"指纹"。
§9 对 P5 干的事——注漏、解方程、跟基线相减得 Δp 行——对每根候选管重复一遍,把 7 行 Δp 摞成一张矩阵,就是指纹库:
三个工程属性值得强调:
读这张表读出三条规律,后面全部结论都从它长出来:
§3 从分工角度回答了"为什么只用压力";这里给物理层面的答案,质询时更硬。
漏水这件事在管网里的完整因果链是:洞出现 → 管段流量重新分配(水厂多供、各管流量按阻力重新分摊、有的管甚至倒流,§9 的流量列全看到了)→ 每根管流量变了,沿程损失 h=R·Q1.852 就变了 → 各节点水头跟着变。也就是说:
反过来问:直接测流量不是更直接吗?两个现实障碍——流量计贵一个量级以上,密布不经济;而装在边界的流量计只有总量(§3 表),总量只回答"漏多少",永远回答不了"漏在哪"。压力表便宜、可密布,密布才有空间分辨率。
所以本法的信息路径是:流量重分配(真相)→ 压力场变化(影子)→ 指纹匹配(从影子反推真相的位置)。D 章讲怎么从影子反推。
现在切换到在线时刻:P5 真的漏了(我们假装不知道),三块表传回读数。第一步把读数变成残差——基线减实测:
| 表 | 基线 (m)(§7) | 实测 (m)(§9 收敛解) | 残差 r = 基线 − 实测 (m) |
|---|---|---|---|
| J1 | 39.889 | 39.648 | 0.240 |
| J3 | 39.635 | 39.036 | 0.599 |
| J5 | 39.701 | 38.546 | 1.154 |
接下来的问题就一句话:指纹库 7 行里,哪行长得最像 r?注意 r 恰好就是 §11 表里 P5 那行的 J1/J3/J5 三列——零噪声下真值行跟残差是同一个向量,这是自洽性的基本检验;匹配算法的任务是把这个"最像"量化成分数,并给其余 6 行也打出分。
最朴素的想法是拿 r 跟每行算夹角余弦(cosine 相似度),谁大谁像。这样做会失败:漏水让三块表全都在降(r 三个分量全正),指纹库每行也全正——所有向量都朝着"全降"这个大方向,谁跟谁的余弦都 >0.95,全体"很像",等于没比。信号处理里这叫共模分量淹没差模分量。
解法是先去均值:把"大家都在降"的公共部分减掉,只留"谁比平均多降、谁比平均少降"的相对模式:
去均值的第二重红利是尺度不变:漏口变大,r 整体近似等比放大,去均值再归一后方向不变——所以匹配不需要预知漏口大小,一套指纹库对付各种规模的漏(§10 第二条工程属性的算法侧保障)。代价也在这一步埋下:去均值吃掉一个自由度,M 块表只剩 M−1 维(§19 细算这笔账)。
指纹库每行 Si 同样去均值(记 S̃i),跟 r̃ 算夹角余弦——这个量在统计里就叫 Pearson 相关系数:
拿 P6 这行完整手算一遍(挑它是因为结果最出人意料,计算器可全程跟):
| 步 | 算式 | 结果 |
|---|---|---|
| ① | P6 指纹(J1/J3/J5 列)= [0.243, 0.306, 0.420],均值 0.323,去均值 | S̃P6 = [−0.080, −0.017, +0.097] |
| ② | 点积 = (−0.080)(−0.424) + (−0.017)(−0.066) + (0.097)(0.490) = 0.0339 + 0.0011 + 0.0475 | 0.0826 |
| ③ | ‖S̃P6‖ = √(0.080²+0.017²+0.097²) = 0.1267;‖r̃‖ = √(0.424²+0.066²+0.490²) = 0.6514 | 0.1267 × 0.6514 |
| ④ | score = 0.0826 ÷ (0.1267 × 0.6514) | ≈ 0.999 |
注意这个 0.999:P6 根本没漏,它跟残差的相关竟然接近满分。原因是 P6 的去均值方向("J1 少降、J5 多降")跟真凶 P5 几乎同款,只差幅度——而幅度恰恰被尺度不变性抹掉了。这不是算错,是三块表视角下两根管物理上就长一样,§18、§19 把这件事的后果和根源讲透。
七根管全部算完(去均值指纹、Pearson、e8·score、softmax 概率,一列不落——05 卡手算口径,中间量保留 3 位小数):
| 管 | 去均值指纹 S̃ (m) | Pearson | e8·score | softmax 概率 |
|---|---|---|---|---|
| P0 | [0, 0, 0] ← 平指纹归零 | ~0 ⁽*⁾ | 1.1 | 0.0% |
| P1 | [−0.097, +0.134, −0.037] | +0.126 | 2.7 | 0.0% |
| P2 | [−0.495, +0.712, −0.217] | +0.098 | 2.2 | 0.0% |
| P3 | [−0.689, +0.855, −0.166] | +0.215 | 5.6 | 0.1% |
| P4 | [−0.624, +0.335, +0.289] | +0.772 | 479.7 | 7.5% |
| P5 | [−0.424, −0.066, +0.490] | +1.000 | 2981.0 | 46.4% |
| P6 | [−0.080, −0.017, +0.097] | +0.999 | 2958.7 | 46.0% |
| Σ = 6431 | 100% |
三个读表点:P5 满分 1.000——零噪声下真值行跟残差就是同一向量,理所应当;P2/P3 直接出局——它们的签名是"J3 比平均多降",跟 r 的"J3 略少降"方向拧着,匹配真的在看模式方向;⁽*⁾P0 的 Pearson 严格说无定义(零向量没有方向),代码分母加 1e-12 除零保护后输出浮点残渣,工程上当 0——总管漏对本方法彻底隐身。
下面把 §13–§16 的整条链做成活的:左图点任意管道 = 该管漏水(零噪声理想工况),右侧实时跑完整匹配(残差 → 去均值 Pearson → softmax)。切装表方案,看同一处漏、不同表数下"指认能力"的差别——每次点击,右边概率条都是当场重算的,不是预存的图片。
3 表下 P5 真漏,输出 46.3% : 46.0%。两种读法,差别巨大:
把两根管的去均值指纹并排放(06 卡 §1),平局的物理一目了然:
| 去均值指纹(J1/J3/J5,m) | 方向读出来 | |
|---|---|---|
| P5 | [−0.424, −0.066, +0.490] | "J1 少降、J5 多降" |
| P6 | [−0.080, −0.017, +0.097] | "J1 少降、J5 多降"——同款方向,只差幅度 |
两方向 Pearson = 0.9991。物理原因:P5(J5–J6)和 P6(J6–J1)都挂在环的左下角,从三块表的视角看,它俩漏水激起的相对模式几乎一样,而幅度差异恰被尺度不变性抹掉。三块表物理上就分不开它俩,46:46 是诚实的输出——这正是 §4 说"输出必须带置信度"的活例证:概率排名把"我不确定"如实说了出来,一个只报坐标的黑箱在这里会假装自信。为什么恰恰是三块表分不开、加哪块表能分开?这是下一章自由度的账。
§14 的去均值不是免费的:M 个读数减掉公共均值后,分量之和恒等于 0——向量被压进一个 M−1 维子空间。这笔账决定了方法的信息上限:
| 表数 M | 去均值后维度 M−1 | 几何图景 |
|---|---|---|
| 3 | 2 | 7 根管的指纹方向挤在一张 2 维平面上——必然有人挤在一起 |
| 2 | 1 | 只剩一条数轴,每个指纹退化成一个比值("J1 和 J5 谁多降") |
| 1 | 0 | 一个数减自身均值恒为 0,残差成零向量——数学上恒失明,不是"更模糊" |
本网 3 表 = 2 维平面要摆 7 个方向,挤出的重合不止一对(§20 的明细表会看到是两组)。撞上的 P5/P6 就是 §18 的平局。这个账同时给出破局思路:加表 = 升维,把挤在一起的方向撑开。§18 平局里 P5、P6 的差异藏在 J6 列(指纹表 §11:0.564 vs 0.452 m),而 J6 恰好没装表——装上,指纹从 3 维变 4 维,新维度上两根管一个 −0.075、一个 +0.096(一负一正,方向劈开),Pearson 从 0.9991 掉到 0.657,输出从 46:46 变成 P5 独占 83.4%。维度不够,算法再花哨也分不开共线的候选;这是信息论限制,不是算法缺陷。
把 7 根管逐一设为真漏,零噪声下看 top-1 置信度和领先幅度(3 表 vs 6 表全装,07 卡 §4):
| 真漏 | 3 表基准(J1/J3/J5) | 6 表全装 |
|---|---|---|
| P0 | 14.3%(0.0 pp,失明) | 14.3%(0.0 pp,失明) |
| P1 | 32.5%(0.1 pp) | 85.9%(74.9 pp) |
| P2 | 32.9%(0.1 pp) | 53.1%(22.6 pp) |
| P3 | 32.3%(1.1 pp) | 44.8%(17.3 pp) |
| P4 | 59.4%(48.6 pp) | 52.5%(20.2 pp) |
| P5 | 46.3%(0.3 pp) | 83.3%(74.6 pp) |
| P6 | 47.0%(0.3 pp) | 92.6%(85.4 pp) |
重要发现:3 表下打平的不止 P5/P6——上路 P1/P2/P3 是三胞胎,彼此领先只有 0.1 pp。2 维平面挤 7 个方向,挤出的重合同时发生在两组候选身上。这张明细表也是 §25"第 4 块表加哪"的决策输入:加表方案的取舍,本质是在"拆 P5/P6"和"拆上路三胞胎"之间分配一个新维度。另外注意 6 表下 P4 的置信反而比 3 表低(52.5 < 59.4)——置信度是相对量,加表改变的是所有候选间的相对几何,个别工况的显示置信可以降,但命中能力(§23 的噪声命中率)不降。
指纹表里 P0(总管)那行是平的:六个节点均匀各降 0.123 m。均匀降压去均值后成零向量——没有空间模式可供任何匹配算法区分。这不是算法缺陷,是信息论上的必然:总管站在水源与全网之间,它漏水等于"全网水源水头集体下移",每个节点感受完全一样,装多少块压力表都一样失明。
兜底手段回到漏斗第①级:总管漏水虽然在压力"模式"上隐身,在流量"总账"上却无处遁形——水厂供水量激增而各分区计量没有对应增长,DMA 夜间最小流量分析立刻暴露。所以完整的漏损监测方案必然是两条腿:
| 漏损类型 | 压力指纹法 | 流量对账(DMA) |
|---|---|---|
| 支管/环内管漏(有空间模式) | ✔ 定位到管 | ✔ 发现有漏,定不了位 |
| 总管类均匀降压漏 | ✘ 结构性失明 | ✔ 总账立刻暴露 |
两法覆盖的盲区恰好互补——这也是"压力定位 + 流量发现"作为组合拳而非二选一的根本理由(结论 §27 第 4 条)。
前面所有分析都指向同一个工程问题:装几块表够用?回答它需要一个干净的对照实验。设计如下(每个要素都有明确理由):
| 实验要素 | 设定 | 为什么这么设 |
|---|---|---|
| 指纹库 | §11 的 7×6 表,全程不变 | 仿真时 6 个节点压降全算出来了;"装几块表"= 匹配时遮住几列。变量唯一,归因干净 |
| 匹配算法 | 去均值 Pearson + softmax β=8,与 §15–16 一字不差 | 算法不变,性能差异全部归因于表数/表位 |
| 噪声 | 每个监测值叠 N(0, σ=0.02 m) | ±2 cm 是常规在线压力表的精度量级;不加噪声的命中率会虚高(平局也算"命中") |
| 试验量 | 每工况 500 次独立加噪 | 500 次的二项波动约 ±2 pp,足以分辨档位间的真差异 |
| 加表序列 | 嵌套:J5 ⊂ J1/J5 ⊂ J1/J3/J5(基准) ⊂ +J6 ⊂ +J2 ⊂ +J4 | 逐档只动一块表,曲线上每一段落差都能归因到"这一块" |
| 统计口径 | top-1 / top-3 命中率,除 P0(真漏取 P1–P6) | P0 任何表数下恒失明(§21),混进来只会给所有档位垫一个常数损失,模糊对比 |
指标读法:top-1 = 第一嫌疑就是真凶的比例;top-3 = 真凶进前三的比例——对应漏斗第③级"沿前三根管听漏"的实际工作量。pp = 百分点,两个百分数相减的绝对差。
下面的数字不是预存的:点"现场跑",浏览器当场对 6 档表数 × 6 个真漏工况 × 500 次加噪试验做完整匹配统计(共 18 000 次反演),随机数种子显示在旁边,换一批随机数重跑,结果应在参考值 ±3 pp 内复现——这就是"数字不是编的"的现场证据。
固定 3 表基准,第 4 块表的三种加法(全部机算;07 卡 §3):
| 方案 | 真漏 P5:置信 / 领先 | 噪声 top-1(除P0) | 拆开了谁 | 没拆开谁 |
|---|---|---|---|---|
| +J6 | 83.4% / 72.6 pp | 81.6% | P5/P6(0.3 pp → 72.6 pp) | 上路 P1/P2/P3 仍挤 |
| +J2 | 45.0% / 0.3 pp | 88.5% | 上路三胞胎 | P5/P6 仍掷硬币 |
| +J4 | 50.3% / 4.6 pp | 87.5% | 上路三胞胎(部分) | P5/P6 基本仍混 |
三个方案给出三种截然不同的性格:+J6 专治 P5/P6(§19 讲过的那个新维度),但对上路三胞胎帮不上;+J2 的平均命中率反而最高(88.5%),可 P5/P6 照样掷硬币;+J4 居中両不沾。没有免费的万能第 4 块——同样花一块表的钱,加对位置与加错位置,对目标混淆对是 72.6 pp 与 4.6 pp 的天壤之别。
这就把装表点位优化的正确顺序钉死了:先仿真找出易混淆管对(§20 那张明细表)→ 按"要拆开谁"定点位,而不是按几何均匀撒点。目标函数必须先想清楚:全网平均命中优先选 +J2,重点保护某片区(比如那里管材老化、漏损高发)选拆开该片区混淆对的点位。
附一个反直觉细节:5 表的 P5 置信 78.7% 反而低于 4 表的 83.4%——加一块对该工况没信息的表(J2)会稀释置信度的显示对比度,但不降命中(§23 表里 5 表 top-1 100%)。置信度是相对量,别拿它单独当性能指标;决策看命中率。
方法什么时候失效,判据是信噪比。本演示的漏很大(0.02063 m³/s ≈ 全网正常用水的 86%),最大压降信号 1.15 m ≫ 噪声 σ=0.02 m,所以 3 表也有 70% 命中。漏口越小、离监测点越远,信号越弱;当指纹幅值跌到与噪声同量级,分数整体坍平、top-1 退向纯猜。这不改变方法的定位——它本来就是漏斗中段的缩小范围工具(top-K 清单 + 现场确认),不是一锤定音的仪器。
β 是把"分数差"放大成"概率差"的显示旋钮,单调变换不改排序——top-1 是谁、命中率多少与 β 无关。本例 P5 与 P4 分差 0.23,经 e8×0.23 ≈ 6.3 倍放大呈现 46% : 7.5%;β 取 2 会显得"大家都差不多",取 20 会假装斩钉截铁。8 是演示的展示取值;工程上若要输出校准概率,β 应由历史验证数据标定。
匹配用去均值 Pearson,只看压降空间形状不看幅值(§14 尺度不变);漏口变大,各监测点压降近似等比放大,形状不变,一套库通吃。这个近似在大漏显著激活 PDA 折减区时开始失真,属已知边界(§26)。
漏损是耦合问题:漏水压降 → 压降抑制漏量和用水量 → 反过来又影响压力,直到平衡。PDA 把实际出水量写成压力的函数(Wagner 三段式,§8),这个反馈闭环只有 PDA 能表达。漏量不是输入——你给的只有漏口几何(A、Cd),漏多少由漏点压力经孔口方程在联立求解中自己出来(§9 的 0.02063 m³/s 代回洞方程逐位闭合)。
分两层。系统层面不需要:本网无水池/水塔,没有储存性状态量,描述它的是代数方程组不是微分方程,不存在"t=0 状态"。求解器层面需要但自带:Newton 迭代的出发点由软件内置(水头=高程、管流量=0.001 m³/s 等),只影响收敛快慢、不影响收敛到哪——解由方程组本身唯一确定,§7/§9 的手工验证就是证明。
漏斗第③级的实际动作是"沿嫌疑管逐根听漏"。top-3 = 100% 意味着按清单前三根排查必然抓到真凶——排查工作量从 7 根封顶到 3 根。3 表方案 top-1 只有 70.5% 但 top-3 已 100%(§23),所以"3 块表够不够"的答案取决于你接受的排查工作量:接受查三根,够;要求一击即中,上 4 块。
不变的:四步链条(建库→残差→去均值 Pearson→softmax)、自由度账(M 块表 M−1 维)、"先找混淆对再定表位"的点位逻辑、P0 型盲区与流量对账互补的结构。变的:候选集从 7 根管变成按管段/分区划分的 N 个候选(矩阵变大);指纹库须在标定过的管网模型上重建;混淆对结构由实际拓扑决定,须重新仿真识别;噪声口径按实际表精度与需水波动标定。方法论完整迁移,数字全部重算。
汇报完毕。两处 live 演示(§17、§23)可在质询环节当场重跑;全部中间数字可拿计算器抽验(§6、§7、§15 的算式都在页面上)。