Adaptive Central-Upwind Scheme on Triangular Grids for the Shallow Water Model with variable density
Abstract
In this paper, we construct a robust adaptive central-upwind scheme on unstructured triangular grids for two-dimensional shallow water equations with variable density. The method is well-balanced, positivity-preserving, and oscillation free at the curve where two types of fluid merge. The proposed approach is an extension of the adaptive well-balanced, positivity-preserving scheme developed in Epshteyn and Nguyen (arXiv preprint arXiv:2011.06143, 2020). In particular, to preserve “lake-at-rest” steady states, we utilize the Riemann Solver with appropriately rotated coordinates to obtain the point values in neighborhood of the fluid interface. In addition, to improve the efficiency of an adaptive method in the multifluid flow, the curve of density discontinuity is reconstructed by using the level set method and volume fraction method. To demonstrate the accuracy, high-resolution, and efficiency of the new adaptive central-upwind scheme, several challenging tests for Shallow water models with variable density are performed.
keywords:
Shallow water equations with variable density, central-upwind scheme, well-balanced and positivity-preserving scheme, adaptive algorithm, interface tracking, Riemann solver, weak local residual error estimator, unstructured triangular gridAMS subject classification: 76M12, 65M08, 35L65, 86-08, 86A05
1 Introduction
The main goal of this paper is to develop an adaptive well-balanced positivity-preserving central-upwind scheme on triangular grids for shallow water equations with variable density (SWEDs). The two-dimensional (2-D) system of SWEDs can be written as,
(1.1a) | |||
(1.1b) | |||
(1.1c) | |||
(1.1d) |
where is the time, and are spatial coordinates (), is the water height, is the density, and are the - and -components of the flow velocity, is the bottom topography, is the constant gravitational acceleration, and is the reference density. The system (1.1a)–(1.1d) was proposed in [10, 35, 36, 15] as a variation of the Saint-Venant equations to model multi-phase flows in estuaries or deep ocean currents. The derivation of the system is based on hydrostatic approximation which eliminates the variability in the z-direction. The design of robust and accurate numerical algorithms for computing the solutions of SWEDs system is an important and challenging problem that has been extensively studied in the recent years.
A number of numerical schemes for balance laws have been introduced in recent years, [28, 24, 20, 5, 27, 7, 6, 8, 23, 22, 2, 26, 3, 4, 39, 29]. Most of them utilize a Riemann problem solver for the upwind evolution of the calculated solution. However, as discussed in [9], the eigensystem of the system (1.1a)–(1.1d) may be incomplete due to the resonance phenomenon. Hence, it may be very difficult to design a reliable upwind scheme for the SWEDs. In our paper, we therefore use central-upwind schemes which are Riemann-problem-solver free methods, [21, 25, 29]. Central-upwind schemes have been referred to “black-box” solvers for general multidimensional systems of hyperbolic systems of conservation laws. In our prior work [13], we have derived a successful adaptive central-upwind method for Saint-Venant system on triangular grids.
Similar to the Saint-Venant system, a good method for SWEDs system should preserve the non-negativity of and , which is called the positivity-preserving property. In addition, the scheme must ensure a well-balanced property obtained when the numerical method preserve “lake-at-rest” steady-state solutions. Otherwise, the numerical method may lead to significant oscillations. Note that, the system (1.1a)–(1.1d) admits the following two “lake-at-rest” steady-state solutions, [9]:
(1.2) |
and
(1.3) |
Preserving the solution (1.3) is a big challenge for numerically solving the system (1.1a)–(1.1d) since using the conventional central-upwind methods may not ensure the variable , so-called variable pressure, to be constant at the contact waves. Therefore, for our adaptive scheme of SWEDs, we will utilize the central-upwind scheme which is derived from [9] for shallow water model with horizontal temperature variable (the system in [9] has similar properties with the SWEDs). In [9], the proposed second-order semi-discrete central-upwind scheme is capable of preserving the “lake at rest” steady state (1.2) and (1.3) as well as the positivity of the water depth and the temperature (the temperature variable is equivalent to the variable density in our work). In particular, to preserve the second type of “lake at rest” steady state (1.3) and suppress the pressure oscillations across the interface, an efficient interface tracking method is performed. The main idea of the interface approach in [9] is to completely avoid to use the information from the cells where two types of fluids are numerically mixed, so-called “mixed” cells when evolving the solution in the neighborhood of the interface. The data in the “mixed” cells is replaced by the interpolated values that are calculated using the reliable information from the nearby “single fluid” cells. Namely, the point values in “mixed” cells are obtained by using the approximated solution of the 1-D Riemann problems between the reliable “single fluid” cell averages. However, the central-upwind method and the interface tracking in [9] are designed on structured rectangular grids. In practice, one needs to deal with complicated geometries, where the use of triangular grids could be advantageous or even unavoidable. Hence, in this study, we extend the interface tracking method from [9] to unstructured triangular grids by utilizing the idea of the rotated coordinates proposed in [1]. The 1-D Riemann solver [9] is then performed in the direction of normal vectors on each edge of “mixed” cells. This extended central-upwind scheme maintains the well-balanced and positivity-preserving properties.
In addition to achieving the accuracy of the solution, minimizing computational cost is also one of the major challenge in the modeling and numerical analysis of hydrodynamics. The traditional numerical schemes for the system (1.1a)–(1.1d) are based on the use of very fine fixed meshes to reconstruct delicate features of the solution. However, this can lead to high computational cost, as well as poor resolution of all small scale features of the problem. In many engineering and scientific applications, it is beneficial to use adaptive meshes for improving the accuracy of the approximation at a much lower cost. Therefore, another goal of this work is to design an adaptive numerical algorithm for shallow water equations with variable density. There is some very recent effort on the design of adaptive well-balanced and positivity-preserving central-upwind schemes on quad-tree grids for shallow water models [37, 15, 14], but no research has been done for the development of such adaptive schemes for the shallow water with variable density on unstructured triangular grids.
As a part of the mesh reconstruction, we will need to project the data from the old mesh onto a new adaptive mesh. Since we avoid using the cell averages of mixed cells, the data of a new cell which is reconstructed from an old mixed cell is calculated based on the location of the density jumps and the data from the nearby “reliable” cells. Therefore, the interface separating different fluid phases must be accurately tracked or captured. In each “mixed” cell, we will reconstruct an approximate interface, which is called “interface reconstruction”. Many methods have been developed for this purpose in the last two decades, [31, 38, 17, 34, 42, 41]. In our work, we consider the interface reconstruction method derived in [45] due to the great advantages of this approach such as high-resolution, efficiency and simplicity.
This paper is organized as follows. In Section 2, we present a well-balanced positivity-preserving central-upwind scheme on unstructured triangular grids for SWEDs which serves as the underlying discretization for the developed adaptive algorithm. Next, in Section 3.1, we present the procedure to detect mixed cells. The interface approximation will be briefly reviewed in Section 3.2. In Section 3.3, we discuss the cell averages correction, which is used to prevent the density diffusion around the density jumps. We summarize the adaptive central-upwind method in Section 4.1. We discuss a strategy of adaptive mesh refinement in Section 4.2. In Section 4.3, we present an adaptive second-order strong stability preserving Runge-Kutta method, employed as a part of time evolution for the adaptive central-upwind scheme. We develop a local posteriori error estimator in Section 4.4 which is used as a robust indicator for the adaptive mesh refinement in our work. Finally, in Section 5, we illustrate the high accuracy and efficiency of the developed adaptive central-upwind scheme on a number of challenging tests for multi-fluid shallow water models.
2 The Central Upwind Scheme for SWEDs in Triangular Mesh
In this section, we focus on developing the central-upwind method for the SWEDs system (1.1a)-(1.1d), [15]. In particular, we will extend the adaptive scheme from the Saint-Venant system in [13] to the SWEDs system. The developed scheme will eliminate the oscillation appearing at the interface and ensure the well-balanced and positivity-preserving properties.
(2.1) |
where
and the fluxes and source term are:
(2.2) | ||||
In our research, we consider the triangular mesh illustrated in Fig. 2.1 with the following notations.

is an unstructured triangulation of the computational domain ;
is a triangular cell of size with the barycenter ;
are the three vertices of ;
are the neighboring triangles that share a common side with ;
is the length of the common side of and , and is its midpoint;
is the outer unit normal to the th side of .
Next, the bottom topography is replaced with its continuous piecewise linear approximation given by
where, in the case of continuous bottom topography, . Then, denote:
At time , define by the approximation of the cell averages of the solution,
From now on, in order to shorten the formula, we suppress the time-dependence in the algorithm. All indexed quantities used in the following formula will be computed at time . Then, as shown in [29, 4], the semi-discrete second-order central-upwind scheme for the Saint-Venant system (1.1a)-(1.1d) on triangular grids is written as the following system of ODEs,
(2.3) |
where the numerical fluxes through the edges of the triangular cell are
(2.4) | ||||
(2.5) | ||||
(2.6) |
Here, and are the reconstructed point values of at the middle points of the edges . To obtain these values, first, a piecewise linear reconstruction of the variables is computed as,
(2.7) |
where is the characteristic function of the cell , are the point values of at the cell centers, and and are the limited partial derivatives (see Section 3 in [29] for more details of the computation). In order to compute the cell center point values of the density, in cell and velocities and , we use the desingularization procedure presented in [29]. After that, the second and third components of the point values and are obtained from, and ,
However, in some numerical examples, the oscillation may appear when we use the piecewise linear approximation (2.7) to obtain the point values in some cells. It may occur due to the appearance of local extrema values at middle points or as a consequence of the density discontinuity. To prevent this oscillation, we will use some techniques that will be discussed later in Sections 2.1 and 2.2.
In (2.6), and are the one-sided local speeds of propagation in the directions . These speeds are related to the largest and smallest eigenvalues of the Jacobian matrix , denoted by and , respectively, and are defined by
(2.8) | ||||
where
Remark 2.1
Finally, the cell average of the source term in (2.3),
has to be discretized in a well-balanced manner presented later in Section 2.4
2.1 The Limiter for Piecewise Linear Approximation
As discussed above, we may observe the oscillation when using piecewise linear approximation (2.7) due to the appearance of local extrema at midpoints , see [29]. Hence, in order to maintain the numerical stability of the scheme, the following monotonicity condition must be satisfied.
(2.9) |
where is the -th component of the point values at midpoint which is obtained by the linear reconstruction (2.7). Here, and are the center point value in cell and the neighboring cell , see [19]. To ensure that the reconstructed point value is between two cell averages and , in [29, 3], the gradients and are set to zero for cells violating at least one of the inequalities (2.9). However, using zero gradients may reduce the convergence rate in numerical simulation. Hence, in our research, instead of zero gradients, we consider the idea of the positivity-preserving limiter developed in [32, 43] to correct the piecewise linear reconstruction. The details for this correction are presented as follows.
Consider an arbitrary cell with the polynomial that does not satisfy at least one of local extrema conditions (2.9). In that case, we will replace by
(2.10) |
where such that satisfies the inequalities (2.9) for all . We then need to solve for the constant . Plugging (2.10) into the inequalities (2.9), we have
(2.11) |
or
(2.12) |
where
Hence we can take
(2.13) |
Note that since , which corresponds to the constant approximation for , is one solution of the inequalities (2.9). Hence, with this optimized limiter, the point values stay within the given range. In addition, the approximated values of water depth and density at middle points are also positive as . Therefore, the stability is ensured without using zero-gradients.
2.2 Riemann Solver for Mixed Cells
As mentioned in Section 1 and [9], a good scheme should not develop spurious pressure oscillations in the neighborhood of density jumps. The oscillations appear when we numerically solve the compressible multifluid systems by using conventional Godunov-type finite-volume methods. We define the cells which contains the curves of density discontinuity as “mixed” cells. Note that the quantities in mixed cells are calculated as an artificial numerical mixture of two different fluids. Hence, the cell averages of mixed cells may have no or very little physical sense and become ’unreliable’ [9]. Consequently, using the cell averages in mixed cells to obtain the linear approximation (2.7) in the neighborhood of the interface will lead to unexpected pressure oscillations. In [9], to eliminate the oscillation, instead of the linear approximation (2.7), the point values in the “mixed” cells are calculated by using the approximated solution of 1-D Riemann problems. Namely, according to this approach, the 1-D Riemann Solver is applied in the -direction to approximate the point values on the vertical boundaries of each rectangular mixed cell. Similarly, for the point values on horizontal sides of the rectangular, 1-D Riemann problem is considered in -direction. This leads to the idea of applying Riemann Solver approach in the direction of the normal vector, so called “normal direction”, to get the middle point values on each side of the mixed cells in triangular meshes. We can understand this idea as rotating the reference coordinate. Recently, a method using rotated coordinate frame to solve multi-dimensional Riemann problems has been proposed in [1]. In such approach, the 2-D Riemann Problem is converted to 1-D problem in a particular direction in order to easily obtain the corresponding solution in 2-D. Therefore, in our research, we will calculate the point values in triangles based on the intermediate states of 1-D Riemann problem in the normal direction as follows.
Assume that triangle is a mixed cell which has the outward unit normal vector on side . We will consider a new reference frame such that the new horizontal axis is in the direction of the outward normal vector and the origin is at the middle point of side as shown in Fig. 2.2.

Suppose and to be the two closest single-fluid cells to such that and stay on different sides of the -th edge of cell . We assume that stays on the side where the outward normal vector is pointing. Let and be the center point values of single-fluid cells and . Note that and are the values of velocities in the Cartesian coordinate system . The projections of velocities and onto the rotated frame are
Similar to [1, 9], to compute the point value at midpoint on side of triangle , we have to solve the following 1-D Riemann problems between states an in direction .
(2.14) |
subject to the following initial condition
(2.15) |
The details of the approximate Riemann solver for the above Riemann problem can be seen in [9]. Suppose and are the intermediate states calculated by Riemann solver for (2.14)-(2.15) in coordinates. We recall that in [9], the point values at midpoints on left and right boundaries of a rectangular mixed cell are obtained respectively based on the left and right Riemann intermediate states, and . Here, in triangular grids, we can choose either or to calculate the point values at the middle point of cell . Note that and are both single-fluid cells nearby mixed cell . However, if the neighboring cell shown in Fig. 2.2 is a single-fluid cell, then and , which means is closer to compared to . Hence, in our work, we select the right intermediate values and the information from to compute the point values . From [9], we first calculate the sound of speed . If and , then we replace the piecwise linear approximation in (2.7) by , otherwise (more details of the point values correction can be seen in [9]). Finally, we convert the computed solution back to original Cartesian coordinate as
(2.16) |
where .
2.3 Positivity-preserving condition
Next, we will discuss the restriction of time step to preserve the positivity of water depth and the variable . Consider the Forward Euler (FE) equation
From [3], the time step condition to guarantee the positivity of water height is
(2.17) |
One can clearly see that the time step size (2.17) will also achieve nonnegative water height in the density shallow water model (1.1a)-(1.1d), see [3, 29]. We now use the idea from [3] to find the CFL-type condition for the positivity-preserving property of the last variable . To this end, we apply the forward Euler discretization to the last component of the scheme.
(2.18) | ||||
Note that
(2.19) |
From the definitions of the local speeds (2.8) we obtain that , , and . Besides, the corrected reconstruction in Section 2.1 guarantees that and for all and . Therefore, all terms in the first and third sum on the RHS of (2.3) are nonnegative. To enforce the second sum on the RHS of (2.3) to be nonegative, we then need:
Hence we conclude that all terms in the second sum on the RHS of (2.3) are also nonnegative under the following CFL-type condition.
(2.20) |
where and is the -th altitude of triangle . This completes the proof. This proof is still valid if one uses a higher-order SSP ODE solver (either the Runge-Kutta or the multistep one), because such solvers can be written as a convex combination of several forward Euler steps.
2.4 Well-balanced discretization of source term.
In this section, we first develop a well-balanced discretization of the source terms, which guarantees the first type of “lake at rest” steady-state solutions,
(2.21) |
are exactly preserved by the resulting central-upwind scheme. This means that the source discretization should exactly balance the numerical fluxes so that the right-hand side (RHS) of (1.1a)-(1.1d) vanishes at “lake at rest” steady states.
To this end, we substitute the “lake at rest” state (2.21) into FE scheme of the system (it is still correct with the adaptive Runge-Kutta scheme) and conclude that a well-balanced quadrature for should satisfy the following two conditions:
(2.22) |
(2.23) |
where
In order to derive a well-balanced quadrature, similar to [3, 29], we first apply Green’s formula, , to the vector field and obtain
(2.24) | ||||
where is the -th side of the triangle , . The double integrals are approximated using the trapezoidal rule. This results in the following quadrature for :
(2.25) | ||||
A similar quadrature for is
(2.26) | ||||
Notice that the piecewise linear reconstruction procedure ensures that at the steady state (2.21), and throughout the entire computational domain. This implies that and . Therefore, the quadratures (2.25) and (2.26) satisfy the desired well-balanced requirements (2.22) and (2.23).
Next, we consider the “lake at rest” situation
(2.27) |
Note that in the region occupied by only one fluid, the density is a constant and water surface is then also a constant based on (2.27). Hence, in single-fluid cells, the steady state (2.27) is equivalent to the solution (2.21) which is maintained by the discretization of source term (2.25)-(2.26). In addition, in mixed cells, the point values are obtained by the data from nearby single-fluid cells thanks to the Riemann Solver approximation presented in Section 2.2, see also [9]. Therefore, the discretization of source term (2.25)-(2.26), is also capable of preserving the steady state solution (2.27).
3 Interface Tracking
To achieve an efficient adaptive scheme for multifluid flows, it is essential to accurately capture the curve where two types of fluid join simultaneously with the flow field evolution. The interface tracking is important in preventing excessive numerical diffusion of variable density, see Section 3.3. We also need the location of density jumps to exactly update the cell averages in the adaptive mesh reconstruction, Section 4. Therefore, we desire a simple and effective interface reconstruction for the system (1.1a)-(1.1d). Over the last two decades, many methods have been proposed for this purpose such as the level set method [31, 38], the volume of fluid method [17, 34], and the front tracking method [42, 41]. Among various versions of interface tracking, we have considered the approach described in [45, 44] for our work due to its simplicity, robustness, and high efficiency. In particular, the interface is obtained by using both the level set and the volume fraction functions. The details of the interface reconstruction is described as follows.
3.1 Mixed Cell Detecting by Level Set Function
In the first part of this section, we will discuss the method of detecting the mixed cells in the triangular grids. For this end, we consider the level set function which is defined such that it is positive in one fluid, is negative in the other fluid, and has zero value at the interface. Very often, the level set value of each grid point is initialized by the signed distance from that point to the curve of density discontinuities, see [29, 31, 38, 45]. As discussed in [29, 31, 38, 45], level set function is evolved by the velocity of the flow field as
(3.1) |
The equation (3.1) can be rewritten in conservation form as follows.
(3.2) |
We have used the central-upwind scheme presented in Section 2 to solve for , where the point values in triangle are approximated by the piecewise linear reconstruction (2.7). The integral of the source term in (3.2) can be approximated by midpoint rule. Note that using the central-upwind scheme to solve (3.1) only give us the cell averages of in each cell and does not point out which cells contain the interface . We have to provide a numerical method for detecting mixed cells. However, a triangle is a single-fluid cell, also called as “reliable” cell, if the level set values at its vertices are either all positive or all negative. Hence, we will locate each node in the grid based on its point value of level set as presented below.
Without the loss of generality, we assume that is positive in fluid 1 and is negative in fluid 2. The point value of level set function at each vertex of cell is approximated by extrapolation [9]
(3.3) |
where is the cell averages of level set function in cells which have common vertex at , and the weight is inversely proportional to the distance between the center of cells and vertex . If , we have the vertex staying in fluid 1. Otherwise, if , the vertex is in fluid 2. Finally, based on the physical meaning of the level set function, a triangle is naturally marked as a mixed cell if it has two vertices staying in different fluids.
3.2 Interface Reconstruction
In most works of interface tracking, see [31, 38, 17, 34, 42, 41], the curve of density discontinuity in a mixed cell is approximated as a linear line segment of the form , where is the normal vector of the interface, is the location of a point, and is the line constant. A variety of methods for computing normal vector and parameter have been briefly introduced and compared in [45, 33]. Based on the advantages and disadvantages of conventional interface tracking methods, an innovative approach has been proposed in [45]. The approach employs both the level set and volume of fluid methods to denote the density segment in each flagged cell by its two endpoints. Namely, the interface normal vector is calculated from the level set function while the exact location of two endpoints of the segment is determined by enforcing mass conservation based on the volume fraction. In our work, we will apply this interface tracking method in the adaptive triangular mesh due to its simplicity, accuracy, and versatility. The details of this method can be seen in [45]. In the following, we will briefly present the main steps of the interface reconstruction.
Once the mixed cells are detected, we will first compute the interface normal vector in each flagged cell based on the level set function and a least square problem. Namely, for each mixed cell with center at , we consider a stencil that consists of all centers of cells that share at least a vertex with (to simplify the computation, we do not place the vertices of cell in the stencil as in [45]). A quadratic function for function of a point is then given in the generic form
where is the location of point in the local coordinate frame and obtained by shifting the original coordinate such that the new origin is at the center of . The coefficients and are determined by using the least squares method with the linear system
where
(3.4) |
are the local coordinates of the th node in the stencil and is the cell average of level set function in cell corresponding to node -th. Once the coefficients are known, we compute the unit normal vector by The system (3.4) is solvable as explained in [45]. In addition, since the level set function is continuous, the normal calculation is second-order accurate.
Next, we continue to determine the exact coordinates of two endpoints of the interface by using the volume of fluid approach (VOF). The VOF method has been widely used and developed for interface tracking in [17, 34, 44, 45]. In the VOF method, the volume fraction function, denoted by , is defined as the ratio of the volume of one fluid, called fluid 1, in each cell to the total volume of the cell. Hence, is unity if the cell is a single-fluid cell in fluid 1, and is zero if the cell only contains fluid 2. For mixed cells, we have . The function is advected by
(3.5) |
The main idea of the VOF method proposed in [44, 45] is to reconstruct the interface segment by determining the coordinates of its endpoints. In particular, the two endpoints must form a segment which has the normal vector as computed above and the interface truncates the cell with the given volume fraction. Fig. 3.1 is an illustration for two cases of a mixed cell where the interface splits into two parts, and , respectively occupied by fluid 1 and fluid 2.


We then have
where is the normal vector of the interface computed by (3.4) and is the cell average of volume fraction in mixed cell obtained by using the central-upwind method, see Section 2, to solve (3.5). This interface reconstruction is explicit, accurate, and capable of conserving the volume of the fluid. The details of endpoint calculation can be seen in [45]. Finally, the reconstructed interface will be used in the adaptive mesh reconstruction as discussed in the following sections.
3.3 The Cell Averages Correction
The idea of correcting the solution in the neighborhood of the interface has been used in numerical methods for multifluid flows [9, 45] to improve the computed solution. This technique prevents the diffusion of density emerging when we use the central-upwind method to solve compressible systems. In our work, we will also perform the correction procedure such that the local conservation is ensured based on the location of density jumps. Namely, suppose we have two types of fluid, fluid 1 and fluid 2, in the flow. After determining the single-fluid cells and mixed cells by using the point values of the level set function, see Section 3.1, the cell average correction will proceed as follows.
-
•
If a cell is a single fluid cell in fluid , we correct the cell averages of by , where is the value of density in fluid . is the cell average of water depth in . To preserve the mass of in the domain, we equally split the change of in into the nearby mixed cells. Namely, if the neighboring cell of is a mixed cell, we obtain the new cell average of in by
(3.6) where and are the old cell averages computed by using the central-upwind scheme in triangles and , and is the number of mixed cells surrounding the cell .
-
•
If is a mixed cell, except the update (3.6) from its nearby single-fluid cells, no further correction is needed.
Due to the fact that the interface normally moves from one cell to its adjacent cells, only cells surrounding the interface are updated and the loss of mass from this correction is negligible. In addition, for cells in the “lake at rest” area, this correction will not change the existing solution therefore maintaining the well-balanced properties.
4 Adaptive Central-Upwind Scheme
The traditional numerical methods for system (1.1a)–(1.1d) consider very fine fixed meshes to reconstruct delicate features of the solution. However, this can lead to high computational cost, as well as to a poor accuracy of small scale characteristics of the problem. Therefore, we will use adaptive meshes to improve the accuracy of the approximation at a much lower cost. In this section, we will review an efficient and accurate adaptive central-upwind algorithm from [13] which we adapt to the system (1.1a)-(1.1d).
4.1 Adaptive Central-Upwind Algorithm
From [13], the adaptive central-upwind algorithm for the system (1.1a)- (1.1d) is described briefly by the following steps.
Step 0. At time , generate the initial uniform grid .
Step 1. On mesh , evolve the cell averages of the solution from time to at the next time level using adaptive central-upwind scheme (4.5a)-(4.5b), see Section 4:
- •
- •
- •
- •
- •
- •
Step 2. On mesh , compute WLR error using (4.9) in Section 4.4 and determine the refinement/de-refinement status for each cell, Section 4.4.
Step 3. Generate the new adaptive mesh at , Section 4.2. This step includes coarsening of some cells, refinement of some cells, and the appropriate projection of the cell averages from the mesh at onto a new adaptive mesh at time , Section 4.2.
Step 4. Repeat Step 1 - Step 3 until final time.
4.2 Adaptive Mesh Refinement/Coarsening
The purpose of mesh reconstruction is to obtain adaptive grids which delivers higher accuracy with a lower computational cost. An efficient adaptive mesh should have small cells in the regions with large errors and large cells in the other regions. In particular, at time , we start with the given mesh, denoted as , where is a triangular cell with the barycenter , and index is the level of refinement ( for all and represents the initial mesh with no refinement). The triangular cells in the mesh are flagged for refinement/de-refinement based on the weak local residual (WLR) error estimator, see Section 4.4. On grid , we apply “regular refinement” described in [13] on the triangles flagged for refinement to obtain a new mesh with the refinement level . Namely, each flagged triangle (“parent” triangle) is split into four smaller triangles (“children” triangles) by inserting a new node at the mid-point of each edge of the “parent” triangle. Fig. 4.1 (a) is an illustration of the “regular refinement”, where a flagged cell is refined to obtain the “children” cells by using the mid-points of the sides. In addition, due to the insertion of new nodes on the edges of the non-flagged triangles adjacent to refined triangles, we must also refine these neighboring cells by creating a new edge between the hanging node and the opposite corner as illustrated in Fig. 4.1 (b).


In practice, there may be some cells having very large WLR error (4.9), and we need to reach a higher level of refinement for those cells to improve the accuracy. This can be done by repeating the refinement for the flagged triangles in the refined mesh to get the mesh with higher level . Fig. 4.2 is the illustration of the “regular refinement” procedure with two levels of refinement.



Note that in the numerical simulations of the wave phenomena, the regions of the domain flagged for refinement changes over time evolution and the refinement in some cells may become no longer needed. Hence, in [13], the de-refinement/coarsening procedure is performed to deactivate unnecessarily fine cells in the grid. Namely, at time , we deactivate “children” cells in the mesh based on the WLR and activate the corresponding “parent” cell from the mesh back. More details of refinement/de-refinement process can be seen in [13].
Finally, at time , a hierarchical system of grids is obtained, where , is the grid with the level of refinement reconstructed from the grid . We will use the final mesh for adaptive central-upwind scheme (4.5a)-(4.5b) to evolve the numerical solution from time to time . Next, at , we generate a new adaptive grid from the mesh . After the mesh reconstruction at time , the obtained cell averages on the mesh need to be accurately projected on the new mesh , using the ideas as summarized briefly below.
Case 1. At , a triangle is the same cell as in the grid , we will maintain the cell averages for that triangle at .
Case 2. A cell is obtained by de-refining some finer cells . The cell average of solution, in the cell , is computed as
where is the solution in .
Case 3. A triangle is obtained from the refinement of the cell . If is a single-fluid cell, the cell averages at in are approximated by using the the piecewise linear reconstruction (2.7) of the solution at in the triangle . If contains the density discontinuity, we will compute the cells averages in the “son” cell based on the interface tracking, see Section 3.2, and the information of the nearby single-fluid cells. For example, suppose that from the reconstructed interface in “dad” cell , the “child” cell completely lies in one fluid, called fluid 1. Hence, triangle is a single-fluid cell and the cell averages are set to be equal to the cell averages of another “reliable” cell which is in fluid 1 and is the closest cell to the “dad” cell .
Remark 4.1
The update of cell averages in case 3 does not ensure the mass conservation which means the total mass of “son” cells in the adaptive grid is not equal to the mass of their “dad” cell. However, the volume of fluid and the exact location of the interface are conserved. In addition, the reconstructing method also maintains the steady state solution for “lake at rest” situations, see example 2 Section 5, since the values of the cell averages are obtained by using the information from nearby “reliable” cells.
4.3 Second-order Adaptive Time Evolution
Note that using a global time step in the adaptive algorithm may lead to a very small time step due to the presence of much finer cells in the mesh. To reduce the computational cost, we consider the approach based on the adaptive time step from [13, 11, 12, 30]. The main idea of this approach is to group cells into different levels based on the cell sizes and applying local time step on each level to evolve from to . Recently, in our work on the shallow water model [13], we have derived a simple and efficient adaptive time evolution algorithm based on the second-order strong stability preserving Runge-Kutta methods (SSPRK2) in [16, 11, 12, 30]. This method is also capable to perform on the multi-fluid system (1.1a)-(1.1b). The algorithm can be briefly described by an example as illustrated in Fig. 4.3.

First, we group all cells in the grid at time in cell levels based on their sizes. Namely, a cell belongs to the level , if is the smallest positive integer satisfying,
(4.1) |
where are three altitudes of triangle . Next, at , we define the reference time step as the local time step on the coarsest level of cells in the mesh by considering the CFL-type condition (2.20) locally on level .
(4.2) |
where
(4.3) |
and are the local one-sided speeds of propagation (2.8) at for sides in the triangle . We set, .
Next, assume that is the number of steps needed for the higher levels to evolve from to namely with , . At , the local time step for cells on these levels is calculated by
(4.4) |
where parameter takes into account change in the local one-sided speeds of the propagation,
where are the local one-sided speeds of propagation of the cell in the level at . Therefore, on each cell of level , for each substep of the evolution from to , we apply the following two adaptive steps of the SSPRK2 method, see [16, 11, 12, 30],
(4.5a) | ||||
(4.5b) |
The flux term in (4.5a) -(4.5b) is the flux (2.6) computed at . The source term in (4.5a) -(4.5b) is the source (2.25) - (2.26) computed at with the time step . Note that, and .
Remark 4.2
If cells from different cell levels are neighbors, we use linear interpolation in time to match the time levels of such cells, see also Fig. 3.6, for the illustration of the interpolation.
4.4 A Posteriori Error Estimator
To create a robust indicator for the adaptive mesh refinement, in our prior work [13], we have derived local error estimator from the idea of Weak Local Residual (WLR) presented in [40, 18]. This error indicator has shown its advantages in accurately capturing the regions with large error in numerical simulation for Saint-Venant system of shallow water model. Hence, for the adaptive central-upwind scheme for SWEDs, we will extend the error estimator by applying the computation performed in [13] for the last equations in the system (1.1d).
Let us recall that from the weak form of the mass conservation equation (1.1a), in [13], the WLR errors at each node on mesh is given by the formula,
(4.6) | ||||
where is the number of triangles having common vertex at node . Here, the quantity is the gradient of the linear piece restricted to ,
(4.7) | ||||
where and are the three vertices of triangle .
Now, by applying the same calculation in [13] on the weak form of the last equations in the system (1.1d), we then define the WLR error of variable at node in the grid as,
(4.8) | ||||
Hence, the error in a cell takes into account both WLR errors of water surface and of variable as,
(4.9) |
where and are the WLR errors computed in (4.6) and (4.8) at a node of triangle .
The error in each cell is compared to the error tolerance computed by
(4.10) |
where is a given problem-dependent constant. Based on the error comparison, the cell is then either “flagged” for refinement/de-refinement or “no-change”.
5 Numerical Experiments
In this section, we will verify the computational efficiency of the designed adaptive central-upwind scheme. We compare the results of the adaptive method with the results of the central-upwind scheme without the adaptivity, see Section 4, on uniform triangular meshes (example of such uniform triangular mesh is outlined in Fig. 5.1). To this end, in all examples, we calculate the -errors and a ratio, , which is the ratio of the CPU times of the central-upwind algorithm without the mesh reconstruction to the CPU time of the adaptive central-upwind algorithm. To compare -errors, as well as to compare the CPU times and to compute , we consider uniform mesh and the adaptive mesh with the same size of the smallest cells. Namely, in Tables 5.1-5.8, -errors and are computed by using the uniform meshes and the corresponding adaptive meshes which are reconstructed from the coarser uniform mesh ( is the highest level of refinement in the adaptive mesh). To compute the -errors, the reference solution is obtained by applying the central-upwind method without implementing adaptivity techniques on the uniform mesh with triangles. In all experiments, we consider a zero-order extrapolation at all boundaries. In addition, we use the gravitational acceleration, and the reference density, [15] for all examples. The desingularization parameters and for calculations of the velocity components and are set and (see Section 2.1 formula (2.6) in [29]).

5.1 Example 1:
In the first example taken from [9], we will compare the performance of the adaptive central-upwind scheme and the central-upwind scheme without adaptivity on uniform triangular meshes. We also verify experimentally the advantages of the interface reconstruction in compressing the diffusion of variable density at the interface of fluids and improving the accuracy of computed solutions.
We consider the bottom topography and the following initial condition,
(5.1) |
The data is simulated in the domain . The error tolerance (4.10) for the mesh refinement in this example is set to .
In Fig. 5.2 and Fig. 5.3, we show the numerical solution of the water surface (first column) and the density (second column) at time . The solution is calculated by using the central-upwind scheme on uniform meshes on Fig. 5.2 (a, b) and Fig. 5.3 (a,b) and using the adaptive central-upwind scheme on Fig. 5.2 (c, d) and Fig. 5.3 (c,d). The adaptive meshes in Fig. 5.2 (third column) are obtained from the uniform mesh , Fig. 5.2 (a). The adaptive mesh with one level of refinement (as the highest level of refinement) is on Fig. 5.2 (c), and with two levels of refinement (as the highest level of refinement) is on Fig. 5.2 (d). As can be observed in Fig. 5.2, both and are much sharper resolved by using the adaptive central-upwind scheme. We note also, that by increasing the level of refinement from to , the number of cells in the mesh increases from cells with to cells with , but the accuracy is clearly improved with higher resolution as seen in Fig. 5.2 (c) and Fig. 5.2 (d). Also from the adaptive meshes in Fig. 5.2 (third column), one can easily see that only cells in the region having steep gradients are refined. This means that the WLR error estimator accurately detects regions in the domain for adaptive refinement/coarsening.








Next, in Table 5.1 we calculate the -errors obtained on the adaptive grids and on the fixed uniform grids. The errors obtained in the uniform meshes are approximate to the errors calculated in the corresponding adaptive meshes (the adaptive meshes have the same size of the smallest cells with the uniform meshes). However, the adaptive scheme uses fewer cells than the central-upwind scheme which does not consider the mesh reconstruction. In addition, in Table 5.2, we also compute the ratio to compare the computational cost of the two methods. The results in Table 5.1 and Table 5.2 show that the adaptive scheme produces similar accuracy as the scheme designed on fixed uniform triangular meshes, but at a less computational cost.
algorithm without adaptivity | adaptive algorithm | |||||||
one level | two levels | |||||||
cells | -error | rate | cells | -error | rate | cells | -error | rate |
0.0256 | 13,516 | 0.0257 | 12,800 | 0.0265 | ||||
0.0127 | 1.01 | 40,292 | 0.0128 | 1.00 | 38,284 | 0.0133 | 0.99 | |
0.0047 | 1.43 | 153,152 | 0.0049 | 1.39 | 60,326 | 0.0050 | 1.41 |
uniform mesh | adaptive mesh | with | adaptive mesh | with | ||
(cells) | (cells) | total | without grid generation | (cells) | total | without grid generation |
13,516 | 1.81 | 2.01 | 12,800 | 1.83 | 1.94 | |
40,292 | 1.82 | 2.14 | 38,284 | 2.14 | 2.30 | |
153,152 | 1.98 | 2.29 | 60,326 | 2.33 | 2.50 | |
average: | 1.87 | 2.15 | 2.10 | 2.27 |
In addition, we will use this example to show that interface reconstruction presented in Section 3.2 plays an important part in preserving the sharpness of the solution as well as improving the accuracy of the adaptive central-upwind scheme. On Fig. 5.4 (a), we plot the water surface (first) and density (second column) at by using the adaptive central-upwind method, but implemented without the interface tracking technique. We then compare the results shown in Fig. 5.4 (a) to the results calculated by using the adaptive scheme with the interface tracking, Fig. 5.4 (b). The adaptive meshes on Fig. 5.4 (third column) are reconstructed from the uniform mesh with one level of refinement. As can be seen in Fig. 5.4 (a), both and are very scattered around the contact wave when we do not track and reconstruct the interface. Meanwhile, in Fig. 5.4 (b), the proposed adaptive scheme, though using an adaptive mesh with fewer cells (10828 cells fewer), provides more accurate results.


In the next numerical test, we replace the flat bottom with the bottom topography that consists of two Gaussian shaped humps as
(5.2) |
The purpose of this test is to illustrate the performance of the adaptive algorithm in situations having irregular bottom topography. In Fig. 5.5, we show the contour plots of the water surface (first column) and density (second column) obtained at by using the central-upwind scheme with and without adaptivity. The computed solutions of the water surface exhibit reflecting waves where the flow meets the submerged humps. Clearly, from the plots of the adaptive meshes in Fig. 5.5 (third column), the meshes are adapted to the behavior of the flow. Hence, the WLR error estimator is capable to exactly detect the location of the steep local gradients in the solution.




We then recompute the accuracy of the solution for this example 5.1-5.2, see Table 5.3, and the CPU time ratio, see Table 5.4. The results show that the adaptive scheme uses fewer cells and takes a smaller CPU time to achieve the approximately small -errors as computed by the scheme without adaptivity. Therefore, the advantages of the adaptive scheme is maintained in examples with irregular bottom level.
algorithm without adaptivity | adaptive algorithm | |||||||
one level | two levels | |||||||
cells | -error | rate | cells | -error | rate | cells | -error | rate |
0.0271 | 16,252 | 0.0273 | 16,006 | 0.0282 | ||||
0.0134 | 1.01 | 57,300 | 0.0136 | 1.00 | 42,602 | 0.0140 | 0.99 | |
0.0050 | 1.43 | 213,268 | 0.0054 | 1.40 | 120,654 | 0.0055 | 1.41 |
uniform mesh | adaptive mesh | with | adaptive mesh | with | ||
(cells) | (cells) | total | without grid generation | (cells) | total | without grid generation |
16,252 | 1.69 | 1.89 | 16,006 | 1.84 | 1.94 | |
57,300 | 2.57 | 2.95 | 42,602 | 3.41 | 3.68 | |
213,268 | 2.24 | 2.60 | 120,654 | 2.63 | 2.84 | |
average: | 2.17 | 2.48 | 2.63 | 2.82 |
5.2 Example 2:
The second numerical example here was proposed in [9] to verify the capability of the adaptive scheme in preserving the steady state solution in “lake at rest’ problems, (1.2) and (1.3). In particular, the initial data consists of two “lake at rest” states of type (1.2) connected through the density jump corresponding to the “lake at rest” state of type (1.3) as
(5.3) |
In this example, we consider the bottom topography (5.2) on a computational domain . To reconstruct the adaptive meshes, the threshold is set, . In Fig. 5.6, we present the plots of the computed water surface (first column) and density (second column) at obtained by using the central-upwind scheme, but without adaptivity, Fig. 5.6 (a, b) and by using the adaptive algorithm Fig. 5.6 (c, d). The adaptive grids plotted on Fig. 5.6 (third column) are generated from the uniform mesh with one level of refinement , Fig. 5.6 (c), and two levels of refinement , Fig. 5.6 (d). Fig. 5.7 shows the 3D plots of the numerical solution computed by the two methods. As expected, in Fig. 5.6 and Fig. 5.7, the adaptive scheme with interface tracking exactly preserves the steady state. Hence, in Fig. 5.6 (third column), the WLR error only marks cells surrounding the circle of density jump for refinement. In addition, no pressure oscillations are observed at the interface.








Next, we will illustrate the advantages of the adaptive central-upwind scheme. We compute the -error, Table 5.5, and the CPU ratio, Table 5.6, by using the central-upwind method without adaptivity and using the adaptive algorithm presented in our work. In order to compare the computational costs and calculate , we consider uniform and adaptive meshes with the same size of the smallest cells. Table 5.5 shows that in the adaptive meshes, we achieve -errors as small as the errors obtained in the corresponding uniform meshes. However, the adaptive algorithm uses fewer cells and reduces the CPU times up to eight times. The computational cost is remarkably cut down since as illustrated in Fig. 5.6 and Fig. 5.7, only a few cells in the neighborhood of the density discontinuity have large WLR errors and are therefore marked for refinement. This example has clearly show the efficiency of the proposed scheme for numerically solving the system of multi-fluid flow.
algorithm without adaptivity | adaptive algorithm | |||||||
one level | two levels | |||||||
cells | -error | rate | cells | -error | rate | cells | -error | rate |
0.0045 | 6,284 | 0.0045 | 5,928 | 0.0045 | ||||
0.0021 | 1.10 | 22,546 | 0.0021 | 1.10 | 11,260 | 0.0021 | 1.10 | |
7.9252e-04 | 1.41 | 85,132 | 8.5079e-04 | 1.30 | 33,904 | 8.9818e-04 | 1.23 |
uniform mesh | adaptive mesh | with | adaptive mesh | with | ||
(cells) | (cells) | total | without grid generation | (cells) | total | without grid generation |
6,284 | 3.01 | 3.54 | 5,928 | 3.48 | 3.75 | |
22,546 | 3.78 | 4.76 | 11,260 | 7.76 | 8.66 | |
85,132 | 4.46 | 5.57 | 33,904 | 11.13 | 12.86 | |
average: | 3.75 | 4.62 | 7.46 | 8.42 |
5.3 Example 3:
The last example is designed to illustrate the capability of the proposed adaptive algorithm to handle irregular density interfaces. Hence, in a domain , the density jump at is given by a curve which consists of a horizontal segment, a vertical segment, and a quarter of a circle connected at their endpoints as illustrated in Fig. 5.8.

The initial condition is described by
(5.4) |
where
. We consider a bottom topography with a surbmerged hump as
In this example, we will also perform the same numerical tests which are done in previous examples. Namely, we first calculate the water surface and density at using central-upwind scheme without adaptivity and present the results in Fig. 5.9 (a, b) and Fig. 5.10 (a, b). In 5.9 (c, d) and 5.10 (c, d), we plot the results for (first column) and (second column) obtained by the adaptive scheme. The adaptive grids in 5.9 (third column) are generated from the uniform grid for one level of refinement and using the threshold . As expected, the solutions obtained in the adaptive meshes with high levels of refinement are much sharper than the solutions computed in fixed uniform meshes. The density jump moves Northeast and does not diffuse. There is no non-physical spurious waves generated at the interface. Also, as can be seen in the adaptive meshes, the WLR error indicator captures subtle features of the solution.








Finally, we compute the -errors in Table 5.7 and the CPU ratio in Table 5.8 by using the adaptive scheme and using the central-upwind method without the mesh generation. By comparing the results presented in Tables 5.7 and 5.8, one can easily see that at a reduced computational cost, the proposed adaptive central-upwind method is still able to obtain the accurate solutions for this example. In our experiments, we considered only and , but to further enhance the accuracy of the numerical solution at the lower computational cost, one can consider higher levels of refinement.
algorithm without adaptivity | adaptive algorithm | |||||||
one level | two levels | |||||||
cells | -error | rate | cells | -error | rate | cells | -error | rate |
0.0155 | 12,164 | 0.0145 | 8,994 | 0.0166 | ||||
0.0074 | 1.07 | 40,814 | 0.0074 | 0.97 | 30,263 | 0.0071 | 1.23 | |
0.0027 | 1.45 | 148,473 | 0.0028 | 1.40 | 87,214 | 0.0028 | 1.34 |
uniform mesh | adaptive mesh | with | adaptive mesh | with | ||
(cells) | (cells) | total | without grid generation | (cells) | total | without grid generation |
12,164 | 1.75 | 1.98 | 8,994 | 2.69 | 2.87 | |
40,814 | 2.71 | 3.14 | 30,263 | 3.57 | 3.86 | |
148,473 | 2.86 | 3.38 | 87,214 | 4.60 | 5.03 | |
average: | 2.44 | 2.83 | 3.62 | 3.92 |
6 Conclusion
We have developed a new adaptive well-balanced and positivity preserving central-upwind scheme on unstructured traingular meshes for shallow water equations with variable density. The scheme is designed as an extension the scheme in [13] by utilizing the interface tracking method in [9] and the interface reconstruction in [15]. The proposed scheme is capable to preserve the steady state solutions (1.2) and (1.3) and prevent the oscillation at the density jumps. In addition, to achieve an efficient strategy for the adaptive mesh reconstruction, we also obtain a robust local error indicator. We performed several challenging numerical tests for multi-fluid models and we demonstrated that the new adaptive central-upwind scheme maintains well-balanced and positivity-preserving properties and obtains high-accuracy at a reduced computational cost.
Acknowledgements
I would like to sincerely thank my advisor, Prof. Yekaterina Epshteyn, for her suggestion of the problem to investigate, her encouragement and help. The proposed approach in this paper is an extension of the adaptive method developed in [13] which is my joint work with her. Without her support, this work would not have started, progressed, or ended.
References
- [1] D. S. Balsara, M. Dumbser, and R. Abgrall, Multidimensional hllc riemann solver for unstructured meshes–with application to euler and mhd flows, Journal of Computational Physics, 261 (2014), pp. 172–208.
- [2] A. Bollermann, G. Chen, A. Kurganov, and S. Noelle, A well-balanced reconstruction of wet/dry fronts for the shallow water equations, J. Sci. Comput., 56 (2013), pp. 267–290.
- [3] S. Bryson, Y. Epshteyn, A. Kurganov, and G. Petrova, Central Upwind Scheme on Triangular Grids for the Saint Venant System of Shallow Water Equations, AIP Conference Proceedings, 1389 (2011), pp. 686–689.
- [4] S. Bryson, Y. Epshteyn, A. Kurganov, and G. Petrova, Well-balanced positivity preserving central-upwind scheme on triangular grids for the Saint-Venant system, ESAIM Math. Model. Numer. Anal., 45 (2011), pp. 423–446.
- [5] S. Bryson and D. Levy, Balanced central schemes for the shallow water equations on unstructured grids, SIAM J. Sci. Comput., 27 (2005), pp. 532–552 (electronic).
- [6] A. Chertock, Y. Epshteyn, H. Hu, and A. Kurganov, High-order positivity-preserving hybrid finite-volume-finite-difference methods for chemotaxis systems, Adv. Comput. Math., 44 (2018), pp. 327–350.
- [7] A. Chertock, K. Fellner, A. Kurganov, A. Lorz, and P. A. Markowich, Sinking, merging and stationary plumes in a coupled chemotaxis-fluid model: a high-resolution numerical approach, Journal of Fluid Mechanics, 694 (2012), pp. 155–190.
- [8] A. Chertock, A. Kurganov, and Y. Liu, Central-upwind schemes for the system of shallow water equations with horizontal temperature gradients, Numer. Math., 127 (2014), pp. 595–639.
- [9] , Central-upwind schemes for the system of shallow water equations with horizontal temperature gradients, Numerische Mathematik, 127 (2014), pp. 595–639.
- [10] P. J. Dellar, Common hamiltonian structure of the shallow water equations with horizontal temperature gradients and magnetic fields, Physics of Fluids, 15 (2003), pp. 292–297.
- [11] M. O. Domingues, S. M. Gomes, O. Roussel, and K. Schneider, An adaptive multiresolution scheme with local time stepping for evolutionary pdes, Journal of Computational Physics, 227 (2008), pp. 3758–3780.
- [12] R. Donat, M. Martí, A. Martínez-Gavara, and P. Mulet, Well-balanced adaptive mesh refinement for shallow water flows, Journal of Computational Physics, 257 (2014), pp. 937–953.
- [13] Y. Epshteyn and T. Nguyen, Adaptive central-upwind scheme on triangular grids for the saint-venant system, arXiv preprint arXiv:2011.06143, (2020).
- [14] M. A. Ghazizadeh and A. Mohammadian, An adaptive central-upwind scheme on quadtree grids for variable density shallow water equations, arXiv preprint arXiv:2008.02111, (2020).
- [15] M. A. Ghazizadeh, A. Mohammadian, and A. Kurganov, An adaptive well-balanced positivity preserving central-upwind scheme on quadtree grids for shallow water equations, Computers Fluids, 208 (2020), p. 104633.
- [16] S. Gottlieb, C.-W. Shu, and E. Tadmor, Strong stability-preserving high-order time discretization methods, SIAM Rev., 43 (2001), pp. 89–112.
- [17] C. W. Hirt and B. D. Nichols, Volume of fluid (vof) method for the dynamics of free boundaries, Journal of computational physics, 39 (1981), pp. 201–225.
- [18] S. Karni and A. Kurganov, Local error analysis for approximate solutions of hyperbolic conservation laws, Adv. Comput. Math., 22 (2005), pp. 79–99.
- [19] A. Kurganov, Finite-volume schemes for shallow-water equations, Acta Numerica, 27 (2018), pp. 289–351.
- [20] A. Kurganov and D. Levy, Central-upwind schemes for the Saint-Venant system, M2AN Math. Model. Numer. Anal., 36 (2002), pp. 397–425.
- [21] A. Kurganov and C.-T. Lin, On the reduction of numerical dissipation in central-upwind schemes, Commun. Comput. Phys, 2 (2007), pp. 141–163.
- [22] A. Kurganov and Y. Liu, New adaptive artificial viscosity method for hyperbolic systems of conservation laws, J. Comput. Phys., 231 (2012), pp. 8114–8132.
- [23] A. Kurganov and J. Miller, Central-upwind scheme for Savage-Hutter type model of submarine landslides and generated tsunami waves, Comput. Methods Appl. Math., 14 (2014), pp. 177–201.
- [24] A. Kurganov, S. Noelle, and G. Petrova, Semi-discrete central-upwind schemes for hyperbolic conservation laws and Hamilton-Jacobi equations, SIAM J. Sci. Comput., 23 (2001), pp. 707–740.
- [25] A. Kurganov, S. Noelle, and G. Petrova, Semidiscrete central-upwind schemes for hyperbolic conservation laws and hamilton–jacobi equations, SIAM Journal on Scientific Computing, 23 (2001), pp. 707–740.
- [26] A. Kurganov and G. Petrova, Central-upwind schemes on triangular grids for hyperbolic systems of conservation laws, Numer. Methods Partial Differential Equations, 21 (2005), pp. 536–552.
- [27] A. Kurganov and G. Petrova, A second-order well-balanced positivity preserving scheme for the Saint-Venant system, Commun. Math. Sci., 5 (2007), pp. 133–160.
- [28] A. Kurganov and E. Tadmor, New high-resolution semi-discrete central schemes for Hamilton-Jacobi equations, J. Comput. Phys., 160 (2000), pp. 720–742.
- [29] X. Liu, J. Albright, Y. Epshteyn, and A. Kurganov, Well-balanced positivity preserving central-upwind scheme with a novel wet/dry reconstruction on triangular grids for the Saint-Venant system, Journal of Computational Physics, 374 (2018), pp. 213 – 236.
- [30] M. Moreira Lopes, M. O. Domingues, K. Schneider, and O. Mendes, Local time-stepping for adaptive multiresolution using natural extension of runge–kutta methods, Journal of Computational Physics, 382 (2019), pp. 291 – 318.
- [31] S. Osher and R. P. Fedkiw, Level set methods: an overview and some recent results, Journal of Computational physics, 169 (2001), pp. 463–502.
- [32] T. Qin, C.-W. Shu, and Y. Yang, Bound-preserving discontinuous galerkin methods for relativistic hydrodynamics, Journal of Computational Physics, 315 (2016), pp. 323–347.
- [33] W. Rider and D. Kothe, Stretching and tearing interface tracking methods, in 12th computational fluid dynamics conference, 1995, p. 1717.
- [34] W. J. Rider and D. B. Kothe, Reconstructing volume tracking, Journal of computational physics, 141 (1998), pp. 112–152.
- [35] P. Ripa, Conservation laws for primitive equations models with inhomogeneous layers, Geophysical & Astrophysical Fluid Dynamics, 70 (1993), pp. 85–111.
- [36] , On improving a one-layer ocean model with thermodynamics, Journal of Fluid Mechanics, 303 (1995), pp. 169–201.
- [37] M. L. Sæ tra, A. R. Brodtkorb, and K.-A. Lie, Efficient GPU-implementation of adaptive mesh refinement for the shallow-water equations, J. Sci. Comput., 63 (2015), pp. 23–48.
- [38] J. A. Sethian and P. Smereka, Level set methods for fluid interfaces, Annual review of fluid mechanics, 35 (2003), pp. 341–372.
- [39] H. Shirkhani, A. Mohammadian, O. Seidou, and A. Kurganov, A well-balanced positivity-preserving central-upwind scheme for shallow water equations on unstructured quadrilateral grids, Comput. & Fluids, 126 (2016), pp. 25–40.
- [40] E. Tadmor, Local error estimates for discontinuous solutions of nonlinear hyperbolic equations, SIAM J. Numer. Anal., 28 (1991), pp. 891–906.
- [41] G. Tryggvason, B. Bunner, A. Esmaeeli, D. Juric, N. Al-Rawahi, W. Tauber, J. Han, S. Nas, and Y.-J. Jan, A front-tracking method for the computations of multiphase flow, Journal of computational physics, 169 (2001), pp. 708–759.
- [42] S. O. Unverdi and G. Tryggvason, A front-tracking method for viscous, incompressible, multi-fluid flows, Journal of computational physics, 100 (1992), pp. 25–37.
- [43] Y. Xing and X. Zhang, Positivity-preserving well-balanced discontinuous galerkin methods for the shallow water equations on unstructured triangular meshes, Journal of Scientific Computing, 57 (2013), pp. 19–41.
- [44] X. Yang and A. J. James, Analytic relations for reconstructing piecewise linear interfaces in triangular and tetrahedral grids, Journal of computational physics, 214 (2006), pp. 41–54.
- [45] X. Yang, A. J. James, J. Lowengrub, X. Zheng, and V. Cristini, An adaptive coupled level-set/volume-of-fluid interface capturing method for unstructured triangular grids, Journal of Computational Physics, 217 (2006), pp. 364–394.