éêê0
ê¶dhS=êgh+fvh-r0ê¶xêêgh¶d+fuh-h
ê¶yr0ë¶pagh2-¶x2r0¶pagh2-¶y2r0ùúúú¶r1æ¶sxx¶sxyötsxtbx-ç+-+husú ÷+¶yr0è¶x¶yør0r0úú¶s¶sttæö¶r1yxyysyby-ç+-+hvsú÷+ú¶yr0è¶x¶yør0r0û
对方程(4-6)第i个单元积分,并运用Gauss原理重写可得出
¶UòAi¶tdΩ+òGi(F×n)ds=òAiS(U)dΩ (1-9)
式中:Ai为单元Wi的面积;Gi为单元的边界;ds为沿着边界的积分变量。这里使用单点求积法来计算面积的积分,该求积点位于单元的质点,同时使用中点求积法来计算边界积分,方程(4-9)可以写为
¶Ui1+¶tAiåF×nDGjNSj=Si (1-10)
式中:Ui和Si分别为第i个单元的U和S的平均值,并位于单元中心;NS是单元的边界数;DGj为第j个单元的长度。
一阶解法和二阶解法都可以用于空间离散求解。对于二维的情况,近似的Riemann解法可以用来计算单元界面的对流流动。使用Roe方法时,界面左边的和右边的相关变量需要估计取值。二阶方法中,空间准确度可以通过使用线性梯度重构的技术来获得。而平均梯度可以用由Jawahar和Kamath于2000年提出的方法来估计,为了避免数值振荡,模型使用了二阶TVD格式。
(2)时间积分
考虑方程的一般形式
¶U =G(U) (1-11)¶t
对于二维模拟,浅水方程的求解有两种方法:一种是低阶方法,另一种是高阶方法。低价方法即低阶显式的Euler方法
Un+1=Un+DtG(Un) (1-12)
Dt为时间步长。式中:高阶的方法为以如下形式的使用了二阶的Runge Kutta