
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1 TRNM河网水动力模型
1.1 控制方程
1.1.1 河道基本方程
明渠水流运动规律用圣·维南方程表示,方程各项的物理意义参见文献[8]。
连续方程:

动量方程:

1.1.2 汊点衔接方程
(1)流量衔接。每一节点进出的流量必须与该节点内实际水量的增减率相平衡。

(2)动力衔接。汊点处各断面之间的总能量应当相等。

1.2 差分方法
对河道方程采用Preissman四点隐格式进行差分,得到如下离散方程组:


利用方程(5)、(6),可递推得到各河道内任意断面的水位、流量与首、末断面水位的关系:


递推详细过程及参数意义可参见相关文献[4]。
1.3 水闸的处理
面向对象的三级联解法能够灵活方便地处理水闸问题。本模型将水闸作为汊点处理,水闸开启时,水闸上下游为直河段连通,此时满足普通汊点衔接条件。水闸闭合时,将水闸上下游河段作为边界河段,流量边界条件为0;当水闸部分开启时,利用水闸过流公式计算出过闸流量,作为上下河段的边界流量。
1.4 并行策略
MPI信息并行传递和Open MP单机多核并行计算是如今主要流行的两类并行计算方法。本研究建立的TRNM模型结合了两种计算方法,大幅度提高了模型计算速度。具体方法如下。
利用MPI并行技术将各河道的水动力计算工作分配至网络上各计算节点,在各计算节点分别求解各直河道方程,将递推系数传递至主控节点,主控节点通过Gauss主元消去法求解汊点衔接方程组,得到各河流首末断面的水位和流量并传递给网络上各计算节点,在各计算节点上计算直河道内部各断面的水位和流量。
利用Open MP共享内存并行技术可对各计算断面的地形参数模块进行并行化处理,从而充分利用各计算节点上多核的运算能力。在主控节点上利用Open MP对Gauss消去法求解汊点衔接方程组的模块进行并行化处理。