Modelling Rivers


Rivers are natural water courses. They have vital contributions to the social and economical welfare of societies living along their course. They provide continuous, usually dependable, flow and supply of water. Accordingly, centralised civilisation began emerging independently along number of river valleys; e.g. the Nile, Tigris and Euphrates, the Indus and the Yellow Rivers. Since then, mankind has been in continuous struggle to understand and live in harmony with this gift/force of nature. Modelling rivers is the modern way to understand their behaviour and is an essential tool to tackle several river problems.

Delft3D is the state-of-the-art modelling framework for hydrodynamics, water quality, ecology, waves and morphology.
Here, in this space, we share knowledge & experiences, and discuss issues related to modelling of rivers.





Sub groups
D-Flow Flexible Mesh
Cohesive sediments & muddy systems


Message Boards

Initial bed composition

Tobias Gierra, modified 8 Years ago.

Initial bed composition

Youngling Posts: 5 Join Date: 3/23/11 Recent Posts

we try to simulate the spreading of sediment fractions in a reservoir with weir and diversion. Therefor we want to use the initial bed composition file. We defined the underlayer block in the *.sed file:

IUnderLyr = 1
UpdBaseLyr = 1
IniComp = Sedimentdicke.inb

Our *.inb file looks like follows:

FileCreationDate = Thu Jun 27 2011, 12:21:00
FileVersion = 01.00

Type = mass fraction
Thick = Sedimentdicke.thk
Fraction1 = 0.3
Fraction2 = 0.7

The tri-diag file says:

*** Start of underlayer input
Underlayer mechanism : 1
Boundary name : Schlüsselk
Composition condition prescribed : fixed
Boundary name : Durchfluss
Composition condition prescribed : fixed
Initial bed composition : Sedimentdicke.inb
*** End of underlayer input

But the solver seems to ignore the settings, because the IniSedThick options of the *.sed file is not be overruled. Did we forget to set an other required option?

Richard Measures, modified 8 Years ago.

RE: Initial bed composition (Answer)

Jedi Knight Posts: 178 Join Date: 3/23/11 Recent Posts
Hi Tobias,

I've managed to use the *.inb file successfully so was curious why it was not working in your case (when your underlayer block and *.inb file look correct to me). For this reason I had a quick look at the source code and it seems that the *.inb file never gets read if you have IUnderlyr = 1

select case(iunderlyr)
   if (flcomp /= ' ') then
      ! Read the data from the initial composition file.
      call rdinimorlyr(flcomp    ,lyrfrac   ,thlyr     ,cdryb     , &
                     & lsedtot   ,mmax      ,nlyr      ,nmax      , &
                     & nmaxus    ,nmmax     ,lundia    ,kcs       , &
                     & icx       ,icy       ,gdp       )

(src\engines_gpl\flow2d3d\packages\kernel\src\inichk\inimorlyr.f90 line 265 onwards).

After finding this I looked closely at the manual and noticed:
If the bed is initially vertically homogeneous, you can use the IniSedThick keyword in the <*.sed> file. If the bed is not completely homogeneous in the vertical direction, you should use this initial bed composition file.

(Section B9.9)

I guess this means you should be setting the bed up in the *.sed file rather than the *.inb file as you have a single layer bed.

In your example the tri-diag file is very misleading as it does imply that the *.inb file is being used... perhaps this needs improving?


Bert Jagers, modified 8 Years ago.

RE: Initial bed composition (Answer)

Jedi Knight Posts: 201 Join Date: 12/22/10 Recent Posts
Hi Tobias, Richard,

Richard's analysis is indeed correct. The IniComp keyword is only supported for IUnderLyr=2; the message in the tri-diag file is indeed confusing. I have now updated the code in rdmorlyr to give a warning when it finds an IniComp keyword in combination with IUnderLyr=1 (revision 628). Conceptually it should be possible to support IniComp also for IUnderLyr=1, but because IUnderLyr=1 uses different variables it's a bit difficult to change it immediately. As a workaround you may consider to use:

IUnderLyr = 2
ThTrLyr = 1000.0

I.e. use a multilayer bed in which the transport layer is forced to be 1km thick (or less if there is less sediment available). This will put all sediment in the transport layer and thus effectively you'll have a single fully mixed bed layer. This approach allows you to use the IniComp keyword.