.. sectionauthor:: Yasuyuki SHIMIZU ################################################## One dimensional bed deformation modeling ################################################## With bedload sediment transport ================================== Continuity equation for bedload sediment transport ----------------------------------------------------- The 1D equation of continuity for sediment transport in a channel with a rectangular cross-section is as follows. .. math:: :label: d1_conb1 \cfrac{\partial z_b}{\partial t}+\cfrac{1}{(1-\lambda)B} \cfrac{\partial(B q_b)}{\partial x}=0 Where, :math:`B` is the channel width and :math:`\lambda` is the void ratio of the riverbed materials. The concept of Equation :eq:`d1_conb1` is shown in :numref:`scon1d`. As shown in the figure, as a result of the balance of sediment transport between two cross-sections separated by a distance of :math:`\Delta x`, the balance is assumed to continue for :math:`\Delta t`, and the riverbed elevation is assumed to change by :math:`\Delta z_b`. The reason for incorporating void ratio is that the bed deformation volume from deposition or erosion that results from the balance of sediment transport contains voids, :math:`\lambda`. .. _scon1d: .. figure:: images/07/scon1d.png :width: 80% :align: center : Schematic of 1D riverbed deformation (bedload) .. _stkd_qb: .. figure:: images/07/stkd_qb.png :width: 95% :align: center : Staggered grid (1D riverbed deformation calculation) When the calculation grid for bedload is arranged as shown in :numref:`stkd_qb`, the difference expression of Equation :eq:`d1_conb1` is given by the following equation. Note that the calculation points for :math:`q_b` are the same as those for :math:`u` in :numref:`1d_stk_b`. And the calculation points for :math:`z_b` are the same as those for :math:`h` in :numref:`1d_stk_b`. .. math:: :label: 1d_qb_fd z_b(i)^{n+1}=z_b(i)^n-\cfrac{\Delta t}{(1-\lambda)B(i)\Delta x} \left\{q_b(i)B_u(i)-q_b(i-1)B_u(i-1)\right\} Where, :math:`B_u` is the value of :math:`B` at the calculation points of :math:`q_b`. The value of math: `q_b(i)` at each calculation point is given by Equation :eq:`MPM` and Equation :eq:`Ashida`. The values of :math:`\tau_\ast` used for these sediment transport equations are given by Equation :eq:`tausta`. Here, :math:`I_e`, which is used for Equation :eq:`tausta`, is given by the following equation when the Manning formula is applied. .. math:: :label: Ie_eq I_e= \cfrac{{n_m}^2 u^2}{h^{4/3}} Calculation procedure -------------------------------- The calculation procedure is shown by the following flowchart: The bed deformation calculated by Equation :eq:`1d_qb_fd` is added to the end of :numref:`flowchart5`. .. _flow_chart6: .. figure:: images/07/flow_chart6.png :width: 80% :align: center : Flowchart for 1D calculation of riverbed deformation The Python code ---------------------- The Python code for the above calculation procedure is given here. https://github.com/YasuShimizu/1D_Flow_and_Bed_Deformation The main body of the calculation code is in “main.py” of this repository, from which we can access the respective “function.py” files that have been listed in the repository. Calculation conditions are set with “yml” files in the repository. The following four files for calculation condition are included. 1. Bed deformation for a river with a mound near the longitudinal midpoint of the channel: config_mound.yml 2. Bed deformation for a river with a constraint near the longitudinal midpoint of the channel: config_constriction.yml 3. Bed deformation for a river with a gradient changing point: config_slope_change.yml 4. Bed deformation for a river with no bedload supply from upstream (a section below a dam): downstream_dam.yml To execute these calculations, for example for “1.” above, in the prompt of Miniconda, write > python main.py config_mound for “xxxx” in “config_xxxxx.yml” which is a parameter as well as the file name. Then, to execute the calculation the yml file that describes the condition is called up. Calculation results ------------------------- The calculation results for 1D bed deformation under the above four conditions are as follows. .. _exam_1: .. figure:: images/07/mound.gif :width: 95% :align: center : Calculation results for the bed deformation of a river with a mound near the longitudinal midpoint of the channel .. _exam_2: .. figure:: images/07/constriction.gif :width: 95% :align: center : Calculation results for the bed deformation of a river with a constraint near the longitudinal midpoint of the channel .. _exam_3: .. figure:: images/07/slope_change.gif :width: 95% :align: center : Calculation results for the bed deformation of a river with a gradient changing point .. _exam_4: .. figure:: images/07/downstream_dam.gif :width: 95% :align: center : Calculation results for the bed deformation of a river with no bedload supply from upstream (a section immediately downstream of a dam) With suspended load sediment transport ============================================ Continuity equation for suspended sediment concentration --------------------------------------------------------------- As shown in :numref:`sus_cont`, we assume a channel with a rectangular cross-section and two cross-sections (I and II) that are separated by a distance of :math:`\Delta x`, to consider the continuous conditions of suspended sediment. .. _sus_cont: .. figure:: images/07/sus_cont.png :width: 80% :align: center : Conceptual diagram for continuous conditions of the 1D suspended sediment In the above :math:`\Delta x` section, assuming that the volume of water is :math:`V`, the average concentration is :math:``, the average water depth is :math:`h`, the average channel width within the section is :math:`B`, and the amount of suspended sediment transported through the section is :math:`Q_s`, then we have... .. math:: :label: 1d_con_sus \cfrac{\partial(V)}{\partial t} \Delta t + \cfrac{\partial{Q_s}}{\partial x} \Delta x \Delta t =(q_{su}-w_f c_b) \Delta x \Delta t B Where, :math:`q_{su}` is the amount of suspended sediment supplied from the bed per unit area per unit time, :math:`w_f` is the sediment settling velocity, and :math:`c_b` is the suspended sediment concentration near the bed. Also, because .. math:: :label: vqs V=A\Delta x = BH \Delta x, \; \; \; Q_s=Q=Bhu Therefore, .. math:: :label: vqs_div \cfrac{\partial(V)}{\partial t}=B \Delta x \cfrac{\partial}{\partial t} (h) \\ \cfrac{\partial Q_S}{\partial x}=\cfrac{\partial}{\partial x}(Bhu) Therefore, Equation :eq:`1d_con_sus` is... .. math:: :label: 1d_cons_sus1 \cfrac{\partial(h)}{\partial t} B \cancel{\Delta x \Delta t} + \cfrac{\partial(Bhu)}{\partial x} \cancel{\Delta x \Delta t} = (q_{su}-w_f c_b) B \cancel{\Delta x \Delta t} In addition... .. math:: :label: 1d_cons_sus2 \cfrac{\partial h}{\partial t}+ h\cfrac{\partial}{\partial t}+ \cfrac{1}{B} \left\{ \cfrac{\partial(Bhu)}{\partial x}+ Bhu\cfrac{\partial}{\partial x} \right\} =q_{su}-w_f c_b .. math:: :label: 1d_cons_sus3 \cancelto{\mbox{ from the equation of continuity }=0}{\left\{ \cfrac{\partial h}{\partial t} + \cfrac{1}{B} \cfrac{\partial(Buh)}{\partial x} \right\}} + h\cfrac{\partial}{\partial t} + hu \cfrac{\partial}{\partial x} =q_{su}-w_f c_b Therefore, .. math:: :label: 1d_cons_sus4 \cfrac{\partial}{\partial t} + u \cfrac{\partial}{\partial x} =\cfrac{1}{h}(q_{su}-w_f c_b) By applying the relationship given by Equation :eq:`ave_c` for :math:`` and :math:`c_b` in Equation :eq:`1d_cons_sus4`, we have... .. math:: :label: 1d_cons_sus5 \cfrac{\partial}{\partial t} + u \cfrac{\partial}{\partial x} =\cfrac{1}{h}(q_{su}-\alpha w_f ) Where, .. math:: :label: 1d_cons_sus6 \alpha=\cfrac{\beta}{1-\exp(-\beta)}, \; \; \beta=\cfrac{w_f h}{\epsilon} When incorporating diffusion of the suspended sediment concentration, add a diffusion term to the right side of :eq:`1d_cons_sus5`. Then, we have the following equation. .. math:: :label: 1d_cons_sus61 \cfrac{\partial}{\partial t} + u \cfrac{\partial}{\partial x} = D\cfrac{\partial ^2}{\partial x^2}+ \cfrac{1}{h}(q_{su}-\alpha w_f ) Consequently, Equation :eq:`1d_cons_sus61` is the equation of continuity for the depth-averaged suspended sediment concentration. The difference method is used for calculation of the equation. Equation :eq:`1d_cons_sus61` has the same form as Equation :eq:`sr1` which is an advection equation with a source term. It is given by replacing :math:`f` with :math:`` and :math:`G` with :math:`D\cfrac{\partial ^2}{\partial x^2}+\cfrac{1}{h}(q_{su}-\alpha w_f )` in Equation :eq:`sr1`. :math:`D\cfrac{\partial ^2}{\partial x^2}+\cfrac{1}{h}(q_{su}-\alpha w_f )` Use of the CIP method, which has been applied in this text, realizes highly accurate calculations. Also, in the calculation of :math:``, the calculation point is arranged between the calculation points of :math:`u`, as shown in the following figure. Therefore, the calculation point :eq:`u_x` is newly defined as :math:`u` at the calculation point of :math:``, as shown in Equation :math:`u_x`. This :eq:`u_x` is used as the advection velocity, :math:`u`, in the calculation of Equation :eq:`1d_cons_sus5`. .. _stkd_uc: .. figure:: images/07/stkd_uc.png :width: 100% :align: center : Arrangement of calculation points for suspended sediment concentration .. math:: :label: u_x u_x(i)=\cfrac{u(i)+u(i-1)}{2} Continuity equation for the bed with suspended sediment transport --------------------------------------------------------------------- The suspended sediment concentration close to the bed, :math:``, is obtained at the same time as we obtain the depth-averaged suspended sediment concentration, :math:`c_b`. Therefore, it is easy to calculate the bed deformation. .. _scon1d_s: .. figure:: images/07/scon1d_s.png :width: 75% :align: center : Schematic of bed deformation from suspended sediment .. math:: :label: sus_zb \cfrac{\partial z_b}{\partial t}= -\cfrac{1}{1-\lambda}(q_{su}-\alpha w_f ) The Python codes ---------------------------- The Python code for the above calculation procedure is given here. https://github.com/YasuShimizu/Bed-deformation-with-suspended-load Calculation results ------------------------ :numref:`res` shows the results of calculations on the sedimentation of suspended sediment in a reservoir, using the above code. The calculation conditions are as follows: a bed gradient of :math:`i=1/700`, a channel length :math:`L` of 10 km, the channel width :math:`B` of 100 m, Manning’s roughness coefficient :math:`n` of 0.02, a grain diameter of bed materials :math:`d` of 0.1 mm, a discharge :math:`Q` of 500 m :math:`^3` /s flowing through a rectangular cross-section, and a water depth at the downstreamend :math:`H` of 12 m. The conditions assume a dam reservoir. Note that this calculation example has the same conditions as the example for “Hydraulics for Field Work” (4) - suspended sediment and bed deformation- `_ , and the calculation results are the same. .. _res: .. figure:: images/07/res.gif :width: 95% :align: center : Calculation for the deposition of suspended sediment in a reservoir