1 Introduction

Sediment transport in channels and rivers can be effectively described in the framework of the Saint-Venant system of shallow water Eq. [8], by the so called Exner model [6, 10, 18, 22, 26, 30, 32], which, in one space dimension, constitutes a system of three partial differential equations for the water depth h, the discharge q and the sediment thickness \(z_b\), the first two equations describing conservation of water depth and flux, while the last equation, describing the sediment evolution, is closed by a suitable constitutive relation which links the sediment flux to the water depth averaged velocity \(u=q/h\).

By solving the Exner model, we can understand how water and sediment interact in channels and rivers, and how sediment transport patterns evolve over time. Numerical methods, such as finite volume schemes, are commonly used to solve the system of equations and compute its solutions for practical applications (see [2, 6, 9]).

The governing equations have the structure of a \(3\times 3\) quasiliner strictly hyperbolic system, whose eigenvalues \(\lambda _1<\lambda _2<\lambda _3\) represent the propagation velocities of the three families of waves.

This study primarily centers on subcritical flows, where the water velocity remains lower than the speed at which surface waves propagate. This scenario holds significant importance in various practical situations and is comparatively simpler to examine than the supercritical counterpart. It provides us with the opportunity to explore the interplay between water and sediment and delve into how the flow’s attributes impact sediment transportation mechanisms.

For weak interaction, which depends on the coupling between the sediment and the water velocity, the wave speed \(|\lambda _2|\) corresponding to the sediment transport is much smaller than the speeds of the surface waves, \(|\lambda _1|\) and \(|\lambda _3|\). Under such conditions, if one is mainly interested in the sediment transport and not in the detail of the surface waves, the system can be considered stiff, since the time scales associated to the sediment motion are much longer than those associated to the surface waves. Explicit schemes have to satisfy the classical CFL (Courant-Friedrichs-Lewy) condition on the time step [5, 9, 23], based on the fastest eigenvalue of the system [21, 33]. For such a reason, semi-implicit schemes have been proposed, which treat implicitly the fast water waves, thus requiring a much less restrictive CFL condition.

Recently, Garres-Díaz et al. proposed a semi-implicit \(\theta \)-method approach for sediment transport models [11] by which, choosing \(\theta \) slightly larger than 0.5 to damp out high frequency oscillations, an increase in both efficiency and stability is obtained [7].

In certain cases, as noted in [25], it has been observed that the evolution of the sediment can be adequately captured without explicitly resolving the intricate details of the surface water waves, further motivating the use of a semi-implicit scheme which allows larger time steps.

Due to the gradual evolution of sediment, the equations need to be integrated over times that are generally much longer than the time it takes for surface waves to cross the computational domain. Therefore, it’s preferable to apply non-reflective conditions to these waves. This helps ensure that the simulated wave behavior at the edges of the computational area closely resembles what is expected in an open environment. As a result, this technique enables more precise and dependable simulations of sediment transport processes.

The goal of the paper is to study the effect of different boundary conditions on the outflow edge of the computational domain for long time simulation, when a wave train is imposed on the inflow edge.

Several strategies can be employed to mitigate the effect of spurious waves reflected at the edge of the computational domain, and to minimize their impact, see for example [12, 13, 15, 19, 20, 31, 34].

A particularly interesting approach is the one presented in [19], in which the waves are decomposed according to the characteristic structure of the system in a buffer region beyond the outflow edge. Then the outgoing waves are artificially damped, and as a consequence they will produce negligibly small reflected waves.

An alternative method involves the utilization of Higdon’s boundary conditions, as detailed in the works of Higdon [16, 17], which were then adapted to shallow water equations by Givoli and Neta [13]. These conditions present a unique approach that blends concepts of wave absorption and reflection, aimed at achieving a non-reflecting effect. In order to accomplish this, a distinct region known as the sponge layer is introduced, encircling the outflow boundaries of the computational domain. The sponge layer is characterized by an absorption function \(\alpha ({\textbf {x}},t)\), which exhibits gradual changes along the normal direction to the boundary. This alteration in the absorption function creates an area where waves are neither entirely absorbed nor entirely reflected, thus achieving the desired non-reflecting outcome. This approach allows the simulated waves to behave in a manner closely resembling the characteristics of waves in an open environment, ultimately enhancing the accuracy and reliability of simulations involving sediment transport processes.

Within existing literature, certain methods rely on having a clear and direct expression of the system’s characteristics. However, these methods tend to be intricate and challenging to implement in the present scenario. In our study, we will adopt two approaches that diverge from the necessity of understanding the specific structural traits of the system, as well as from relying on the particular technique chosen for the system’s temporal evolution.

  1. 1.

    Boundary correction technique: it is based on the addition of one or few extra cells beyond the outflow boundary, in which the solution is locally approximated by a simple wave (see, e.g. [35]) corresponding to the outgoing fast wave [28]. Such a simple wave does not have characteristics pointing inside the domain. The quality of the method depends crucially on how well the solution is approximated by a simple wave.

  2. 2.

    Absorbing layer technique: it is based on the introduction of a sufficiently large buffer region around the area of interest in which the signal is smoothly damped.

The paper is structured as follows:

  • Section 2 provides an introduction to the one-dimensional model equations and discusses their significance in capturing sediment transport phenomena.

  • Section 3 presents the details of the semi-implicit numerical method employed to solve the governing equations, highlighting its advantages in handling the stiffness of the system.

  • Section 4 illustrates the two main techniques adopted to reduce the effect of reflection.

  • In Section 5, the effectiveness of the different boundary conditions is assessed through a series of tests involving outflow traveling wave trains on the flat bottom.

  • Finally, Section 6 concludes the paper, summarizing the findings and discussing the implications of the study.

By examining the effect of different boundary conditions and evaluating their performance in long-time simulations, this paper aims at improving numerical modeling of sediment transport in rivers and channels.

2 1D Exner model

Let us start from 1D shallow water equations on a time independent bathymetry b(x):

$$\begin{aligned} {\left\{ \begin{array}{ll} h_t + q_x =0\\ \displaystyle q_t + \left( \frac{q^2}{h} + \frac{g}{2}h^2 \right) _x = -ghb_x, \end{array}\right. } \end{aligned}$$
(2.1)
Fig. 1
figure 1

Shallow water equations: water-depth h(x) and bottom topography b(x)

where x denotes the space coordinate along the axis of the channel and t is time; q(xt) represents the water flux per unit width (discharge) and h(xt) the water thickness; g the acceleration due to gravity; b(x) denotes the bottom topography; furthermore, the following relation holds \(q(x,t) =h(x,t)u(x,t),\) in which u is the depth averaged horizontal velocity. See Fig. 1 for a practical illustration of the quantities h and b.

Replacing q by hu in the second equation, making use of the equation for h, and assuming always positive h, one obtains the following equation for the velocity:

$$\begin{aligned} u_t + u u_x + g h_x = 0. \end{aligned}$$
(2.2)

The Exner system, adopted in this work, has been obtained coupling shallow water equation (2.1) with an equation describing the sediment transport. The system then can be written as

$$\begin{aligned} {\left\{ \begin{array}{ll} h_t + q_x = 0,\\ \displaystyle q_t + \left( \frac{q^2}{h} + \frac{1}{2}gh^2\right) _x = -gh(b + z_b)_x, \\ (z_b)_t + (q_b)_x = 0, \end{array}\right. } \end{aligned}$$
(2.3)

where the driving force on the RHS now depends on the total bottom elevation (bathymetry b(x) and sediment layer thickness \(z_b(x,t)\), see Fig. 2).

In order to close system (2.3) we adopt the Grass formulation [6, 14, 29],

$$\begin{aligned} q_b = \xi A_g u|u|^{m-1}, \end{aligned}$$
(2.4)

in which m comes out from experimental results, \(m\in [1,4],\) \(A_g\) is the interaction between the fluid and the sediment, in general \(A_g\in ]0,a[\) with \(a>0,\) and \(\xi = {1}/{(1-\rho _0)}\) where \(\rho _0\in [0,1)\) is the porosity of the sediment layer. Throughout this paper we shall assume that the porosity is constant. Unless otherwise stated, the quantities are dimensional, and SI unit system has been adopted.

System (2.3) does not admit a conservation form, because the bottom profile \(S(x,t) = b(x) + z_b(x,t)\) contains one of the field variables. In terms of the unknown field

$$\begin{aligned} W = ( h, q, S)^\top , \end{aligned}$$

the system can be written in quasilinear form as

$$\begin{aligned} \frac{\partial W}{\partial t} + A(W)\frac{\partial W}{\partial x} = 0, \end{aligned}$$
(2.5)

where

$$\begin{aligned} A(W) = \begin{bmatrix} 0 &{} 1 &{} 0 \\ gh - u^2 &{} 2u &{} gh \\ \alpha &{} \beta &{} 0 \end{bmatrix}, \end{aligned}$$

with \( \alpha \equiv \partial _h q_b,\) and \(\beta \equiv \partial _q q_b\). Assuming \(u>0\) in the whole domain one has \(\beta = m \xi A_g u^{m-1}/h\) and \(\alpha = -u\beta \).

The non-conservative system is strictly hyperbolic if and only if the characteristic polynomial:

$$\begin{aligned} p_{\lambda }(\lambda ) = -\lambda ((u-\lambda )^2 -gh) + gh\beta (\lambda -u), \end{aligned}$$

has three distinct real roots \(\lambda _1<\lambda _2<\lambda _3.\) As \(A_g \rightarrow 0,\) \(\beta \) vanishes, and the three eigenvalues become \(\lambda _1 = u-c\), \(\lambda _2 = 0\) and \(\lambda _3 = u+c\), with \(c=\sqrt{gh}\).

The main goal of this paper is to study the effect of different boundary conditions in the application of semi-implicit schemes to the Exner model. Specifically, the focus is on analyzing the impact of these conditions when simulating a group of waves imposed at the inflow boundary and their propagation until reaching the outflow boundary. The occurrence of wave reflections, if not properly handled, can have a significant influence on the sediment evolution.

Furthermore, semi-implicit schemes based on IMEX methods for time advancement offer several advantages in terms of stability and efficiency, particularly in regimes where the local Froude number \(F_r = |u|/c\) is relatively small, such as \(F_r < 1/2\), and the quantity \(\beta \) is much smaller than 1. As a result, our focus is primarily on scenarios characterized by small values of the interaction coefficient \(A_g\) between the fluid and the sediment. By considering these specific conditions, we plan to leverage the benefits provided by IMEX methods, which are well-suited for accurately and efficiently simulating the coupled dynamics of fluid and sediment.

For sufficiently small values of \(A_g\), such that \(\beta \ll 1\), performing an asymptotic expansion of the eigenvalues, we obtain (assuming \(u>0\))

$$\begin{aligned} \lambda _1&= u - \sqrt{gh} - \beta \frac{\sqrt{gh}}{2(1 - F_r)} + O(\beta ^2), \end{aligned}$$
(2.6)
$$\begin{aligned} \lambda _2&= \frac{\beta g h u}{gh - u^2} + O(\beta ^2) = \beta u /(1-F_r^2) + O(\beta ^2), \end{aligned}$$
(2.7)
$$\begin{aligned} \lambda _3&= u + \sqrt{gh} + \beta \frac{\sqrt{gh}}{2(1 + F_r)} + O(\beta ^2). \end{aligned}$$
(2.8)

In the next section we shall derive the semi-implicit scheme that we adopt in the paper, in which, under the assumption of small Froude number, we treat implicitly the surface waves and explicitly the sediment wave.

The Exner system (2.3) can be reformulated in terms of \(\eta (x,t)\) by choosing \(\eta (x,t) = h(x,t) + b(x) + z_b(x,t)\) as the variable that represents the elevation of the undisturbed water surface, instead of the water thickness h (see Fig. 2). This alternative formulation facilitates the construction of a well-balanced numerical method [4, 9]. System (2.3) becomes:

$$\begin{aligned} {\left\{ \begin{array}{ll} \eta _t + (q+q_b)_x = 0\\ q_t + (qu)_x + gh(\eta )_x = 0 \\ (z_b)_t + (q_b)_x = 0, \end{array}\right. } \end{aligned}$$
(2.9)

with \(h = \eta -b-z_b\), \(u=q/h\), and \(q_b\) given by Eq. (2.4).

Fig. 2
figure 2

1D Exner model: water surface \(\eta (x);\) water-depth h(x);  sedimental layer \(z_b(x)\) and bottom topography b(x)

3 Semi implicit scheme

In this section we describe the semi-implicit schemes adopted in the paper, respectively of first and second order of accuracy in space and time. In both schemes, the surface waves will be treated implicitly, while the slow wave corresponding to the sediment evolution is treated explicitly.

3.1 Mesh

We consider a uniform mesh in 1D. The space domain is given by an interval \(\Omega \) which is uniformly discretized in N cells, each of size \(\Delta x\). The center of cell \(\omega _i=[x_{i-1/2},x_{i+1/2}]\) is denoted by \(x_i\), \(i=1, \ldots , N\). The time domain \(\mathcal {T}=[0,T]\), with final time \(T>0\), is split into time intervals \([t^n,t^{n+1}]\), \(n\in \mathbb {Z}^+\), and time-steps \(\Delta t_n=t^{n+1}-t^n\) subject to a CFL (Courant-Friedrichs-Lewy) like condition.Footnote 1

Definitely, we denote by \(U_i^n\) an approximation on the mean value of the field variable \(U = [\eta ,q,z_b]^\top \) over cell \(I_i\) at time \(t=t^n,\)

$$\begin{aligned} U^n_i\cong \frac{1}{\Delta x}\int _{x_{i-\frac{1}{2}}}^{x_{i+\frac{1}{2}}}U(x,t^n)dx. \end{aligned}$$

3.2 First order scheme

Let us consider system (2.9). Following the idea proposed in [3], such a system can be approximated as a large system of ODE’s, in which we adopt suitable discrete operators for the approximation of space derivatives (method of lines). The key point in [3] is to identify which specific term has to be treated implicitly and which can be treated explicitly. We rewrite system (2.9) identifying the stiff and non stiff dependence on the unknown vector field:

$$\begin{aligned} U' = \tilde{K}(U_E,U_I), \end{aligned}$$
(3.1)

where \(\tilde{K}(U_E,U_I)\) is given by

$$\begin{aligned} \tilde{K}(U_E,U_I) = \begin{bmatrix} -(q_I+(q_b)_E)_x \\ -((qu)_E)_x - gh_E(\eta _I)_x \\ -((q_b)_E)_x, \end{bmatrix} \end{aligned}$$
(3.2)

in which, the subscript E and I denote which term has to be treated explicitly (non stiff dependence) and which one implicitly (stiff dependence).

By replacing differential operators with suitable discrete ones, with a slight abuse of notation the semi-discrete scheme can be written in the form

$$\begin{aligned} U' = K(U_E,U_I), \end{aligned}$$
(3.3)

with

$$\begin{aligned} K(U_E,U_I) = \begin{bmatrix} -\hat{D}_x((q_b)_E) &{} -D_x(q_I) \\ -\hat{D}_x((qu)_E) &{} -gh_ED_x(\eta _I) \\ -\hat{D}((q_b)_E) &{} \end{bmatrix}. \end{aligned}$$
(3.4)

Finally, the fully-discrete first order in time semi-implicit scheme can be written as:

$$\begin{aligned} {\left\{ \begin{array}{ll} \eta ^{n+1} = \eta ^n - \Delta t \hat{D}_x(q_b^n) - \Delta t D_x(q^{n+1}),\\ q^{n+1} = q^n - \Delta t \hat{D}_x(q^nu^n) - \Delta tgh^nD_x(\eta ^{n+1}), \\ z_b^{n+1} = z_b^n - \Delta t \hat{D}_x(q_b^n), \end{array}\right. } \end{aligned}$$
(3.5)

where the discrete operators \(D_x\) and \(\hat{D}_x\) applied to a given flux function F(U) are respectively defined as:

  • \(D_x(\tilde{F}_i) = (\tilde{F}_{i+\frac{1}{2}} - \tilde{F}_{i-\frac{1}{2}})/{\Delta x},\) where \(\tilde{F}_{i\pm \frac{1}{2}}\) is suitably defined on cell edges (see Remark 1 below);

  • \(\hat{D}_x(\tilde{F}_i) = (\tilde{F}_{i+\frac{1}{2}} - \tilde{F}_{i-\frac{1}{2}})/{\Delta x},\) where

    $$\begin{aligned} \tilde{F}_{i+\frac{1}{2}} = \frac{1}{2}\Bigl ( \tilde{F}(U_{i+\frac{1}{2}}^{-}) + \tilde{F}(U_{i+\frac{1}{2}}^{+}) - \alpha _{i+\frac{1}{2}}\big (U_{i+\frac{1}{2}}^{+} - U_{i+\frac{1}{2}}^{-}\big )\Bigr ), \end{aligned}$$

    is the Rusanov flux and \(\alpha _{i+\frac{1}{2}}\) is related to the eigenvalues of the explicit sub-system. In our case \(\alpha _{i+\frac{1}{2}} = \max (|u^-_{i+\frac{1}{2}}|,|u^+_{i-\frac{1}{2}}|)\) and is much smaller than \(|\lambda _1|\) and \(|\lambda _3|\). \(U_{i\pm \frac{1}{2}}^{\pm }\) are obtained by piecewise linear reconstruction with MinMod slope limiter.

In order to distinguish the explicit part from the implicit one in system (3.5), we set \(\eta ^*\) and \(q^*\) the outcome of the explicit part of the first and second equation. In this way, the system can be rewritten as:

$$\begin{aligned} {\left\{ \begin{array}{ll} q^{*} = q^n - \Delta t \hat{D}_x(q^nu^n),\\ \eta ^{*} = \eta ^n - \Delta t \hat{D}_x(q_b^n) - \Delta t \hat{D}_x(q^{*}),\\ \eta ^{n+1} = \eta ^* + g\Delta t^2 D_x(h^nD_x(\eta ^{n+1})),\\ q^{n+1} = q^* - \Delta tgh^nD_x(\eta ^{n+1}), \\ z_b^{n+1} = z_b^n - \Delta t \hat{D}_x(q_b^n), \\ h^{n+1} = \eta ^{n+1} - z_b^{n+1} - b. \end{array}\right. } \end{aligned}$$
(3.6)

Remark 1

The discrete operators \(D_x\), in the third and fourth lines of Eq. (3.6) respectively, are so defined:

$$\begin{aligned} \left. D_x(h^nD_x(\eta ^{n+1}))\right| _i = \frac{1}{\Delta x^2}\Bigl (h_{i+\frac{1}{2}}^n(\eta _{i+1}^{n+1} - \eta _{i}^{n+1}) - h_{i-\frac{1}{2}}^n(\eta _{i}^{n+1} - \eta _{i-1}^{n+1})\Bigr ), \end{aligned}$$

where

$$\begin{aligned} h_{i\pm \frac{1}{2}}^n = \frac{1}{2}(h_{i}^n + h^n_{i\pm 1}), \> \textrm{and} \> \left. D_x(\eta ^{n+1})\right| _i = \frac{1}{2\Delta x}( \eta _{i+1}^{n+1} - \eta _{i-1}^{n+1}). \end{aligned}$$

3.3 Second order scheme

In the previous section we derived a semi-implicit scheme which is first order in time and second order in space. In this section we focus on the second order IMEX Runge–Kutta procedure [1, 27] to obtain second order both in space and time.

In order to obtain a second order semi-implicit time discretization we adopt the technique introduced in [3], which is based on (apparently) doubling system (3.3), and applying to it an IMEX Runge–Kutta method for partitioned systems.

An IMEX Runge–Kutta scheme is defined by a double Butcher tableau of the form

$$\begin{aligned} \begin{array}{c|cc} \tilde{c} &{} \tilde{A} \\ \hline &{} \\ {} &{} \tilde{b}^\top \end{array} \hspace{3 cm} \begin{array}{c|cc} {c} &{} {A} \\ \hline &{} \\ {} &{} {b}^\top \end{array} \end{aligned}$$

where the lower triangular matrix \(\tilde{A}\in \mathbb {R}^{s\times s}\) with zero diagonal and the vectors \(\tilde{c}\) and \(\tilde{b}\) characterize the explicit part of the scheme, while the triangular matrix \({A}\in \mathbb {R}^{s\times s}\) and the vectors c and b identify the implicit part of the IMEX scheme. If the implicit scheme is stiffly-accurate, i.e. if \(a_{si} = b_i,\> i=1,\ldots ,s\), then the last stage of the method coincides with the numerical solution. In such a case, applying the IMEX scheme to system (3.1) one obtains

  • Stage values: For \(i=1,\ldots ,s\) compute

    $$\begin{aligned} U^{(i)}_E&= U^n + \Delta t\sum _{j=1}^{i-1}a_{i,j}^EK\left( U_E^{(j)},U_I^{(j)}\right) \\ U^{(i)}_I&= U^n + \Delta t \left( \sum _{j=1}^{i-1}a_{i,j}^I K\left( U_E^{(j)},U_I^{(j)}\right) + a_{i,i}^I K\left( U_E^{(i)},U_I^{(i)}\right) \right) . \end{aligned}$$
  • Numerical solution: \(U^{n+1} = U_I^{(s)}.\)

For more details about the method the reader may consult [3].

Here we consider the IMEX scheme defined by the following double Butcher tableau [3]:

$$\begin{aligned} \begin{array}{c|cc} 0 &{} 0 &{} \\ c &{} c &{} 0\\ \hline &{} 1-\gamma &{} \gamma \end{array} \hspace{3 cm} \begin{array}{c|cc} \gamma &{} \gamma &{} \\ 1 &{} 1-\gamma &{} \gamma \\ \hline &{} 1-\gamma &{} \gamma \end{array} \end{aligned}$$
(3.7)

with \(\gamma = 1 - \frac{1}{\sqrt{2}}\) and \(c = \frac{1}{2\gamma }.\) Applying the scheme defined by (3.7) we have:

  1. 1.

    \(U_E^{(1)} = U^n,\)

  2. 2.

    \(U_I^{(1)} = U^n + \Delta t\gamma K(U_E^{(1)},U_I^{(1)}),\)

  3. 3.

    \(U_E^{(2)} = U^n + \Delta tc K(U_E^{(1)},U_I^{(1)}),\)

  4. 4.

    \(U_I^{(2)} = U^n + \Delta t(1-\gamma ) K(U_E^{(1)},U_I^{(1)}) + \Delta t\gamma K(U_E^{(2)},U_I^{(2)}),\)

  5. 5.

    \(U^{n+1} = U_I^{(2)}.\)

Remark 2

Observe that \(U_E^{(2)},U_I^{(2)}\) and \(U_I^{(1)}\) have a common term, thus step 3 and 4 may be rewritten as:

$$\begin{aligned} U_E^{(2)}&= \left( 1-\frac{c}{\gamma }\right) U^n + \frac{c}{\gamma }U_I^{(1)}; \\ U_I^{(2)}&= \left( 1-\frac{1-\gamma }{\gamma }\right) U^n + \frac{1-\gamma }{\gamma }U_I^{(1)} +\Delta t\gamma K(U_E^{(2)},U_I^{(2)}). \end{aligned}$$

4 Outflow boundary treatment

As we mentioned before, imposing a wave train on the inflow boundary of the domain, when the signal arrives to the outflow edge, the outflow boundary condition is crucial in determining the wave pattern in the domain, after a long time.

Here we compare two different strategies to avoid the reflected waves that are observed when zero Neumann conditions on all field variables (NC) are imposed on the outflow boundary:

  1. 1.

    Simple wave approximation (SC). The solution on the ghost cell next to the outflow boundary is approximated by a simple wave for shallow water equations corresponding to the outgoing wave. Here we assume that the bottom is flat next to the outflow boundary. Details about the use of this procedure can be found in [28].

  2. 2.

    Absorbing layer conditions (AC). To effectively manage the propagation of waves at the outflow boundary of the computational domain, a damping layer is introduced. This layer implements a damping mechanism in the equations to gradually reduce the amplitude of the waves as they extend beyond the outflow edge. The primary objective of this layer is to suppress any undesired reflections and ensure a seamless and precise simulation of the wave dynamics. By incorporating suitable damping conditions, the numerical method can successfully capture the intended behavior of the waves as they propagate away from the computational domain. In this approach, we split the entire domain \(\Omega \) into two regions \(\Omega = \Omega _E \cup \Omega _A,\) where \(\Omega _E\) is the domain in which we adopt the undamped Exner model, while \(\Omega _A\) represents the absorbing domain that we adopt to damp the waves. In practice, for the first order scheme we adopt Eq. (3.6) in \(\Omega _E\), while in the domain \(\Omega _A\) we adopt the following semi-discrete scheme

    $$\begin{aligned} {\left\{ \begin{array}{ll} q^{*} = q^n - \Delta t \hat{D}_x(q^nu^n) - \Delta t(q^n-q^0)\varphi (x);\\ \eta ^{*} = \eta ^n - \Delta t \hat{D}_x(q_b^n) - \Delta t \hat{D}_x(q^{*}) - \Delta t(\eta ^n-\eta ^0)\varphi (x);\\ \eta ^{n+1} = \eta ^* + g\Delta t^2 D_x(h^nD_x(\eta ^{n+1}));\\ q^{n+1} = q^* - \Delta tgh^nD_x(\eta ^{n+1}); \\ z_b^{n+1} = z_b^n - \Delta t \hat{D}_x(q_b^n) - \Delta t(z_b^n-z_b^0)\varphi (x), \end{array}\right. } \end{aligned}$$
    (4.1)

    where \(\varphi (x):= \Bigl ((x-x_R)/\sigma (l)\Bigr )^2,\) with \(x_R\) we denote the outflow boundary of the domain \(\Omega _E\) and \(\sigma (l)\) represents a length scale which is chosen to be much larger than the wavelength of the wave train in order to avoid reflected waves.

5 Numerical experiments

This section focuses on the numerical comparison between the two different techniques for treating the condition at the outflow edge and the standard NC conditions. We consider a single numerical experiment in which we show snapshots of the numerical solution at various times, obtained with standard NC condition or with the two proposed techniques to delineate the different effects.

In all our tests we adopt the following value for the time step:

$$\begin{aligned} \Delta t_n = \textrm{CFL}\frac{\Delta x}{\lambda _{\textrm{max}}^n }, \end{aligned}$$

where \(\lambda _{\textrm{max}}^n\) is the maximum, over cells, of the spectral radius of absolute of matrix \(A(U^n)\). We adopt an approximation of the eigenvalues of A given in (2.6)–(2.7)–(2.8), neglecting the \(O(\beta ^2)\) terms. Furthermore we monitor the material CFL

$$\begin{aligned} \text {MCFL} = \frac{u^n_{\textrm{max}} \Delta t_n}{\Delta x}, \end{aligned}$$

where \(u^n_{\textrm{max}} = \max _j{|u^n_j|}\), and verify that it is always less than 1.

Fig. 3
figure 3

Left-boundary (inflow-boundary) mesh with ghost point \(x_0\)

Fig. 4
figure 4

Water-depth h, velocity u, and thickness of the sediment layer \(z_b\) at time \(t = t_0 = 1\). Here zero Neumann conditions (NC) have been adopted for the outflow boundary treatment

Fig. 5
figure 5

h, u, and \(z_b\) at time \(t = t_1 = 4\). NC boundary conditions

Fig. 6
figure 6

h, u and \(z_b\) at final time \(t = t_1 = 4\). SC has been adopted for the outflow boundary treatment

Fig. 7
figure 7

h, u, and \(z_b\) at time \(t = t_1 = 4\). Absorbing domain \(\Omega _A\) (AC) has been adopted for the outflow boundary treatment

Let us consider the one-dimensional Exner system (2.9) with the Grass equation (2.4) and the second order semi-implicit method illustrated before. The common parameters are so set (in SI units): the computational domain is \(\Omega = \Omega _E \cup \Omega _A = [-2,4]\cup [4,10];\) CFL is set to 7.7,  (which gives \(\text {MCFL} < 0.5\) in all tests); the Grass parameter is \(A_g = 0.1,\) \(\xi = 1/(1-\rho _0)\) where \(\rho _0 = 0.2\) and \(m=3;\) the acceleration due to the gravity is \(g = 9.81;\) the bottom topography b is set to zero. We show snapshots of the solution at four different times: a) before the waves touch the outflow boundary of the computational domain \(\Omega _E\), \(t_0 = 1\); after a reflected wave reached the inflow boundary, \(t_1 = 4\), after two full reflections, \(t_2 = 8\) and after a long time, \(t_3 = 10^6.\)

Fig. 8
figure 8

h, u and \(z_b\) time \(t = t_2 = 8\). NC has been adopted for the outflow boundary treatment

Fig. 9
figure 9

h, u and \(z_b\) final time \(t = t_2 = 8\), with simple wave approximation (SC) outflow boundary treatment

Fig. 10
figure 10

h, u, and \(z_b\) at time \(t = t_2 = 8\). Absorbing domain \(\Omega _A\) (AC) has been adopted for the outflow boundary treatment

The initial conditions are constants given by

$$\begin{aligned} (h(x,0),u(x,0),z_{b}(x,0)) = (1,0.2,0.1). \end{aligned}$$

The boundary conditions on the inflow edge are imposed by assigning the velocity at the entrance, \(u(x_L,t) = \phi (t)\), and imposing a compatibility condition on h given by Eq. (2.2), assuming that the sediment profile is flat at the entrance, i.e. \(\partial _x z_b(0,t) = 0\). All these conditions are imposed to second order accuracy on the discrete scheme by assigning the following value at the ghost cell next to the inflow of the domain \(\Omega _E\) (see Fig. 3):

$$\begin{aligned} \begin{bmatrix} h_0 \\ u_0 \end{bmatrix} = \begin{bmatrix} h_1 + 1/g(\phi _t\Delta x + 0.5((u_1)^2 - \phi ^2)) \\ 2\phi -u_1 \end{bmatrix}. \end{aligned}$$

In all tests we adopt \(\phi (t) = 0.2 + \mathcal {A}(\sin (\omega t))\) in which \(\mathcal {A}\) and \(\omega \) denote amplitude and frequency of the waves in our case set to 0.01 and 14 respectively [24], and \(\phi _t \equiv d\phi /dt.\)

Fig. 11
figure 11

h, u, and \(z_b\) at final time \(t = t_3 = 10^6\). Zero Neumann condition (NC) has been adopted for the outflow boundary treatment

Fig. 12
figure 12

h, u and \(z_b\) at time \(t = t_3 = 10^6\). Simple wave approximation (SC) has been adopted for the outflow boundary treatment

Fig. 13
figure 13

h, u, and \(z_b\) at final time \(t = t_3 = 10^6\). Absorbing domain \(\Omega _A\) (AC) has been adopted for the outflow boundary treatment

All the figures show the numerical solutions for water-depth h velocity u and sediment layer thickness \(z_b\) in which different conditions have been applied to the outflow boundary of the computational domain \(\Omega _E.\) In particular, Fig. 4 shows the numerical solutions before the waves touch the outflow boundary of \(\Omega _E\); Figs. 5, 6, 7 exhibit the numerical solutions after the short time \(t=4\); Figs. 8, 9, 10 display the numerical solutions at the medium time \(t=8;\) and Figs. 11, 12, 13 show the numerical solutions after the long time \(t=10^6.\) After two full reflections, Figs. 8, 9, 10, the use of the approximate simple wave near the outflow boundary mitigates the effect of the reflected wave. Finally, after a very long time, only the technique based on the absorbing layer is able to effective eliminate the reflected waves. It is remarkable to observe that the two approaches (NC) and (SC) after a long time give very similar results, i.e. the sediment profile assumes a periodic structure with a period which is twice the original one, while the h profile is almost identical in the two cases, in spite of the fact that the effect of the reflected waves is considerably smaller for (SC) boundary conditions than in the case of (NC) ones.

6 Conclusion

The purpose of this work is the comparison of two different techniques imposed beyond the outflow boundary to mitigate the effect of reflected waves which appear when a wave train is imposed on the inflow boundary for the one-dimensional Exner model [24, 25].

Sediment transport occurs at a much lower speed than surface waves. Consequently, in order to follow the motion of the sediment over a large fraction of the computational domain, the equations have to be integrated for times which are much longer than surface waves travel time. If no particular care is taken at the boundaries, during such as long time span, surface waves reflect back and forth inside the domain, thus completely changing the sediment dynamics that one would observe by integrating the same equations on a much longer computational domain, i.e. with no reflections.

To optimize computational efficiency, the adoption of non-reflective boundary conditions on the domain’s outflow side holds significant importance.

Two distinct methods for mitigating the impact of reflected waves propagating inward from the outflow boundary, a phenomenon commonly encountered when employing standard zero Neumann conditions, have been contrasted. The conventional zero Neumann condition gives rise to substantial reflective repercussions that can severely undermine the accuracy of the solution, especially after just a few instances of reflection.

The first technique is to use, in the ghost cell next to the outflow boundary, a numerical solution approximated by the a simple wave of shallow water equations with constant bathymetry (SC). Such a technique has been introduced in the PhD thesis [28] in the context of Euler equations of compressible gas dynamics, where it was shown to be effective in reducing the impact of reflected waves by approximately one order of magnitude. The technique is very efficient, since it requires a special treatment of just one cell. However, after a sufficiently long time, this technique is not sufficient to make the reflection effects negligible.

The second technique consists in adding a sufficiently large auxiliary domain, in which the waves are gradually dampened out to the point of producing no noticeable reflections (AC). This technique is more expensive than the previous one, because it requires solving the system in an additional domain whose length is large compared to a typical wavelength, however it completely solves the problem of the reflected waves.

There are still a few things that require improvements and generalizations:

  • Two approximations, adopted in the present paper, may reduce the effectiveness of the technique based on the approximate simple waves. Such approximations consists in assuming that the inflow sediment profile is flat on the inflow edge of the domain, so that we can easily impose the compatibility condition on the water depth based on eq. (2.2), and in assuming that we can approximate a simple wave of the whole Exner system by a simple wave for shallow water on constant bathymetry. Both approximations have been made in order to simplify the treatment and resort to analytical expressions. It would be interesting to explore semi-analytical conditions which may improve the boundary treatment by (SC).

  • It would be interesting to further understand the period-doubling effect on the sediment profile induced by the reflected waves, which appear to be very robust and almost independent on the detail of the reflection mechanism.

  • In the current method the stability condition on the time step is determined by the fluid velocity, which may be much larger than the sediment wave speed. We plan to construct a scheme in which the CFL condition that determines the stability is based on the sediment wave rather than on the fluid velocity.

  • We plan to explore other, more efficient techniques to eliminate reflected waves.

All such generalizations and extension will be subject of future investigation.