本发明涉及三维环状管网水力计算,特别涉及一种三维管网初始流量分配方法、系统、存储介质及电子设备。
背景技术:
1、针对管网进行水力数学仿真和计算,是管网优化的重要手段,为计算管网中各项流体指标(尤其是流量),基于环路闭合差的原理,对环路中各管道中初始流量进行修正,以使闭合差等于零或使其收敛在规定的允许范围内,是目前主要计算手段。因此确定各管道初始流量,并保证每一节点流量之和(即流入节点与流出节点的流量之和)等于零,成为开展环路管网仿真计算的前提。
2、目前,对于二维管网流量初始化已有很多成熟的研究,然而针对三维管网初始流量分配的研究还处于探索阶段,三维管网相比于二维管网更加复杂,管网环路形式多样难以确定,不仅有平面环路,还有处于三维空间的立体环路,再者流量的方向也难以确定,从而导致管网流量初始化难度大大增加,当前的管网流量初始化方法仅局限于二维,无法解决三维上的技术难题,本发明旨在为解决三维管网结构中的初始流量分配问题给出了一种快速有效的方法。
技术实现思路
1、针对现有技术的不足,本发明的目的在于提供一种三维管网初始流量分配方法,旨在解决现有技术中当前的管网流量初始化方法仅局限于二维,无法解决三维上的技术难题的技术问题。
2、为了实现上述目的,本发明是通过如下技术方案来实现的:
3、一种三维管网初始流量分配方法,包括如下步骤:
4、构建三维管网,并找出所述三维管网的所有交点,根据交点编号规律对所述三维管网的每个交点进行编号,其中最小编号为流量输入点、最大编号为流量输出点;
5、根据所述三维管网交点之间的连通情况构建交点关系矩阵;
6、利用所述交点关系矩阵根据交点编号从小到大的顺序进行流量预分配,以得出管段流量矩阵和管段流量方向矩阵,进而建立数学模型;
7、找出所述三维管网中所有的待校正交点,根据步长规律确定所述待校正交点的校正顺序;
8、根据流量再分配规律对预分配后的流量进行校正,以计算出最终的管段初始流量。
9、进一步的,所述利用所述交点关系矩阵根据交点编号从小到大的顺序进行流量预分配,以得出管段流量矩阵和管段流量方向矩阵,进而建立数学模型的具体步骤包括:
10、向所述流量输入点输入起始流量,并将所述流量输入点作为起始交点,根据所述交点关系矩阵获取与所述起始交点管道相连通的邻近交点s、并将其作为第一邻近交点,其中所述第一邻近交点的交点编号大于所述起始交点的交点编号;
11、将所述起始交点处的所述起始流量平均分配给所有所述第一邻近交点与所述起始交点间构成的管段,每根所述管段的流量为/s;
12、更新所述起始交点,以只有输入流量且还未进行流量分配的编号最小的交点作为新的起始交点继续分配流量,直至所有交点全部分配完毕;
13、当更新的所述起始交点处不存在分支管段时,则继续分配,直至下一起始交点处出现分支管段;
14、其中,在每进行一次分配流量的同时,都将管段的流量值记录在所述管段流量矩阵中,将管段流量方向记录在所述管段流量方向矩阵中。
15、进一步的, 将所述交点关系矩阵表示为 q1( i, j, x), 将所述管段流量矩阵表示为q2( i, j, y),将所述管段流量方向矩阵表示为q3( i, j, z);
16、其中 i和 j均表示三维管网的交点,且由交点 i向交点 j分配流量;
17、当交点 i和交点 j之间管道连通时, x=1,否则 x=0;
18、 y表示交点 i流向交点 j管段中的流量;
19、当交点 i流向交点 j的管段具有流量时 z=1,否则 z=0。
20、进一步的,所述找出所述三维管网中所有的待校正交点,根据步长规律确定所述待校正交点的校正顺序的具体步骤包括:
21、根据所述管段流量方向矩阵,当交点 i对应的所有交点 j均为0时,则该交点为待校正交点;
22、计算每个所述待校正交点到所述流量输出点的最小步长;
23、根据步长从大到小的优先顺序对各所述待校正交点进行校正,若多个所述待校正交点的步长相等,则任选一个优先校正。
24、进一步的,所述计算每个所述待校正交点到所述流量输出点的最小步长的具体步骤包括:
25、建立树状图,并将所述待校正交点放置在所述树状图的第一层;
26、根据所述交点关系矩阵找到所述待校正交点的邻近交点并放置在所述树状图的第二层;
27、以此类推,直至所述流量输出点出现在所述树状图中;
28、将出现所述流量输出点的树状图的层数-1即为步长。
29、进一步的,所述根据流量再分配规律对预分配后的流量进行校正,以计算出最终的管段初始流量的具体步骤包括:
30、找出步长最大的所述待校正交点的邻近交点、并将其作为第二邻近交点,并计算所述第二邻近交点到所述流量输出点的步长,选择步长最小的所述第二邻近交点作为取反交点;
31、以所述取反交点作为起始交点根据流量再分配规律对所述三维管网预分配后的流量进行校正;
32、根据如上步骤,以步长由大到小的顺序依次对每个所述待校正交点进行流量再分配,得到最终的管段初始流量,使所述三维管网中每个交点的流入流量等于流出流量;
33、其中,所述流量再分配规律为:
34、根据所述管段流量矩阵和所述管段流量方向矩阵计算所述取反交点的流量;
35、根据所述交点关系矩阵找出与所述取反交点管道相连的邻近交点、并将其作为第三邻近交点;
36、将所述取反交点处的流量平均分配至所有所述第三邻近交点与所述取反交点间构成的管段;
37、更新所述取反交点,根据如上步骤继续分配流量,直至所有流出管段全部分配完毕;
38、在流量再分配过程中,流量只往不与本次所述待校正交点产生干涉、回流的流出管段进行流量分配。
39、进一步的,计算所述取反交点流量的公式为:
40、
41、式中,表示取反后的取反交点的流量,表示取反前流入所述待校正交点的流量,表示取反前所述取反交点流入所述待校正交点的流量;
42、计算所述流出管段分配到的流量的公式为:
43、
44、式中,表示所述流出管段分配到的流量,表示取反前流入所述取反交点的流量,表示取反后所述待校正交点流入所述取反交点的流量,表示所述取反交点流向接下来不进行流量分配的所述流出管段的流量, a表示接下来要分配流量的所述流出管段数量。
45、本发明还提供一种三维管网初始流量分配系统,包括:
46、编号模块:用于构建三维管网,并找出所述三维管网的所有交点,根据交点编号规律对所述三维管网的每个交点进行编号,其中最小编号为流量输入点、最大编号为流量输出点;
47、第一构建模块:用于根据所述三维管网交点之间的连通情况构建交点关系矩阵;
48、分配模块:用于利用所述交点关系矩阵根据交点编号从小到大的顺序进行流量预分配;
49、所述分配模块具体用于:
50、向所述流量输入点输入起始流量,并将所述流量输入点作为起始交点,根据所述交点关系矩阵获取与所述起始交点管道相连通的邻近交点s、并将其作为第一邻近交点,其中所述第一邻近交点的交点编号大于所述起始交点的交点编号;
51、将所述起始交点处的所述起始流量平均分配给所有所述第一邻近交点与所述起始交点间构成的管段,每根所述管段的流量为/s;
52、更新所述起始交点,以只有输入流量且还未进行流量分配的编号最小的交点作为新的起始交点继续分配流量,直至所有交点全部分配完毕;
53、当更新的所述起始交点处不存在分支管段时,则继续分配,直至下一起始交点处出现分支管段;
54、第二构建模块:用于得出管段流量矩阵和管段流量方向矩阵;
55、所述第二构建模块具体用于:
56、在每进行一次分配流量的同时,都将管段的流量值记录在所述管段流量矩阵中,将管段流量方向记录在所述管段流量方向矩阵中;
57、将所述交点关系矩阵表示为 q1( i, j, x), 将所述管段流量矩阵表示为q2( i, j, y),将所述管段流量方向矩阵表示为q3( i, j, z);
58、其中 i和 j均表示三维管网的交点,且由交点 i向交点 j分配流量;
59、当交点 i和交点 j之间管道连通时, x=1,否则 x=0;
60、 y表示交点 i流向交点 j管段中的流量;
61、当交点 i流向交点 j的管段具有流量时 z=1,否则 z=0;
62、查询模块:用于找出所述三维管网中所有的待校正交点,根据步长规律确定所述待校正交点的校正顺序;
63、所述查询模块具体用于:
64、根据所述管段流量方向矩阵,当交点 i对应的所有交点 j均为0时,则该交点为待校正交点;
65、计算每个所述待校正交点到所述流量输出点的最小步长;
66、根据步长从大到小的优先顺序对各所述待校正交点进行校正,若多个所述待校正交点的步长相等,则任选一个优先校正;
67、所述计算每个所述待校正交点到所述流量输出点的最小步长的具体步骤包括:
68、建立树状图,并将所述待校正交点放置在所述树状图的第一层;
69、根据所述交点关系矩阵找到所述待校正交点的邻近交点并放置在所述树状图的第二层;
70、以此类推,直至所述流量输出点出现在所述树状图中;
71、将出现所述流量输出点的树状图的层数-1即为步长;
72、校正模块:用于根据流量再分配规律对预分配后的流量进行校正,以计算出最终的管段初始流量;
73、所述校正模块具体用于:
74、找出步长最大的所述待校正交点的邻近交点、并将其作为第二邻近交点,并计算所述第二邻近交点到所述流量输出点的步长,选择步长最小的所述第二邻近交点作为取反交点;
75、以所述取反交点作为起始交点根据流量再分配规律对所述三维管网预分配后的流量进行校正;
76、根据如上步骤,以步长由大到小的顺序依次对每个所述待校正交点进行流量再分配,得到最终的管段初始流量,使所述三维管网中每个交点的流入流量等于流出流量;
77、其中,所述流量再分配规律为:
78、根据所述管段流量矩阵和所述管段流量方向矩阵计算所述取反交点的流量;
79、根据所述交点关系矩阵找出与所述取反交点管道相连的邻近交点、并将其作为第三邻近交点;
80、将所述取反交点处的流量平均分配至所有所述第三邻近交点与所述取反交点间构成的管段;
81、更新所述取反交点,根据如上步骤继续分配流量,直至所有流出管段全部分配完毕;
82、在流量再分配过程中,流量只往不与本次所述待校正交点产生干涉、回流的流出管段进行流量分配;
83、计算所述取反交点流量的公式为:
84、
85、式中,表示取反后的取反交点的流量,表示取反前流入所述待校正交点的流量,表示取反前所述取反交点流入所述待校正交点的流量;
86、计算所述流出管段分配到的流量的公式为:
87、
88、式中,表示所述流出管段分配到的流量,表示取反前流入所述取反交点的流量,表示取反后所述待校正交点流入所述取反交点的流量,表示所述取反交点流向接下来不进行流量分配的所述流出管段的流量, a表示接下来要分配流量的所述流出管段数量。
89、本发明还提供一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如上所述的三维管网初始流量分配方法。
90、本发明还提供一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述的三维管网初始流量分配方法。
91、与现有技术相比,本发明的有益效果在于:
92、首先通过预设规律对三维管网的所有交点进行编号,并根据编号构建交点关系矩阵,然后通过交点关系矩阵进行流量预分配,并建立管段流量矩阵和管段流量方向矩阵,接着找出待校正交点,并根据流量再分配规律对预分配后的流量进行校正,以得出最终的管段初始流量,通过计算机程序实现对三维管网初始流量的自动分配,以解决三维环状管网优化中的流量初始化问题,能够确保流量分配的准确性,满足流量守恒原理。