Download PDF
Download page Local Inertia Approximation to the Shallow Water Equations.
Local Inertia Approximation to the Shallow Water Equations
Discrete Scheme
The Local Inertial Approximation to the Shallow Water Equations (SWE-LIA) utilizes a simplified momentum equation which ignores the advection, diffusion, and Coliolis terms. The semi-discrete form of the second fractional step may be written as
1) | \displaystyle \frac{u^{n+1}_{N,f}- u^n_{N,f}}{\Delta t} = -g\frac{\partial z_{s,f}^{n + \theta}}{\partial N} - c_{f,f} u_{N,f}^{n+1} + \frac{\tau _{s,N}}{\rho h_f^n} - \frac{1}{\rho} \frac{\partial p_a}{\partial N} |
Barotropic Pressure Gradient
In the LIA-SWE model, the barotropic pressure gradient term is treated similar the ELM-SWE model. The term is computed at computational faces utilizing the two-point stencil described above and treats the water levels semi-implicitly. The term is may be written as
2) | g \nabla z_s \cdot \textbf{n}_f = g \frac{\partial z_s^{n+\theta} }{\partial N} |
Solution Procedure
The momentum equation above can be rearranged to obtain an expression for the velocity at n+1 as
3) | \displaystyle u_{N,f}^{n+1} = - \frac{\Delta t g} {1 + \Delta t c_{f,f} } \frac{\partial z_{s,f}^{n+\theta}} {\partial N} + F_f |
where
F_f = \frac{ B_f^n} {1 + \Delta t c_{f,f} }
B_f^n=u_{N,f}^n+\Delta t\left(\frac{ \tau_{s,N} } {\rho h_f^n}-\frac{1}{\rho}\frac{\partial p_a}{\partial N}\right)
To obtain a discrete implicit equation for the water volume, the above equation is inserted into the discrete continuity equation to obtain
4) | \displaystyle \Omega_i^{n+1} + \sum_{j \in \text C (i)} a_{i,j} z_{s,j}^{n+1} = b_i |
where
a_{i,j} = - \frac{ \Delta t^2 \theta^2 g A_k } { \left ( 1+ \Delta t c_{f,k} \right ) \Delta x_N \ }, j \in \text{N}(i)
a_{i,i} = - \sum_{j \in \text{N} (i)} a_{i,j}
b_i = \Omega_i^n + \Delta t Q_i + \frac{1 - \theta}{\theta} \sum_{j \in \text{C}(i)} a_{i,j} z_{s,j}^n + \Delta t \sum_{k \in \text{K}(i)} \left [ \theta F_k + (1-\theta) u_{N,k}^n \right ] A_k
The system of equations is solved using the same Newton-like iterations used for the DWE solver.
Discrete Boundary Conditions
The boundary conditions are discretized in manner as in the ELM-SWE solver as:
- Water surface elevation: The water surface elevation boundary condition is directly implemented as . The internal cell is then discretized as described above and the terms containing the boundary water surfaces are placed on the right-hand-side of the system of equations.
- Normal Depth: The friction slope, , is specified and utilized to compute a flow at each computation face as . Boundary face flows are included in the internal cells as a source term on the right-hand-side of the system of equations.
- Flow: The flow boundary condition is specified at each computational face based on the local conveyance. Boundary face flows are included in the internal cells as a source term on the right-hand-side of the system of equations.
Solution Algorithm.
The solution algorithm of the SWE-LIA is similar to the DWE solver, except that the face hydraulic property tables are updated during the outer loop based on a time-averaged water surface elevation.
The complete solution algorithm is given here:
- The geometry, local orthogonality and sub-grid bathymetry data is obtained or pre-computed.
- Solution starts with z_s^0 as the provided initial condition at time-step n = 0.
- Boundary conditions are provided for the next time step n+1 .
- Initial guessz_s^{n+1} = z_s^n.
- Compute the time-averaged water surface elevation z_s^{n+1/2} and subgrid bathymetry quantities that depend on it (face area, horizontal surface area, hydraulic radius, Manning's n, etc.).
- Update hydraulic structures.
- The coefficients a_{i,j} are computed and the system of equations is assembled.
- The system of equations is solved iteratively using the Newton-like algorithm with the given boundary conditions to obtain a candidate solution z_s^{n+1}.
- If not converged, return to step 5; otherwise continue with step 10.
- The computed z_s^{n+1} is accepted and the velocities u_{N}^{n+1} can be calculated using the discrete version of the momentum equation.
- Increment n. If there are more time steps go back to step 3, otherwise end.
The loop provided by steps 5 through 9 has the purpose of updating the coefficients a_{i,j} so that the solution of the nonlinear system (rather than its linearization) is obtained at every time step. As expected, a fully nonlinear solution has very desirable properties such as wetting several cells in a single timestep.