做过水力建模的朋友,对 EPANET 肯定不陌生。画图、调参数、跑平差,是我们日常的基操。
但你有没有想过,如果管网“生病”了呢?
爆管、地震、大面积停电、甚至污染入侵……这些突发灾害发生时,传统的“设计工况”模拟就显得有些力不从心了。
这时候,我们需要回答的是更具挑战性的问题:
这就是韧性(Resilience)分析的范畴。而今天我们要聊的主角——WNTR,正是为此而生的 Python 神器。
WNTR 全称 *Water Network Tool for Resilience*,由美国 EPA 与桑迪亚国家实验室联手打造。
它不是要替代 EPANET,而是给 EPANET 装上了一个“灾害视角”。
它的核心优势很简单:

WNTR 最强大的地方在于它内置了一套“防灾减灾”工具箱:
依托 Python 的 NetworkX 库,WNTR 能瞬间找出管网里的“关键割边”。简单说,就是哪根管子一旦断了,整个片区就会瘫痪。这种拓扑层面的洞察,是传统软件很难给出的。
它不仅能模拟灾害,还能模拟“恢复”。你可以设定不同的修复策略,通过对比“韧性三角”曲线,找到最科学的应急预案。
想知道哪条管道最关键?在 WNTR 里,你只需要一个循环:
# 遍历主干管,逐一模拟关闭效果for pipe in major_pipes: wn.get_link(pipe).status = 'Closed' # 关闭管道 results = sim.run_sim() # 运行模拟 wsa = calculate_wsa(results) # 计算水服务可达性不再是枯燥的点击,而是用代码在“调兵遣将”。
很多同学会问:我该选 WNTR 还是 EPyT?
我的建议很简单:
供水系统的未来,不仅仅是“保障供水”,更是“韧性供水”。
WNTR 的价值,在于它将我们从繁琐的操作中解放出来,去思考那些真正关乎系统安全的大问题。
🎁 宠粉福利时间:
我整理了一份《WNTR 中文使用手册》,包含:



🎁 领取方式: 关注公众号【别催憨八龟】,后台回复关键词【009WNTR手册】,即可获取全套资源! 同时,别忘了星标本公众号,即将奉上!

吐血总结:水力模型搭建实战48个避坑指南 + 6大官方权威教程合集
吐血总结:EPANET 二次开发常见 100 个 Bug 排查与解决手册
整理了150个EPANET管网模型,做供水管网研究的同学直接拿去用
