Version 6.1 PreviousNext
CAESAR discussion board > Development Blog / Update notes >
Message/Author
Next message Tom Coulthard (Tom)  posted on Monday, September 21, 2009 - 12:26 pm
Not a significant difference from 6.0j but worthy of a new number I thought!

When running 6.0j I noticed (and others) a couple of problems. These are mainly when operating in reach mode, and probably will make no/little difference if you are running the model without lateral erosion. In the text below I’ll outline the two problems then how they have been dealt with.

Firstly there were pits developing in certain areas – or certain parts of the channel were just scouring out too much.
Secondly there were areas where there was too much deposition where there should not have been. Sometimes on bends, often at the input point to the DEM.

The two were interlinked to a degree but dealing with the first issue. This was largely down to what I call discharge sloshing.. that is when discharge is left behind in a scan it is then picked up in the subsequent scan(s) or the next iteration. Sometimes this volume of discharge left behind can seem to accumulate or get greater – leading to more erosion (when driven by discharge/velocity) and thus a positive feedback leading to deepening, more discharge etc... I looked at the role of the pit filling algorithm in this (was it not enough or too great) and after lengthy testing this seemed fine. However, I did find that lateral erosion was carried out after pit filling and before water routing. This has now been changed, and a new small function written to zero values at the end of each iteration, rather than doing it at the end of the lateral2 function. I have made three changes in the code to deal with this issue. Firstly, discharge smoothing has been re-introcuded (it was in 5.9 but removed in 6.0). What this does is smooth the discharge left in cells – corners of meander bends etc.. – at the end of each iteration, so when this discharge is picked up in subsequent iteration scans it is picked up smoothly rather than just having one sudden jump in discharge (and thus depth). This seems to stop or slow down the erosion or digging of individual cells where the discharge was deposited on a previoius iteration. Secondly, I am removing this discharge (that left after sweeping) from the discharge used to calculate velocity and thus erosion. This is carried out in calc_flow_direction. This means that any discharge left or stored in a cell does not contribute to the discharge leaving the cell – reducing the positive feedback I talked about earlier. Finally, its important to have the correct sweep width. If your channel is usually 4 cells wide, you need a sweep width of 4. Any less and you can (only sometimes) get discharge being pushed around back and forth up and down and effectively being counted twice in a cell. This can be reduced/removed by increasing the sweep width.

Dealing with the second issue. By trial and error this issue of deposition seeming to concentrate on certain areas was closely linked to the edge gradient. In erode_w the distribution of sediment is partly (up to 25%) driven by the edge gradient, also velocity is increased or decreased by this. So if you have an area where there is only negative (green) edge gradient then sediment will tend to accumulate there and be harder to be eroded from there. To combat this, the % moved according to the edge gradient is now only determined by +ve values of the edge gradient. So where there are negative values there shouldbe no lateral movement of sediment. Secondly, in lateral2 all inside bends (-ve edge values) are reduced by 0.1 before any smoothing takes place. This means there are more positive edge values than negative getting rid of situations which had occurred where bends meandered from one way to the other and at the straight bit between bends there was –ve edge gradient across the channel.
OK, there are a couple of other tweaks that have been put in. The max and min slope that can be used to calculate water depth has been relaxed, from 0.001 and 0.01 to 0.0005 and 0.05. This means that there is a greater range of water depths calculated for different slopes etc.. so velocities can be greater and slower where required – esp in low gradient channels. In erode_w I am using a constant ci value – rather than having it vary according to depth.
You will also find that with the two methods for calculating lateral erosion, there appears to be (according to tests presently being carried out) no real difference in the shape of meanders created – but the first method needs to have the constant 20 times smaller than the second – this is because the edge gradient value is much greater than that calculated in the other method. There are some very subtle differences in the shape of bends created – but its hard to determine whether this is due to the method or not having precisely matched constants.
Next message Tom Coulthard (Tom)  posted on Tuesday, November 10, 2009 - 02:12 pm
6.1f
Made some small but important changes here.

#1. WHen using bedslope to determine shear stress (the best way when in catchment mode) I had forgot to divide the slope by the grid cell size - so it was drastically over estimating shear stress. This version is correct. The previous version was wrong if you use bedslope for calculating Tau.

#2. Google earth exports now work for any UTM zone on the planet. Thanks to Arnaud Temme from Wageningen for writing this section of code. If you are not using the model on a UK catchment - check the box and you are prompted for a UTM zone. It should then (assuming the co-ords in the header of the DEM you are using are correct) place the animation or image in the correct place. Also works in Southern Hemisphere. Excellent work Arnaud.

#3. Minor changes in the pit filling routine makes it a bit more efficient

#4. Where sediment reaches an edge that is NOT the RH edge it is now lost (flows over it) but is not included in the sediment output file (catchment.dat). I may consider amending this but am not 100% sure at the moment. This prevented (when in catchment mode) backing up of sediment where small tribs not exiting on the RH edge led to build ups of sediment.

#5. Some subtle changes in the lateral erosion routine - should make the bends a bit smoother rather than right angled pointy.
Next message Tom Coulthard (Tom)  posted on Wednesday, January 06, 2010 - 08:23 pm
6.1f-8 (probably to be 6.1g.cs)
Been working on optimising catchment mode. Most of the changes made over the last 2 years have been towards its use in reach mode - as such many of the bits added to help reach mode along have slowed catchment mode up.
Changes include not accounting for pit filling or smoothing left discharges when using bedslope to calc erosion,
Also discovered small bug that may have led to over estimation of discharges (especially large ones) in catchment mode. Prelimiary tests show its running 150% faster in catchment mode than it was before - which is a huge speed up.
I'll release more details and a new version soon,

Tom
Back to top
Add Your Message Here
Post:
Bold text Italics Underline Create a hyperlink Insert a clipart image

Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action: