A modified Mohapatra—Chaudhry two-four finite difference scheme for the shallow water equations

A two-four finite difference scheme for Boussinesq equations was developed by Mohapatra and Chaudhry in 2004. This scheme is of course also applicable to solve the shallow water equations. However this scheme is not robust to deal with dry bed, that is, spurious oscillations appear around wet-dry areas. In this paper we propose a modified two-four finite difference scheme to solve the shallow water equations involving (almost) dry bed. The modified scheme has fewer number of divisions by zero or almost zero, and at the same time, only conserved quantities (mass and momentum) are used in the evolution of the new scheme. The modification lies on the discretisation of the momentum equation. We discretise the momentum equation using the momentum variable itself rather than using the velocity variable as done by Mohapatra and Chaudhry. Numerical results show that our proposed scheme is more robust for wetting and drying processes of the shallow water equations.


Introduction
Shallow water flows can be described using a mathematical model, such as the system of either shallow water equations or Boussinesq equations. These equations have been used to simulate river flows, floods, and even tsunamis. Therefore, accurately solving these equations is very important.
Mohapatra and Chaudhry [6] simulated dam-break flows numerically by solving the onedimensional Boussinesq equations using a two-four explicit finite-difference scheme. Readers interested in the analytical study of the Mohapatra-Chaudhry scheme are referred to [6] and references therein. The Mohapatra-Chaudhry scheme was validated by comparing the computed results with the Stoker solution [13,14], yielded satisfactory results for dam-break flow studies. Their numerical tests were based on a wet bed assumption, in which the upstream and downstream positions are wet. However, in actual flow situation, there is another problem, known as a dry bed problem, in which the downstream depth is close to or absolutely zero. The Mohapatra-Chaudhry scheme is not robust to deal with dry bed, because the scheme produces spurious oscillations around wet-dry areas.
When solving the dry bed problem, numerical schemes usually face extra challenges. Supercritical and subcritical flows may coexist for flow in horizontal [1,2,4]. A difficulty in dealing with simulation of dam-break flows on a dry bed lies in the downstream boundary conditions of the flow field, where the flow depth goes to zero [15]. There may also be discontinuity in the velocity at the wet-dry interface, whereas the depth and momentum values are continuous.
To overcome the wet-dry problem, in this paper we propose a modified Mohapatra-Chaudhry scheme, in which only conserved quantities (mass and momentum) are used in the evolution of the new scheme, to solve the shallow water equations. Numerical results show that our proposed scheme performs better for wetting and drying processes of the shallow water equations than the original Mohapatra-Chaudhry scheme.

Governing equations
Consider one-dimensional shallow water equations, which are written as continuity and momentum equations [6]: where x denotes the longitudinal direction; u represents the depth-averaged velocity in the xdirection; t is the time variable; h denotes the flow depth; g represents the acceleration due to gravity; S 0 is the bed slope in the x-direction; and S f is the friction slope in the x-direction. The friction slope, S f , is calculated from the Manning equation with n is the Manning roughness coefficient and the channel is assumed to be wide and rectangular. A simplification and an extension of the one-dimensional shallow water equations were discussed in some literatures, such as Mungkasi and Roberts [8,9,11,12]. The derivation of the above equations is based on assumption that the velocity in the vertical direction varies linearly from zero at the bed to the maximum value at the surface. The governing equations do not account for the effective stresses arising due to laminar viscous stresses, turbulence stresses and stresses due to depth averaging. Note that the shallow water equations are special cases of the Boussinesq equations with the values of Boussinesq terms are zero.

Numerical model
There are mathematical and physical reasons why the Mohapatra-Chaudhry scheme needs modification for dry bed involvement in solving the shallow water equations. Mathematically, the Mohapatra-Chaudhry scheme has two divisions by zero or almost zero number for calculating the velocity. That is, one division occurs in the predictor step and another one in the corrector step. These divisions make the computation results tend to large numbers, and hence, give large errors. Physically, evolving the velocity in the predictor and corrector steps is not the best option when there exists discontinuity in the solution, because velocity is not a conserved quantity.
Therefore, we propose a modified scheme having fewer number of divisions by zero or almost zero, and at the same time, only conserved quantities (mass and momentum) are used in the evolution of the new scheme. Similar to the Mohapatra-Chaudhry scheme, the governing equations (Eqs. (1) and (2)) are solved using a two-four finite difference scheme on collocated grids. However in the modified scheme, the momentum equation in Eq. (2) is discretised using the momentum variable q = uh. For each iteration, variables h k+1 and (uh) k+1 at an unknown time t + ∆t are computed explicitly from variables h k and (uh) k at the known time t in three phases. First, a predictor procedure yields predicted variables h p and (uh) p . Second, a corrector procedure produces corrected variables h c and (uh) c . Third, the flow field (h,ũh) is then computed by taking the average of the variables at the known time level, k, and the corrector part. The solution of the third phase will be the final approximate solution at time t + ∆t.

Predictor part
The predicted water level variable is the same as in the Mohapatra-Chaudhry scheme. It is obtained from the known variables by using the forward finite differencing for both the time and space derivatives, as follows The equation to compute the predicted velocity variable in the Mohapatra-Chaudhry scheme is modified to obtain the predicted momentum variable: where Notice that in this predicted part we evaluate the predicted momentum variable directly, without computing the predicted velocity variable.

Corrector part
The corrected water level variable in the modified scheme is obtained from the predicted variables by using the forward finite differencing for the time derivatives and backward finite differencing for the space derivatives, as in the Mohapatra-Chaudhry scheme: As in the predictor part, the equation to compute the corrected velocity variable in the Mohapatra-Chaudry scheme is modified to obtain the corrected momentum variable: Variable T in Eq. (8) is the same as that given in Eq. (6). As in the predicted part, the corrector velocity variable is not evaluated in this corrector part. The solutions of the predictor-corrector procedure in the modified scheme are the values of water depth and momentum.

Final step
Flow variables (h,ũh) are then evaluated by taking the average of variable values at the known time level k and the corrector part:h In case the velocity values are desired, it can be computed as The values of water depth and momentum at the end of each time step are smoothened by utilising the artificial viscosity procedure [5]. The smoothened values are then used for the next interation. Note that the artificial viscosity procedure is used in order to be consistent with Mohapatra-Chaudhry's paper. By numerical experiments we have found that the artificial viscosity procedure stabilises the solution near vacuum.

Initial and boundary conditions
As the modified scheme uses the variables h and q = uh for discretisation, it is necessary to adjust the initial and boundary conditions of the variables, as follows: The inital condition, at t = 0.0, is given and the boundary condition, at t > 0.0, is given The time step ∆t is computed using the stability condition governed by the Courant-Friedrichs-Lewy (CFL) condition. The necessary condition for stability of the two-four scheme is that: where C n ≤ 2/3, is satisfied [3]. Here C n is the Courant number, which is also known as the CFL number.

Results
In this section, the modified scheme is used to solve the shallow water equations to simulate dam-break flows on wet and dry bed, with flat bottom without friction. The problem is set by equations (1) and (2), where the bed slope S 0 = 0.0, and the friction slope S f = 0.0, with initial conditions both h u and h d are nonnegative and h u > h d . At time t = 0, the dam wall is immediately removed and the water on upstream flows to the downstream at the subsequent time t, as illustrated in Figure 1.
The modified scheme is validated by comparing its results with those of the Mopatra-Chaudhry scheme and the analytical solution to the shallow water equations (see [7,10,13,14]      In case the initial downstream level is zero (almost zero), that is a dry bed problem (almost dry), in this simulation we consider h d = 10 −9 . Figure 4 ilustrates the water profile at t = 1 after the dam destruction. This shows that the modified scheme is more robust for wetting process of the shallow water equations. If we simulate for a large time value, the Mohapatra-Chaudhry scheme is unstable even though the CFL condition is satisfied. Note that the CFL condition is a necessary condition for stability, and not the sufficient condition.

Conclusions
A modified two-four finite difference scheme is utilised to solve the shallow water equations for simulating dam-break flows over wet and dry bed. We modify the discretisation of the momentum equation from using the velocity variable, as done by Mohapatra and Chaudhry, to using the momentum variable itself. Numerical results show that the scheme is more accurate for wetting process of the shallow water equations. This suggests that the scheme is also robust for wetting and drying processes.