Introduction

Due to the complexity of sediment transport and bed evolution models, there is still no widely accepted approach on how these processes should be modeled. While many authors have the same approach regarding the suspended sediment transport processes, the remaining sediment mechanisms are still being explored. However, splitting the sediment into suspended and bed sediment allows the assumption that suspended sediment particles move continuously with a velocity that equals the flow velocity. This hypothesis makes it possible to derive the suspended sediment mass continuity equation in its standard form.

One of the aspects where the authors approaches usually differ is the way they model the sediment mixture. Most of the existing sediment transport models represent the sediment mixture via a characteristic diameter (e.g., the model SUTERNCH-2D specified in van Rijn et al. (1990) or FAST2D detailed in Rodi 2000), while they do not consider all of the sediment-related processes. Another common solution is to model the sediment as uniform. One of the more important improvements in the sediment modeling was when authors defined the sediment as a mixture made of different-sized particles such as the BRALLUVIAL model presented in Holly et al. (1985), or SEDICOUP described in Holly and Rahuel (1990a, b). Table 1 gives an overview of the analyzed sediment transport models, where it can be seen that most authors adopted the idea of representing the sediment mixture with a number of size classes. This is because when modeled that way, the computed total sediment transport gives better agreement with the measurements, than in cases when the assumption of uniform sediment is employed.

Table 1 Overview of sediment transport and bed evolution models

Unlike the suspended sediment transport, the transport of bead load and near bed sediment, and the exchange mechanisms between these and the suspension are far from univocal. There are three main approaches according to which these mechanisms are modeled. The first is based on the homogenous layer developed by Karim and Kennedy (1982) and Karim et al. (1983, 1987). This layer consists of a sediment mixture that is potentially exposed to the flow. The height of the layer is a value between the height of the dunes and the height of a bed particle jump. Models BRALLUVIAL (Holly et al. 1985) and CHARIMA (Holly et al. 1990) and models from authors Armanini and Giampaolo (1988), Rahuel et al. (1989), and many others rely on the homogenous layer concept.

The second approach is based on the bed load layer, where particles moving as bed load are considered (van Rijn 1987), while the height of the layer equals the height of the particle’s jump. Some of the models that endorsed this assumption are the FAST2D (Bui et al. 1998), the model developed by Rodi (2000), FAST3D (Wu et al. 2000), or its newer version introduced by Bui and Rutschmann (2006, 2010).

Finally, the third approach is the active layer and sub-layers (stratums) approach suggested by Spasojevic and Holly (1990). The idea of this approach is that the active layer is made from sediment particles potentially exposed to the flow and particles already moving in the form of bed load. Some of the models that rely on this approach are the MOBED2 (Spasojevic and Holly 1990), SEDICOUP (Holly and Rahuel 1990a, b), and CH3D-SED (Gessler et al. 1999) and models developed by authors Yang and Simoes (2008), Hung et al. (2009), Horvat et al. (2015) and Horvat and Horvat (2016), and others.

Constant interaction between the suspended sediment and water flow causes changes in the size class distributions through space and time, while at the same time defining the availability of certain particles for the exchange processes between the suspension and bed and near bed material. The model presented in Struksima et al. (1985) does not consider suspended sediment transport, only the bed load. Model CCHE2D (Jia and Wang 1999) uses the bed load to compute bed deformation, while the model presented in Nagata et al. (2000) simulates the change of bed elevation with bank erosion relying on an empirical expression for the assessment of the entrainment intensity. Model BRALLUVIAL determines the bed elevation from the mass conservation equation written for each of the size classes separately. The CHARIMA model (Holly et al. 1990) is a one-dimensional model that solves the system of suspended sediment mass balance and bed load equations, as well as equations for sediment below the river bed. Wu et al. (2004) suggested a one-dimensional model that considers the suspended sediment as well as the bed load, including exchange mechanisms between the material in suspension and on the river bed for an unlimited number of size classes. A one-dimensional model SEDICOUP (Holly and Rahuel 1990a, b) also separately models the suspended sediment and the sediment near and on the bed, while bed elevation is evaluated through the change of the cross-section area.

Recently, the greatest challenge in the filed of sediment transport was modeling the exchange mechanisms between suspended sediment and bed material. Model CCHE1D (Wu and Vieira 2002) incorporates the standard equation for nonuniform sediment in an un-equilibrium state. CCHE1D treats the suspended and bed load together, meaning there is one equation for these two types of sediment, while the exchange mechanisms are determined as the difference between the total sediment transport and the transport capacity at an equilibrium. Model FAST2D (Rodi 2000) represents the sediment mixture through a characteristic grain size, while suspended sediment transport is described using the suspended sediment mass balance equation with exchange terms. Deposition is described as the advection flux of suspended sediment due to gravity, while the entrainment process is defined by assuming an equilibrium state. Other models consider the interaction between water and suspended sediment using the suspended sediment mass balance equation for the considered size class (Spasojevic and Holly 1990; Holly and Rahuel 1990a, b; Wu 2004; Zhou et al. 2009; Hung et al. 2009). This equation includes the exchange mechanism that allows the material to get pulled into suspension, or be deposited to the river bed.

By analyzing the extensive literature, the authors did not find a 1-D model based on the exact computational procedures used for simulating flow, sediment transport and bed evolution in natural watercourses as presented in this paper. However, the concepts used in this model (e.g., method of characteristics, active layer concept) are well-known and used extensively in computational hydraulics. Nevertheless, the authors embarked on an enterprise to build such a model, and investigate its potentials and flaws. It should be also noted that the authors feel that this paper should be viewed in a context of a theoretical background to their other papers, and are hopeful that this paper has some merit in this respect.

Governing equations

Since the sediment transport mainly depends on flow conditions, the development of a sediment transport and bed evolution model implies the development of a water flow model as well. The hydraulic model implemented in this model was described by Horvat et al. (2017a); therefore, only a short overview will be given in this paper. The one-dimensional de Saint-Venant continuity equation is

$$ \frac{\partial A}{\partial t}+\frac{\partial Q}{\partial x}=0, $$
(1)

while the momentum equation can be written down as

$$ \frac{\partial Q}{\partial t}+\frac{\partial}{\partial x}\left( \alpha \frac{Q^{2}}{A}\right)+g A \frac{\partial Z}{\partial x}+g A S_{f}=0, $$
(2)

where A denotes the flow cross-section area, t is the time, Q stands for discharge, x marks the spatial coordinate consistent with the flow direction, α is the velocity distribution coefficient, g is the gravitational acceleration, Z is the water surface elevation, and finally, Sf denotes the friction slope.

The domain where sediment processes are investigated is divided into three parts: the suspended sediment, the active layer, and the layers (stratums) below it, where the latter are composed of the active stratum and subsequent stratums. The sediment equations are defined for each of these elements and complemented with appropriate exchange mechanisms between them. The sediment mixture is represented via a number of size classes k = 1, ... , K, where K marks the total number of sediment size classes. Since the presented work deals with the development of a one-dimensional sediment transport and bed evolution model, an additional assumption is introduced. A cross section’s shape cannot change; however, it can be elevated or lowered due to bed evolution.

The governing equations used for the development of the considered model include equations describing the suspended sediment transport, bed, and near bed sediment transport, as well as the interrelation between them. As stated earlier, the manner in which the suspended sediment transport is modeled has been already described by different authors (Spasojevic and Holly 1990; Gessler et al. 1999; Horvat et al. 2015); therefore, these equations are referred to only when required in order to better understand the remaining elements of the sediment model. Therefore, the suspended sediment mass continuity equation for the k-th size class is

$$ \begin{array}{@{}rcl@{}} \frac{{\partial {C_{k}}}}{{\partial t}} + u \cdot \frac{{\partial {C_{k}}}}{{\partial x}} &=& \frac{1}{A} \cdot \frac{\partial }{{\partial x}}\left( {{\varepsilon_{s}} \cdot \frac{{\partial {C_{k}}}}{{\partial x}} \cdot A} \right)\\ &&+ \frac{{{E_{k}^{{sed}}} \cdot B}}{{\rho \cdot A}} - \frac{{{D_{k}^{{sed}}} \cdot B}}{{\rho \cdot A}}, \end{array} $$
(3)

where Ck is the suspended sediment concentration of the k-th size class, u is the velocity of the flow, x marks the distance in flow direction, εs denotes the turbulent diffusion coefficient, A represents the cross-section area, \(E^{{sed}}_{k}\) is the entrainment flux for the k-th size class, B marks the width of the cross section, ρ is the density of the water-sediment mixture, and \(D^{{sed}}_{k}\) is the deposition flux for he k-th size class. Equation 3 can be found in Spasojevic and Holly (1990), Gessler et al. (1999), and Horvat et al. (2015) and is easily adapted for one-dimensional sediment transport.

Mass balance equation of the active layer

The sediment particles near and at the bed are under the dominant influence of the gravitational force, unlike the suspended sediment moving with same velocity as the water. Figure 1 depicts the considered control volume. Particle fluxes through the upstream and downstream faces of the control volume are the result of particles arriving and/or leaving from an adjacent control volume, while the particle flux through the bottom is the result of deposition and entrainment of particles from the bed into the suspension. Consequently, the following assumptions are introduced: the particle size distribution is constant inside the active layer’s control volume, the same-sized particles are exposed in the same manner to the flow, the length of the active layer’s control volume is longer than the length of the particles movement on the bed. However, since the active layer’s bed elevation can change, it can move downwards and enter the layer beneath it. Consequently, the material under the active layer is also split into a series of sub-layers (stratums) that all have the same horizontal dimension as the active layer (Fig. 1).

Fig. 1
figure 1

The active layer and the stratums below it

The total mass of the k-th size class Mk in the active layer’s control volume is Mk = ρsVk, whereas the size class fraction of the k-th size class in the sediment mixture is βk = Mk/M. Applying well-known correlations, Eq. 4 is attained where Vk denotes the volume of the k-th size class sediment, while M marks the mass of the sediment inside the active layer control volume V. Since V is defined by the active layer height Ea, the cross-section width, and the distance between two computational points Δx, the active layer control volume is V = Ea ⋅ΔxB. The latter equation was used to derive (4), assuming the density of the sediment particles ρs, and porosity of the sediment mixture p to be constant.

$$ {\upbeta}_{k}=\frac{V_{k}}{\left( 1-p\right)\cdot V}\cdot\frac{\rho_{s}}{\rho_{s}}, \quad\Rightarrow\quad M_{k}={\upbeta}_{k}\cdot\rho_{s}\cdot\left( 1-p\right)\cdot E_{a}\cdot {\Delta} x\cdot B $$
(4)

The change of Mk in time can be expressed as

$$ \frac{\partial M_{k}}{\partial t}=\frac{\rho_{s}\cdot\left( 1-p\right)}{\Delta x}\cdot\frac{\partial}{\partial t}\left( {\upbeta}_{k}\cdot E_{a}\cdot B\right). $$
(5)

The change of mass given in Eq. 5 is a result of bed load transport between two subsequent cross sections \(\left (\varphi _{k}\right )_{us}-\left (\varphi _{k}\right )_{ds}\) (Fig. 1), where indexes ds and us denote the downstream and upstream face of the control volume respectively. Additional change of mass can occur due to the movement of particles from the active layer into suspension (Fig. 1). This occurrence is described through the source term Sk that appears with a negative sign, since it represents a loss for the considered control volume. Therefore, the mass balance equation can be formulated as

$$ \rho_{s}\cdot\left( 1-p\right)\cdot \frac{\partial\left( {\upbeta}_{k}\cdot E_{a}\cdot B\right)}{\partial t}=\frac{\left( \varphi_{k}\right)_{us}-\left( \varphi_{k}\right)_{ds}}{\Delta x}-S_{k}\cdot B. $$
(6)

The source term is defined as the difference between entrainment that pulls sediment particles from the active layer into suspension and the deposition flux that accounts for suspended sediment particles that deposit onto the bed. Therefore, the source term can be formulated as \(S_{k}=E_{k}^{sed}-D_{k}^{sed}\). Furthermore, there is one more exchange mechanism not yet specified. The interaction between the active layer and stratum immediately below it, called the active stratum, is accounted for through the flux of exchange (Sf)k that presents a gain for the active layer and therefore it appears in the appropriate mass balance equation with a positive sign (Eq. 7). Consequently, in the mass balance equation for the active stratum, it has to appear as a loss.

$$ \begin{array}{@{}rcl@{}} &&\rho_{s}\cdot\left( 1-p\right) \frac{\partial\left( {\upbeta}_{k}\cdot E_{a}\cdot B\right)}{\partial t}+\frac{\left( \varphi_{k}\right)_{ds}-\left( \varphi_{k}\right)_{us}}{\Delta x}\\ &&\quad=B\cdot\left[D_{k}^{sed}-E_{k}^{sed}+\left( S_{f}\right)_{k}\right] \end{array} $$
(7)

The first step in the computational procedure is to carry out the hydraulic calculations, after which the sediment equations can be solved. Therefore, when computing the sediment equation, the hydraulic parameters are known. Governed by this reasoning, B is considered to be independent of time within the sediment computation itself. An additional assumption is that B = const. inside a control volume; therefore, the following notation ϕk = φk/B can be introduced. Consequently, the final form of of the mass balance equation for the active layer can be derived.

$$ \rho_{s}\cdot\left( 1-p\right)\cdot \frac{\partial\left( {\upbeta}_{k}\cdot E_{a}\right)}{\partial t}+\frac{\left( \phi_{k}\right)_{ds}-\left( \phi_{k}\right)_{us}}{\Delta x}=-E_{k}^{{sed}}+D_{k}^{{sed}}+\left( S_{f}\right)_{k} $$
(8)

The global mass balance equation for the active layer and stratums

By summing the mass balance equation of the active layer (7) over all of the size classes k, and implementing the condition that the sum of all size class fractions is by definition 100%, i.e., \( {\sum }_{k = 1}^{K} {{{\upbeta }_{k}}}=1\), the following equation is attained

$$ \begin{array}{@{}rcl@{}} &&{\rho_{s}}\cdot \left( {1 - p} \right)\cdot \frac{{\partial \left( {{E_{a}} \cdot B} \right)}}{{\partial t}} +\frac{\sum\limits_{k = 1}^{K} { \left[\left( \varphi_{k}\right)_{ds}-\left( \varphi_{k}\right)_{us}\right]}}{\Delta x}-\\ &&- \sum\limits_{k = 1}^{K} {B\cdot\left( { {{\left( {{S_{f}}} \right)}_{k}}}-E_{k}^{{sed}}+D_{k}^{{sed}} \right)} = 0. \end{array} $$
(9)

The mass balance equation of the k-th size class for the active stratum l is obtained in the same manner as the active layer mass balance equation. Figure 1 clearly depicts that the active stratum is not in contact with the flow, ergo it does not influence bed load, neither can it exchange material with the suspension. Therefore, the mass balance equation of the k-th size class in the l-th (active) stratum is

$$ {\rho_{s}}\cdot \left( {1 - p} \right)\cdot \frac{{\partial \left( {{{\upbeta}_{k,l}}\cdot {E_{s,l}}\cdot B} \right)}}{{\partial t}} + {\left( {{S_{f}}} \right)_{k}} \cdot B = 0. $$
(10)

By summing (10) over all k size classes in the sediment mixture, and implementing the same criteria that \({\sum }_{k = 1}^{K} {{{\upbeta }_{k,l}}}=1\), the global mass balance equation for the active stratum is obtained,

$$ {\rho_{s}}\left( {1 - p} \right)\cdot\frac{{\partial \left( {{{{{E_{s,l}}}}} \cdot B} \right)}}{{\partial t}} = - \sum\limits_{k = 1}^{K} {\left[ {{{\left( {{S_{f}}} \right)}_{k}} \cdot B} \right]}. $$
(11)

It can be concluded from the last equation that the change of the active stratum’s height depends only on its exchange with the active layer. Using the same reasoning as previously, a trivial mass balance equation for the next stratum l − 1 can be derived,

$$ {\rho_{s}}\cdot \left( {1 - p} \right)\cdot \frac{{\partial \left( {{{{{E_{s,l-1}}}}} \cdot B} \right)}}{{\partial t}} = 0. $$
(12)

The bed elevation of the last stratum is marked zsf (Fig. 1), and it is considered to be equal to zero, as well as to be independent of time. It should be noted that (12) can be written for each of the stratums beneath the active stratum.

The global mass balance equation for the active layer and stratums, i.e., global mass balance equation of the bed material, is retrieved by adding together the mass balance equations, summed for all k, for the active layer and all of the stratums. During this operation, the same assumption was used as earlier that B = const. during the sediment computation and within the control volume.

$$ \begin{array}{@{}rcl@{}} {\rho_{s}}\cdot \left( {1 - p} \right)\cdot \frac{{\partial z_{b}}}{{\partial t}} &+& \frac{\sum\limits_{k = 1}^{K} { \left[\left( \phi_{k}\right)_{ds}-\left( \phi_{k}\right)_{us}\right]}}{\Delta x}\\ &+& \sum\limits_{k = 1}^{K} {\left( {{E_{k}^{{sed}}} -{D_{k}^{{sed}}} } \right)} = 0. \end{array} $$
(13)

Overview of the available equations

At this point, a total of 2K + 1 sediment-related equations are presented, K suspended sediment mass balance (3), K mass balance (8) for the active layer, and one global mass balance (13) for the active layer and stratums. The following variables are the unknowns: K unknown suspended sediment concentrations Ck, K unknown fluxes of exchange with the deeper layers \(\left (S_{f}\right )_{k}\), K unknown fluxes due to entrainment \(E_{k}^{{sed}}\), K unknown fluxes due to deposition \(D_{k}^{{sed}}\), K unknown fluxes of bed load per unit width ϕk, K unknown size class fractions βk, one unknown active layer height Ea, one unknown bed elevation zb, giving a total of 6K + 2 unknown variables. Therefore, 4K + 1 additional equations are required in order to have a system of equations that can be solved.

The primary unknowns in the presented system of equations are Ck, βk, and zb. The concentration needed for the evaluation of \(E_{k}^{{sed}}\), diffusion coefficient, bed load flux, active layer height, and the fall velocity are all variables that depend on the flow characteristics and/or on the primary sediment unknowns and are determined using empirical equations given in Appendix 3.

Numerical approach for flow equations

The numerical approach for solving the flow equations in the presented model was described by Horvat et al. (2017a); therefore, only a short overview will be given in this paper. As it is well-known in computational hydraulics, for a one-dimensional model, a number of computational points along a one-dimensional axis can be used to describe space. The position of these points is denoted by index i that takes values from i = 1 at the upstream to i = I at the downstream end of the considered domain. For the discretization of Eqs. 1 and 2, Preissmann’s scheme was used. Equations 14 and 15 respectively present the continuity and momentum equation,

$$ F_{1}\left( A_{i}^{n+1}, A_{i+1}^{n+1}, Q_{i}^{n+1}, Q_{i+1}^{n+1}\right)=0, $$
(14)
$$ \begin{array}{r} \displaystyle F_{2}\left( Q_{i+1}^{n+1}, Q_{i}^{n+1}, A_{i}^{n+1}, A_{i+1}^{n+1}, \alpha_{i}^{n+1}, \alpha_{i+1}^{n+1}, Z_{i}^{n+1}, Z_{i+1}^{n+1},\right.\\ \displaystyle \left. K_{i+1}^{n+1}, K_{i}^{n+1}, \left( n_{\text{str}}\right)_{i+1}^{n+1}, \left( n_{\text{str}}\right)_{i}^{n+1}\right)=0, \end{array} $$
(15)

where F1 and F2 mark the discrete continuity and momentum equations and indexes i and i + 1 stand for the computational point on the x coordinate line, while indexes n and n + 1 refer to the previous (known) and current (unknown) time steps. The introduction of hydraulic conveyance K in this stage is a necessity, since the friction slope from Eq. 2 can be expressed as

$$ S_{f}=\frac{Q \left|Q\right|}{K^{2}}. $$
(16)

Consequently, in Eq. 15, K denotes hydraulic conveyance defined through the Strickler’s coefficient as

$$ K=n_{\text{str}} A R^{2/3}, $$
(17)

where R represents the hydraulic radius and nstr is Strickler’s coefficient. It is evident that Eqs. 14 and 15 are nonlinear; therefore, they are solved using the Newton-Raphson iterative procedure and the Thomas (double-sweep) algorithm as presented by Horvat et al. (2017a).

Numerical approach for sediment transport and bed evolution equations

Using the previously presented equations, the suspended sediment mass balance (3), the active layer mass balance (8), and the global mass balance (13), one can describe the transport of suspended sediment as well as bed and near bed material.

The suspended sediment equation is an advection-diffusion equation, meaning that it has a mixed mathematical character, which is why the split operator approach (Yanenko 1971) was selected as the solution approach. The main advantage of this approach is that it allows the division of the governing equation into separate parts, each of which is then solved using the numerical approach that suits it best (Spasojevic and Holly 1990; Gessler et al. 1999; Wu 2008; Hung et al. 2009; Isic et al. 2013; Horvat et al. 2015). Hence, the local mass change due to advection, marked with upper index a, is given with Eq. 18, while the local mass change caused by diffusion, marked with a + d, is given with Eq. 19.

$$ \left( \frac{{\partial {C_{k}}}}{{\partial t}}\right)^{a} =- u \cdot \frac{{\partial {C_{k}}}}{{\partial x}} +\frac{{{E_{k}^{{sed}}} \cdot B}}{{\rho \cdot A}} - \frac{{{D_{k}^{{sed}}} \cdot B}}{{\rho \cdot A}}, $$
(18)
$$ \left( \frac{{\partial {C_{k}}}}{{\partial t}}\right)^{a+d}- \left( \frac{{\partial {C_{k}}}}{{\partial t}}\right)^{a} = \frac{1}{A} \cdot \frac{\partial }{{\partial x}}\left( {{\varepsilon_{s}} \cdot \frac{{\partial {C_{k}}}}{{\partial x}} \cdot A} \right). $$
(19)

The direct consequence of the presented numerical approach is the necessity to simultaneously solve the (18), (8), and (13), so that the formerly introduced condition \(\sum \upbeta =1\) would always be satisfied (Horvat et al. 2015). This computational step is called advection and bed evolution step.

It should be noted that the numerical solution of the suspended sediment advection equation is prone to numerical issues such as numerical diffusion, oscillations, and instability. In order to avoid these issues as much as possible, the method of characteristics was selected for this part of the solution. The implemented approach for the suspended sediment advection is presented in great detail by Isic et al. (2013). The diffusion step is solved using an implicit scheme of the finite difference method, while the sediment transport of the near bed and bed material is a slow process which is why (8) and (13) are discretized by integration over time and control volume.

Discretized equations for advection and bed evolution step

The active layer mass balance equation (Eq. 8) for the k-th size class is discretized with the finite difference method according to the notations used in Fig. 2 and rearranged to attain (20).

$$ \begin{array}{@{}rcl@{}} F3_{k}&=&\rho_{s}\cdot\left( 1-p\right)\cdot \frac{\left( {\upbeta}_{k}\cdot E_{a}\right)^{n+1}_{i}-\left( {\upbeta}_{k}\cdot E_{a}\right)^{n}_{i}}{\Delta t} -\left( \left( S_{f}\right)_{k}\right)_{i}\\ &+&\theta\cdot\frac{\left( \phi_{k}\right)_{i-1/2}^{n+1}-\left( \phi_{k}\right)_{i+1/2}^{n+1}}{x_{i-1/2}-x_{i+1/2}}+ \left( 1-\theta\right)\cdot\frac{\left( \phi_{k}\right)_{i-1/2}^{n}-\left( \phi_{k}\right)_{i+1/2}^{n}}{x_{i-1/2}-x_{i+1/2}} \\ &+&\theta\cdot\left( E_{k}^{{sed}}-D_{k}^{{sed}}\right)_{i}^{n+1}+ \left( 1-\theta\right)\cdot\left( E_{k}^{{sed}}-D_{k}^{{sed}}\right)_{i}^{n}. \end{array} $$
(20)

The notations used in Eq. 20 are i as the index that marks the computational point, n the previous (known) time step, n + 1 the current (unknown) time step, while θ denotes the weighing factor. One Eq. 20 can be written for each size class k in the sediment mixture, so for one computational point the total number of these equations is K.

Fig. 2
figure 2

Computational points and discretization notation

The global mass conservation (13) presents one equation with one unknown bed elevation zb. The discretized form of Eq. 13 is given with Eq. 21.

$$ \begin{array}{@{}rcl@{}} F1&=&{\rho_{s}}\cdot \left( {1 - p} \right)\cdot \frac{{ \left( {{z_{b}}} \right)_{i}^{n+1}- \left( {{z_{b}}} \right)_{i}^{n}}}{{\Delta t}}\\ &&+\sum\limits_{k = 1}^{K} \left( \frac{\theta\left[\left( \phi_{k}\right)_{i-1/2}^{n+1}-\left( \phi_{k}\right)_{i+1/2}^{n+1}\right]}{x_{i-1/2}-x_{i+1/2}}\right.\\ &&\left.+\frac{\left( 1-\theta\right)\left[\left( \phi_{k}\right)_{i-1/2}^{n}-\left( \phi_{k}\right)_{i+1/2}^{n}\right]}{x_{i-1/2}-x_{i+1/2}}\right)\\ &&+\sum\limits_{k = 1}^{K} \left( \theta\left( {{E_{k}^{{sed}}} -{D_{k}^{{sed}}} } \right)_{i}^{n+1}\right.\\ &&\left.+ \left( 1-\theta\right)\left( {{E_{k}^{{sed}}}-{D_{k}^{{sed}}} } \right)_{i}^{n}\right) = 0 \end{array} $$
(21)

Both Eqs. 8 and 13 are discretized using a semi-explicit scheme. This implies that when computing the bed load flux for the n + 1 time step, the velocity is taken from the appropriate time step n + 1 (since the hydraulic variables are known at this point), while βk is from the previous time step n. This allows the computation in the arbitrary point i to stay independent from the surrounding points.

The discretized form of the suspended sediment mass balance equation is

$$ \begin{array}{@{}rcl@{}} F2_{k}&=&{C_{k}^{a}}-\left( C_{k}\right)_{D_{L}}-\sum\limits_{D_{L}}^{D_{1}}\frac{B \left( E_{k}^{\text{sed}}-D_{k}^{\text{sed}}\right)}{\rho\cdot A}{\Delta} t\\ &&-{\Delta} t_{1}\theta\left( \frac{B}{\rho\cdot A}\left( E_{k}^{\text{sed}}-D_{k}^{\text{sed}}\right)\right)_{i}^{n+1}, \end{array} $$
(22)

where \({\Delta } t_{1}=t^{n+1}-t_{D_{1}}\). It should be noted that \(t_{D_{1}}\) presents the time at the foot of the trajectory (Isic et al. 2013).

The derived (20), (21), and (22) are nonlinear discretized equations that must be solved simultaneously in order to satisfy the condition \({\sum }_{k = 1}^{K} {{\upbeta }}=1\). By linearizing the global mass balance (21), Eq. (23) is obtained.

(23)

The linearized form of the advection (22) is

(24)

Finally, the linearized form of the active layer mass balance (20) is

(25)

The presented system consists of 2K + 1 equations and the same number of unknowns. However, developing a sediment transport model in a looped river network requires complementing the usual equations with additional ones in order to compute the sediment transport and bed evolution at computational nodes that define reaches (computational links) in the looped network. Additional equations are necessary both for hydraulic and sediment transport computation. Since the hydraulic part of the model was described by Horvat et al. (2017a), it will not be presented here. However, the supplementary equations for the sediment transport computation are presented in the following paragraphs.

The suspended sediment equation for nodes is derived under the assumption that, in nodes, complete mixing of sediment occurs. In that case, the sum of the sediment transport mass in all links entering the considered node, Lin, equals the sum of individual inflows multiplied with one exiting outflow concentration Cout, which is the same for every outgoing link Lout. Therefore, the outflow concentration is also the nodal concentration Cout = CN. According to what was previously stated, Eq. 26 can be formulated.

$$ \begin{array}{@{}rcl@{}} Q_{loc}\cdot C_{loc}+\sum\limits_{l_{in}=1}^{L_{in}}{Q_{l_{in}}\cdot C_{l_{in}}}&=&C_{out}\cdot\sum\limits_{l_{out}=1}^{L_{out}}{Q_{l_{out}}}\\ &=&C_{N}\cdot\sum\limits_{l_{out}=1}^{L_{out}}{Q_{l_{out}}} \end{array} $$
(26)

In Eq. 26, QlocCloc presents a local external inflow to the node, Cloc is the suspended sediment concentration in the external inflow, and Qloc is the corresponding discharge, while Cin and Qin are respectively the suspended sediment concentration entering node N regularly, and the matching discharge. In the former equation, Cout = CN is the outflow suspended sediment concentration from the node, while Qout is the discharge exiting node N computed as the sum of all inflows to the node (Fig. 3).

Fig. 3
figure 3

Schematic representation of a node N

Every (26) contains one unknown concentration at the considered node N, and one or more additional unknown concentration(s) originating from upstream node(s). This is the result of the implemented method of characteristics for the advection and bed evolution step. Equation 22 is the suspended sediment advection equation (Isic et al. 2013), after its integration along a trajectory. Since the implemented computational approach allows the trajectory to travel as far as the upstream node, in some cases, it intersects the upstream node itself. In that case, the concentration at the bottom of the trajectory is set as CN− 1 at the appropriate time. This means that the concentration at the foot of the trajectory is determined by linear interpolation between times n and n + 1, suggesting that \(C_{N-1}^{n+1}\) should be known at this stage of the computation. Therefore, the computation is carried out by first evaluating the nodal concentrations, after which the concentrations at (internal) computational points of a link can be determined. The nodal computation starts from the looped network’s upstream end(s), where boundary conditions are available. This way the algorithm works its way down the system computing only the nodal suspended sediment concentrations. These computed concentrations at the nodes also represent the suspended sediment concentrations at the upstream points \(C^{n+1}_{I}\) of the outflow links of a node. Further computation requires the definition of a procedure to determine the size class distribution of the active layer, \({\upbeta }^{n+1}_{I}\), and the bed elevation, \(\left (z_{b}\right )^{n+1}_{I}\), at the upstream points of the outflow links. Since the mentioned algorithm starts from the upstream end(s) of the looped river network, after preforming the standard computation, all of the sediment variables are defined at the last points of the inflow links, i = 1. The next step is computing these variables at the upstream (first) points i = I of the exiting links. The size class distribution at i = I of the exiting links is determined using the continuity equation for the bed load fluxes

$$ \sum\limits_{l_{in}=1}^{L_{in}}{{\phi^{t}_{k}}\cdot{\upbeta}_{k}\cdot\left( 1 - \gamma_{k}\right)\cdot\zeta_{k}} = {{\upbeta}_{k}^{N}}\cdot\sum\limits_{l_{out}=1}^{L_{out}}{{\phi^{t}_{k}}\cdot\left( 1 - \gamma_{k}\right)\cdot\zeta_{k}}, $$
(27)

where γk marks the allocation parameter of the k-th size class (Horvat et al. 2015), and ζk is the hiding factor of the k-th size class (Horvat et al. 2015), while \({\phi ^{t}_{k}}\) marks the theoretical value of the mass flux of bed load transport per unit width for the k-th size class. By employing (27), another assumption is introduced, namely, the size class distribution is the same for all outflow links of one node. The computed size class distribution at a node is set as the known value of the size class distribution at points i = I of all outflow links. If division with zero occurs in Eq. 27, one of the following conditions is set

$$ {\upbeta}_{I}^{n+1}={{\upbeta}_{I}^{n}} \quad \text{or} \quad {\upbeta}_{I}^{n+1}=\frac{1}{L_{in}}\cdot\sum\limits_{l_{in}=1}^{L_{in}}{{\upbeta}^{n}_{l_{in}}}. $$
(28)

Using the computed value βI, the bed elevations at points i = I of the outflow links are computed from the global mass balance (21).

Afterwards, the regular equations are used to conduct sediment transport and bed evolution computations for all points except at i = 1 where all of the variables are already evaluated. This way, the iterative computation is reduced to computing sediment variables at the downstream points of inflow links. Using these values, the continuity equation is solved to determine the suspended sediment concentration at a node, consequently assigning it to the upstream points of exiting links. The size class distribution is evaluated from the continuity equation of the bed load fluxes, or as the average of the values entering the node, after which solving (21) gives us the bed elevation. Finally, the next iteration starts and the described procedure is repeated until the criteria for stoping the iterations is satisfied.

Discretized equations for diffusion step

The diffusion (19), presented earlier, is discretized using the Crank-Nicholson scheme in addition to its weighing in time (i.e., computational step). Since the diffusion step is computed after finalizing the hydraulic computation, all of the values known from the hydraulic computation are taken from the current time step (meaning the dispersion coefficient and cross-section area). The discretized equation is

$$ \begin{array}{@{}rcl@{}} &&\left( \frac{{\partial {C_{k}}}}{{\partial t}}\right)^{a+d}- \left( \frac{{\partial {C_{k}}}}{{\partial t}}\right)^{a}\\ &&\quad= \theta\cdot\left[\frac{1}{A^{n+1}} \cdot \frac{\partial }{{\partial x}}\left( \displaystyle{{\varepsilon_{s}^{n+1}} \cdot \frac{{\partial {C_{k}^{a+d}}}}{{\partial x}} \cdot A^{n+1}} \right)\right]\\ &&\quad+ \left( 1-\theta\right)\cdot\left[\frac{1}{A^{n+1}} \cdot \frac{\partial }{{\partial x}}\left( \displaystyle{{\varepsilon_{s}^{n+1}} \cdot \frac{{\partial {{C_{k}^{a}}}}}{{\partial x}} \cdot A^{n+1}} \right)\right]. \end{array} $$
(29)

The time derivative is determined using Euler’s approximation, while the discretization of the derivatives in space is done in two steps. The first step is to discretize the external derivative, and afterwards the inner derivatives. Since the sediment computation consists of the advection and bed evolution and diffusion step, this implies that the suspended sediment concentrations determined at the diffusion step also represent the unknown concentrations at the current time step \(C_{k}^{a+d}=C_{k}^{n+1}\); therefore, notation n + 1 can be used. The derived equation is implicit and is solved using the Thomas algorithm. Thus, it is rearranged in a manner that all of the terms multiplied with the unknown concentrations \((C_{k}^{n+1})_{i+1}\), \((C_{k}^{n+1})_{i}\), \((C_{k}^{n+1})_{i-1}\) appear on the left side, while the terms remaining on the right side are multiplied with known concentrations \({C_{k}^{a}}\). Furthermore, by grouping the terms multiplying the unknown concentrations by points, the coefficients of the Thomas algorithm are obtained. The final form of the equation is

$$ {\left( {C_{k}^{n + 1}} \right)_{i + 1}} \cdot P_{i}+ {\left( {C_{k}^{n + 1}} \right)_{i}} \cdot Q_{i}+ {\left( {C_{k}^{n + 1}} \right)_{i - 1}} \cdot R_{i} = S_{i}. $$
(30)

Numerical tests

Previous sections presented the development of a one-dimensional sediment transport and bed evolution model for a looped river network. The first step after developing such a model is to carry out a series of numerical tests in order to examine the model’s behavior.

Evaluating the suspended sediment transport algorithm in a looped network

The first example has the goal to evaluate one of the model’s elementary principles, the mass conservation of the suspended sediment at the nodes. Figure 4 shows the modeled system that consists of five horizontal sections that are connected through five nodes.

Fig. 4
figure 4

Representation of the schematic channel

Link L2 has a rectangular cross section, while the rest of the links have trapezoidal cross sections. The upstream boundary condition for the hydraulic computation is a known hydrograph, while on the downstream boundary, a known water depth of 10m is set. The initial discharge is Q = 190m3/s and it remains constant for the first 15 days of the computation. Afterwards, the discharge increases in two days time to a value of Q = 240m3/s and stays unchanged for one day. After a day, it decreases to Q = 180m3/s in two days time. Subsequently, the discharge stays constant until the end of the simulation. During all of the considered simulations, node n = 3 has a constant local inflow of Qlocal = 20m3/s. The sediment computation requires only upstream boundary conditions, which is in this case set as a constant value of concentration in time. At node n = 3, along with the local discharge, the inflow of suspended sediment is also defined.

The discharge and velocity distributions along the considered channel, at various times, are given in Fig. 5. Comparing the results at different times (continuous line represents the results before the wave, the dotted during the wave, and dashed after), the influence of the passing wave is easily detected.

Fig. 5
figure 5

Change of discharge and velocity throughout the channel on route L5L4L3L1

Figure 6 contains functions Q(t) and C(t) at nodes n = 4, n = 3, and n = 2. It can be noted that at node n = 4, the incoming hydrograph entering through link L5 equals the sum of the outflows through links L2 and L4. Since this node has no local inflow, the results are as expected. Node n = 3 connects only two links, the inflow link L4 and outflow link L3, but the boundary conditions are set so that there is local inflow of water that explains the increased hydrograph on the outflow link. Node n = 2 connects links L2 and L3; therefore, the sum of their discharges equals the outflow discharge through link L1.

Fig. 6
figure 6

Suspended sediment transport at a looped channel

Next, the change of total concentration in time SumC at node n = 4 is evaluated. During the derivation of the equations, it was assumed that the distribution of concentrations at nodes is proportional to the discharges. By analyzing Fig. 6, it can be observed that the suspended sediment concentration entering node n = 4 equals the concentrations at the upstream ends of the outflow links. The result is a consequence of the implemented concept, that the nodal concentrations are computed proportional to the discharge. Analogously, the outflow link of node n = 3 shows decreased values of concentrations in comparison with the inflow link, despite the fact that the node has a local inflow of suspended sediment. This is caused by the fact that the mixture of the local concentration and local discharge is in a proportion that decreases the suspended sediment concentration. The same is observed at node n = 2. There are two links entering this node: link L2 with greater value of suspended sediment concentration and link L3 with a smaller concentration. The result is that the outflow link has the concentration between these two values.

Evaluating the linear advection

As stated earlier, implementing the split operator approach onto the sediment transport equation resulted in two subsequent steps: the advection and bed evolution and diffusion step (Spasojevic and Holly 1990). While the diffusion term is numerically benign, the advection step is known for introducing a series of difficulties into the computation. The main issue can be attributed to the stochastic change of the Courant’s number in both space and time, resulting from the open channel’s natural geometry and boundary conditions. The greatest challenge when solving the advection equation is to select a numerical solution that will ensure accuracy, and at the same time allow the use of larger time steps. Many authors opt for finite difference schemes for the advection step, due to their simplicity (Wu 2008; Fletcher 1991; Hirsch 2007; Strikwerda 2004), while Lax and Wendroff (1960) developed a second-order scheme for the linear advection equation.

A number of researchers investigated the employment of the method of characteristics onto the linear advection aiming to reduce the influence of numerical diffusion. Since this method depends on the interpolation it uses, there are different papers on this subject. Leonard suggested quadratic upstream interpolation, while Holly and Preissmann (1997) proposed a local cubic interpolation polynomial that was further investigated by other authors Ahmad and Kothyari (2001), Tsai et al. (2006), and Yang and Hsu (1991).

The tests presented here were conducted on the pure advection equation. Afterwards, the same procedure was employed on the advection as a part of the split operator approach (as in the developed model). The numerical solutions were evaluated based on the displayed dispersion and dissipation, and the pure advection tests are carried out on the example of Gauss function and the steep wave example. Although these tests were performed diligently using the developed model, they are generally known and well elaborated in literature. Therefore, they are given in Appendices A and B.

Examining the exchange mechanisms

While deriving the governing equations, the suspended sediment source term was defined as the difference between the entrainment flux and deposition flux. To evaluate the integrity of the incorporated exchange mechanism, two representative situations were evaluated.

The first scenario is clean water entering a watercourse whose bed is covered with sediment. Assuming the flow characteristics are designed so that they can initiate bed sediment movement, the expected outcome is the bed sediment entrainment into suspension. This would lead to the watercourse containing suspended sediment that is then available for deposition. By imposing steady-state flow conditions, it is expected that after some time, the equilibrium between entrainment and deposition will be achieved.

The other scenario is based on a watercourse that has no sediment in it, and its bed is also clear of any sediment that could be entrained. The upstream boundary condition is set so the water entering the watercourse contains suspended sediment. In this scenario, by ensuring proper hydraulic conditions, it is anticipated that suspended sediment deposition will occur. As a result, sediment will appear on the bed that is then available for entrainment. By allowing steady-state flow conditions, after a certain amount of time, the sediment will reach an equilibrium state; thus, entrainment will be balanced out with deposition.

The considered situations are the simplest approaches to test the exchange mechanisms. In order to attain a result as clear as possible in both examples, the considered watercourse was selected as a prismatic channel with a rectangular cross section with B = 10m and a horizontal bed. The total length of the channel was 20km and the computational points were placed at a distance of 0.5km, resulting in 41 computational points total. The time step was Δt = 60s. The hydraulic computation was the same in both scenarios, setting the initial conditions as still water with the initial depth of h = 10m. The upstream boundary condition was a known discharge over time that was set as Q = 0.0m3/s at the start of the simulation and rises to Q = 90m3/s in two days and remains as such until the end of the simulation time. The downstream boundary condition was a known water depth of h = 10m. After the discharge reached its maximum, approximately 39 days were left for the hydraulic model to reach a steady state, before starting the sediment computation. Further simulation data differ for the two considered cases, so they are presented separately.

Bed sediment entrainment

For the evaluation of the entrainment model, the initial and boundary conditions set for the sediment computation were the same. There is no sediment in the water, neither is there sediment in the water entering the channel. The initial and boundary conditions for the sediment are set as known percentages of a size class fraction on the bed. In order to attain more apparent conclusions, only one size class was considered; therefore, the initial and boundary conditions were β = 1 for the given size class. The simulated time interval for the sediment computation was 11.66 days. Since the equilibrium state was reached much earlier, the results are presented only for two days.

Figure 7 shows the changes through time of suspended sediment concentration, entrainment flux, and deposition flux, while Fig. 8 presents the change of the same variables throughout the channel. Figure 7a displays the temporal variation of C, E, and D at computational point i = 10, while keeping in mind that point i = 1 is on the downstream end of the channel. It can be observed that the value of the entrainment flux is greater at the beginning of the sediment simulation and it decreases as the computation advances due to the diminishing of bed material available for entrainment into suspension. The opposite can be detected for the deposition flux which is the smallest at the beginning of the simulation since there is no sediment in the water that could be deposited. As the simulation advances, the sediment concentration C in the water increases. This statement is supported by the C(t) curve in the considered figure. The increased suspended sediment concentration also means that there is enough sediment in the water to start deposition, as can be seen on the D(t) curve. Furthermore, it can be noted that after some time, all three curves become horizontal. More precisely, the values of entrainment and deposition even out, resulting in equilibrium values of the considered variables.

Fig. 7
figure 7

Entrainment through time

Fig. 8
figure 8

Entrainment through space

Figure 7b depicts the same variables at point i = 30. By comparing Fig. 7a and Fig. 7b, it can be detected that, even though the shapes of the curves are the same, there are some differences between the values. For example, in Fig. 7a, the value of the suspended sediment concentration, when it reaches a steady state, is C ≈ 260ppm, while in point i = 30 (Fig. 7b), this value is C ≈ 225ppm. Considering the fact that point i = 30 is closer to the upstream end, the attained results correspond to the expected behavior. The difference between suspended sediment concentrations at steady state is explained by the fact that point i = 10 is further down then point i = 30; therefore, it has more space and time to pull bed sediment into suspension, leading to greater concentration values. This is also presented in Fig. 7c and d.

Figure 8a presents the variation of E throughout the channel at different times. It is observed that the greatest value of E appears at the beginning of the sediment computation, and it decreases in time, until reaching equilibrium, when any further computation results in the same curve (the two lowest curves in the figure are overlapping). Additionally, it can be noticed that the value of E generally increases downstream, since there is more available material to be entrained into suspension. The increase of E throughout the channel declines in time, and the line slowly tends to become horizontal due to the influence of the deposition term.

Figure 8b and c show the changes of D and C throughout the channel at different times. By comparison, it can be discovered that both of these variables are the smallest at the beginning of the simulation, and increase in time until reaching an equilibrium state (two upper curves overlapping in both figures). As the value of entrainment is increasing towards the downstream end, the value of C is also increasing and making it possible for the deposition to increase as well. Figure 8d simultaneously depicts values E and D throughout the channel at different times. The largest values of these variables are observed at the beginning of the simulation. It is also discovered that the difference between these two values decreases in time, until reaching an equilibrium state, manifested as the balancing out of E(x) and D(x) curves.

Suspended sediment deposition

In this numerical test, the initial condition for the sediment computation is set as known values C = 0.0, while the upstream boundary condition is a known suspended sediment concentration.

Figure 9a depicts concentration changes through time in two selected computational points: i = 10 and i = 30. The selected time interval embraces the moment when the disturbance reaches the selected points and slowly increases the concentrations until reaching a constant value that matches the one assigned with the boundary conditions. Figure 9b presents the values of E, D, and C at point i = 10. Furthermore, this demonstrates that the inflow of water containing suspended sediment into a channel with no sediment on its bed will provoke deposition, as expected. As a consequence of the deposition, bed sediment will become available for entrainment, explaining the lag of function E in comparison with D. It can also be observed that, as the concentration value becomes steady, the values of E and D even out confirming the establishment of an equilibrium state. Figure 9c shows the changes of E and D at points i = 10 and i = 30, where it can be noticed that values at point i = 10 lag behind values at point i = 30. This is explained by the fact that point i = 30 is located upstream of point i = 10, so the disturbance that occurs at the upstream end reaches it first.

Fig. 9
figure 9

Deposition through time

The changes through space are presented in Fig. 10. Figure 10 a shows the change of concentration through space at various times. By comparing the concentration values at different times, one can notice the increase of concentration from the initial condition until reaching the value of the boundary condition. Figure 10b and c present the changes of D and E through space for the selected times, where it can be observed that the increased concentrations are followed by deposition, while the consequence of deposition is the occurrence of entrainment. In Fig. 10d, it can be seen that function D(x) is always in front of curve E(x), due to the previously stated reasons. Furthermore, it clearly displays the tendency of these functions to balance out reaching an equilibrium state.

Fig. 10
figure 10

Deposition through space

Conclusion

This paper presents the theoretical background and preliminary numerical tests for a one-dimensional sediment transport and bed evolution model for an arbitrarily looped river network. The developed model relies on the active layer and sub-layers concept, and includes a complete set of governing equations that account for the transport of a sediment mixture as suspended, bed, and near bed sediment, as well as for possible morphological changes through the exchange mechanisms of entrainment and deposition. Utilizing the split operator approach, two sets of equations were defined, the advection and bed evolution equations and diffusion equation. Consequently, the suspended sediment advection was solved using the method of characteristics with the third-order local interpolation polynomial. However, this method was somewhat enhanced, providing the possibility for the particle trajectory to travel through multiple computational points, all the way to the upstream node of that particular reach. This enabled the model to handle larger time steps, thus reducing CPU time. The diffusion equation was solved using the Crank-Nicholson scheme.

As to the computational procedure when solving the advection and bed evolution equation set, the guiding principle was the simultaneous solution of all equations for each computational point independently. This significantly reduced the complexity of the model, since the sediment computation (within the advection and bed evolution step) remained explicit in space, but implicit within one computational point. Naturally, this procedure did not restrict the use of an unlimited number of size classes when describing a sediment mixture. To facilitate the modeling of sediment transport in arbitrarily looped river networks, the derived equations were complemented by additional equations that rely on nodal mass balance equations. In the case of suspended sediment, a complete mixing in nodes was assumed, while for the active layer size class distribution, the solution algorithm relies on a continuity equation for bed load fluxes with complete mixing of active layer material in nodes.

Initial numerical tests were conducted using schematic examples in order to evaluate the exchange mechanisms defined within the model as well as the mass balance equation for the whole modeled domain. These tests focused on evaluating the entrainment and deposition fluxes in situations when predictable results can be expected. For the entrainment mechanism, a scenario when clear water enters a channel with bed material was conceived, while for the deposition mechanism, a situation when water with suspended sediment enters an empty channel was analyzed. In both cases, the temporal and spacial evolution of the entrainment flux, deposition flux, and suspended sediment concentration was monitored. It was concluded that the exchange fluxes eventually come to an equilibrium, while the suspended sediment concentration takes on a constant value within one computational point as steady state is achieved. Furthermore, the error of the sediment mass balance equation and the condition for the sediment size class distribution remain within machine precision. Since the model performed well in all analyzed scenarios, it was concluded that the developed model passed the first stage of the evaluation process and is ready to be further examined using more complex field scenarios.