Saint-Venant方程组只适用于仅有两端为结点的单一河道。对河网非恒定流水力计算问题通常有四种解法:直接解法、分级解法、单元划分法和松弛迭代法。
1 直接解法
直接解法是早期河网计算中常用的方法,它是直接求解由关于河道内断面处未知量的方程和由边界条件所对应的方程组成的河网方程组,所形成的线性方程组的系数矩阵为一极不规则,不对称的大型稀疏矩阵。求解方程组时存在着存贮量多,计算量大的问愚,从而直接影响了计算速度的提高。这类方法中比较有效的是我国学者李岳生等于1977年提出的网河不恒定流隐式方程组稀疏矩阵解法。
2分级解法
分级解法(又称结点~河道模型)首先由荷兰水力学家Dronkers提出,他将求解过程分结点及河道两级处理,从而在不降低计算精度的前提下,使差分方程中的未知数压缩到只含各交汇点(结点)的水位与流量,节省了内存单元。在此基础上,以后又有许多学者使之不断改进。1982年张二骏等提出了河网非恒定流的三级联合解法,1985年吴寿红饰键出了河网非恒定流的四级解法。对多支流河道1990年芮孝芳、1999年Feng Ping以三级联合解法为指导,提出了虚设单元河段法处理方程组的系数矩阵。分级解法的思想是将问题归结为先求解关于节点(汇流点)未知数(水位、流量)的方程组,然后再求解节点间各断面的水位、流量。其中节点水位法使用较为普遍,效果也较好,该方法先将问题归结为关于节点(汇流点)水位的方程组,然后再求解节点间各断面的水位、流量。分级解法的目的是减少方程组中的变量个数,从而最终降低需要求解的线性方程组的阶数,以利于存贮及减少运算量。1997年李义天提出的基于分级解法的汉点分组解法还可在节点水位法的基础上进一步降低线性方程组的阶数。但本文作者认为汉点分组解法实质上是利用矩阵分块,将系数矩阵分块为三对角型矩阵,由于有分块为三对角型矩阵的要求,因此汉点分组必须按照如下原则:每一汉点组最多只能与其它两个汉点组相联接,否则分块矩阵将不是三对角型矩阵,不利于线性方程组的求解。1999年侯玉等提出了汉点分组解法的一般理论,但其算法是基于系数矩阵为对称正定假设上的,本文作者认为正定性未见证明,至少系数矩阵的顺序主子式皆非零也未见得到证明。分级解法较直接解法有较大的优越性而逐步取代了直接解法,但对大型河网非恒定流计算问题,各种形式的分级解法都将面临着无任何特性的大型稀疏矩阵所对应方程组的求解技术以及数值计算稳定性上的一系列问题。
3 单元划分法
单元划分法是由法国JeanA.Cunge提出的,其思想是针对河网地区的水力特性,将水力特性相似,水位变化不大的某一片水体概化为一个单元,取单元的几何中心的水位为该单元的代表水位,求出各单元的代表水位及单元间的流量。国内韩龙喜、张书农、金忠青曾应用过此方法。单元划分法对湖泊及小型水库较多且水位、流量变化不大的平原大型河网情况具有一定的优点,但对计算区域内水位、流量变化较大的河网,如汛期洪水急剧张落、沿海感潮河网或是溃坝情况,单元划分法就不再适用。姚琪等将分级解法与单元划分法相结合,提出了兼含这两种方法优点的混合方法。混合方法的基本思想是:将河网的水域区分为骨干河道和成片水域两类,对骨干河道采用分级解法,对成片水域则采用单元划分法,同时引入当量河宽的概念,将其纳入分级解法一并计算。
4 松弛迭代法
松弛迭代法是由Fread,D.L于1973年提出的,其基本思想是将河网分解为一条条河道,再对一条条河道分别进行求解,求解时对汇流点处支流的流量先给预估值,再用松弛迭代方法逐步较正,通近其精确值。这样就将复杂的大型河网水力数值模拟问题化为一系列简单的单一河道水力数值模拟问题。而对每一单一河道都用由Amein和Fang以(1970)首先使用的用Newton-Raphson方法求解Saint-Venant方程组经差分离散所得的非线性代数方程组。其最大的优点是如此形成的线性代数方程组变得简单了,所求解的每一单一河道所形成的线性方程组系数矩阵都为五对角阵,且每行最多仅有四个非零元素,给线性方程组系数矩阵的存贮及线性方程组的求解带来了极大的方便。此后又有许多学者沿着这一思路进行了许多研究。
在以上四种解法中,分级解法和松弛迭代法是目前使用较多的两种方法。