排水管网分区水力计算时间优化方法技术

技术编号:39766532 阅读:11 留言:0更新日期:2023-12-22 02:20
本发明专利技术涉及排水管网技术领域,公开了一种排水管网分区水力计算时间优化方法

【技术实现步骤摘要】
排水管网分区水力计算时间优化方法、装置、设备及介质


[0001]本专利技术涉及排水管网
,具体涉及一种排水管网分区水力计算时间优化方法

装置

设备及介质


技术介绍

[0002]排水管网在进行简化水力计算时,通常采用曼宁公式求解每一管段的流速和流量,采用这种求解方式时,需先对整个管网的管段进行拓扑排序,确定各管段的上下游关系,从管网系统的最上游开始逐个进行求解

[0003]排水管网的拓扑结构是典型的有向无环图
(DAG)
,在水力求解前的拓扑排序中,通常执行
Kahn
算法一次,将整个管网系统中的管段排序为一维向量

[0004]进一步,排水管网的结构除符合有向无环图外,一般情况下其拓扑结构特征为更加严格的树状网络,现有的计算方法将整个排水管网排序为一个序列,未能充分利用排水管网树状分支的特征,进而导致排水管网水力计算时间较长


技术实现思路

[0005]有鉴于此,本专利技术提供了一种排水管网分区水力计算时间优化方法

装置

设备及介质,以解决现有的计算方法将整个排水管网系统排序为一个序列,未能充分利用排水管网树状分支的特征,进而导致排水管网系统水力计算时间较长的问题

[0006]第一方面,本专利技术提供了一种排水管网分区水力计算时间优化方法,该方法包括:
[0007]获取排水管网的最大分区数量和排水管网中每个管段的第一管段总数;基于最大分区数量,利用每个第一管段总数对排水管网进行分区,得到分区目标计算管段队列和非分区目标计算管段队列;基于分区目标计算管段队列和非分区目标计算管段队列,经过预设排序方法处理,得到非分区目标计算管段集合和至少一个分区目标计算管段集合;利用预设处理器线程分别对非分区目标计算管段集合和每个分区目标计算管段集合进行计算,得到优化后的排水管网的水力目标计算时间

[0008]本专利技术提供的排水管网分区水力计算时间优化方法,利用排水管网中本身的树状拓扑结构,对排水管网进行分区与排序,进一步,按照分区与排序后的分区目标计算管段集合和非分区目标计算管段集合进行计算,实现了排水管网水力计算的并行化,同时,利用处理器线程进行并行计算,降低了数值求解时间,进一步,显著降低了整个排水管网的水力计算时间

[0009]在一种可选的实施方式中,获取排水管网的最大分区数量和排水管网中每个管段的第一管段总数,包括:
[0010]获取预设处理器线程的线程数和排水管网中每个管段的第一管段总数;基于线程数确定最大分区数量

[0011]本专利技术利用处理器线程的线程数确定排水管网的最大分支数量,为后续利用处理器线程对排水管网水力进行并行计算提供了支持

[0012]在一种可选的实施方式中,基于最大分区数量,利用每个第一管段总数对排水管网进行分区,得到分区目标计算管段队列和非分区目标计算管段队列,包括:
[0013]获取排水管网的末端节点;基于每个第一管段总数确定排水管网的第二管段总数;以末端节点为初始节点,基于第二管段总数和最大分区数量,利用预设方法对排水管网的每个节点进行遍历与划分,直至得到满足条件的分区目标计算管段队列和非分区目标计算管段队列

[0014]本专利技术利用排水管网中本身的树状拓扑结构,对排水管网进行分区与排序,为后续实现排水管网水力计算的并行化提供了依据

[0015]在一种可选的实施方式中,以末端节点为初始节点,基于第二管段总数和最大分区数量,利用预设方法对排水管网的每个节点进行遍历与划分,直至得到满足条件的分区目标计算管段队列和非分区目标计算管段队列,包括:
[0016]获取分区初始化计算管段队列

非分区初始化计算管段队列和初始化总计算时间;以末端节点为初始节点,判断初始节点的上游是否存在分支;当初始节点的上游存在分支时,将末端节点对应的管段编号存储至分区初始化计算管段队列中,得到第一分区计算管段队列;当初始节点的上游不存在分支时,将节点对应的管段编号存储至非分区初始化计算管段队列中,得到非分区计算管段队列;基于最大分区数量

第二管段总数

第一分区计算管段队和非分区计算管段队列,按照预设方法继续对排水管网的每个节点进行遍历与划分,直至得到满足条件的分区目标计算管段队列和非分区目标计算管段队列

[0017]在一种可选的实施方式中,基于最大分区数量

第二管段总数

第一分区计算管段队和非分区计算管段队列,按照预设方法继续对排水管网的每个节点进行遍历与划分,直至得到满足条件的分区目标计算管段队列和非分区目标计算管段队列,包括:
[0018]获取第一分区计算管段队列中的元素个数,并将元素个数与预设处理器线程的线程数进行比对;当元素个数小于线程数时,利用第二管段总数更新初始化总计算时间,得到第一总计算时间;基于第一分区计算管段队列和非分区计算管段队列获取排水管网的第三管段总数;将第三管段总数与第一总计算时间进行比对;当第三管段总数小于第一总计算时间时,基于初始节点查找下一个遍历节点;基于下一个遍历节点,重复以末端节点为初始节点,判断初始节点的上游是否存在分支的步骤到当第三管段总数小于第一总计算时间时,查找下一个遍历节点的步骤,直至第三管段总数大于第一总计算时间时得到分区目标计算管段队和非分区目标计算管段队列

[0019]在一种可选的实施方式中,获取第一分区计算管段队列中的元素个数,并将元素个数与预设处理器线程的线程数进行比对之后,该方法还包括:
[0020]当元素个数大于线程数时,按照预设规则对第一分区计算管段队列中的管段编号进行合并,使得合并后的第一分区计算管段队列的分区数小于或等于最大分区数量

[0021]在一种可选的实施方式中,基于第一分区计算管段队列和非分区计算管段队列获取排水管网的第三管段总数,包括:
[0022]判断第一分区计算管段队列是否为空队列;当第一分区计算管段队列为空队列时,确定第三管段总数为第一管段总数;当第一分区计算管段队列不为空队列时,按照预设关系式计算第三管段总数

[0023]在一种可选的实施方式中,当第二管段总数小于第一总计算时间时,基于初始节
点查找下一个遍历节点,包括:
[0024]当初始节点的上游不存在分支时,将初始节点对应的上游节点作为下一个遍历节点;当初始节点的上游存在分支时,在初始节点的上游分支中每个管段的第一管段总数中确定最大管段总数;基于最大管段总数确定遍历方向,并基于遍历方向确定下一个遍历节点

[0025]本专利技术按照排水管网中每个管段的管段总数确定遍历方向,可以提高排水管网的分区准确度

[0026]在一种可选的实施方式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种排水管网分区水力计算时间优化方法,其特征在于,所述方法包括:获取排水管网的最大分区数量和排水管网中每个管段的第一管段总数;基于所述最大分区数量,利用每个所述第一管段总数对所述排水管网进行分区,得到分区目标计算管段队列和非分区目标计算管段队列;基于所述分区目标计算管段队列和所述非分区目标计算管段队列,经过预设排序方法处理,得到非分区目标计算管段集合和至少一个分区目标计算管段集合;利用预设处理器线程分别对所述非分区目标计算管段集合和每个所述分区目标计算管段集合进行计算,得到优化后的所述排水管网的水力目标计算时间
。2.
根据权利要求1所述的方法,其特征在于,获取排水管网的最大分区数量和排水管网中每个管段的第一管段总数,包括:获取所述预设处理器线程的线程数和所述排水管网中每个管段的所述第一管段总数;基于所述线程数确定所述最大分区数量
。3.
根据权利要求1所述的方法,其特征在于,基于所述最大分区数量,利用每个所述第一管段总数对所述排水管网进行分区,得到分区目标计算管段队列和非分区目标计算管段队列,包括:获取所述排水管网的末端节点;基于每个所述第一管段总数确定所述排水管网的第二管段总数;以所述末端节点为初始节点,基于所述第二管段总数和所述最大分区数量,利用预设方法对所述排水管网的每个节点进行遍历与划分,直至得到满足条件的所述分区目标计算管段队列和所述非分区目标计算管段队列
。4.
根据权利要求3所述的方法,其特征在于,以所述末端节点为初始节点,基于所述第二管段总数和所述最大分区数量,利用预设方法对所述排水管网的每个节点进行遍历与划分,直至得到满足条件的所述分区目标计算管段队列和所述非分区目标计算管段队列,包括:获取分区初始化计算管段队列

非分区初始化计算管段队列和初始化总计算时间;以所述末端节点为初始节点,判断所述初始节点的上游是否存在分支;当所述初始节点的上游存在分支时,将所述末端节点对应的管段编号存储至所述分区初始化计算管段队列中,得到第一分区计算管段队列;当所述初始节点的上游不存在分支时,将所述节点对应的管段编号存储至所述非分区初始化计算管段队列中,得到非分区计算管段队列;基于所述最大分区数量

所述第二管段总数

所述第一分区计算管段队和所述非分区计算管段队列,按照所述预设方法继续对所述排水管网的每个节点进行遍历与划分,直至得到满足条件的所述分区目标计算管段队列和所述非分区目标计算管段队列
。5.
根据权利要求4所述的方法,其特征在于,基于所述最大分区数量

所述第二管段总数

所述第一分区计算管段队和所述非分区计算管段队列,按照所述预设方法继续对所述排水管网的每个节点进行遍历与划分,直至得到满足条件的所述分区目标计算管段队列和所述非分区目标计算管段队列,包括:获取所述第一分区计算管段队列中的元素个数,并将所述元素个数与所述预设处理器线程的线程数进行比对;
当所述元素个数小于所述线程数时,利用所述第二管段总数更新所述初始化总计算时间,得到第一总计算时间;基于所述第一分区计算管段队列和所述非分区计算管段队列获取所述排水管网的第三管段总数;将所述第三管段总数与所述第一总计算时间进行比对;当所述第三管段总数小于所述第一总计算时间时,基于所述初始节点查找下一个遍历节点;基于下一个遍历节点,重复以所述末端节点为初始节点,判断所述初始节点的上游是否存在分支的步骤到当所述第三管段总数小于所述第一总计算时间时,查找下一个遍历节点的步骤,直至所述第三管段总数大于所述第一总计算时间时得到所述分区目标计算管段队和所述非分区目标计算管段队列
。6.
根据权利要求5所述的方法,其特征在于,获取所述第一分区计算管段队列中的元素个数,并将所述元素个数与所述预设处理器线程的线程数进行比对之后,所述方法还包括:当所述元素个数大于所述线程数时,按照预设规则对所述第一分区计算...

【专利技术属性】
技术研发人员:贾泽宇李玮唐洋博陈宇枫余涛管梦林李翀吴一帆谢向向柳蒙蒙
申请(专利权)人:中国长江三峡集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1