Tom Coulthard Professor of Physical Geography, University of Hull, UK.
Copyright 2011 Tom Coulthard, University of Hull, UK.
A geomorphological / Landscape evolution model that combines the Lisflood-FP 2d
hydrodynamic flow model with the CAESAR geomorphic model to simulate erosion and
deposition in river catchments and reaches over time scales from hours to 1000's of years.
Key features of CAESAR-Lisflood
" Landscape evolution model simulating erosion and deposition across river reaches or
catchments, including slope processes operating over a wide range to spatial and time
scales (1km^2 to 1000km^2, <1year to 1000+ years)
" A hydrodynamic 2D flow model (based on the Lisflood FP code) that conserves mass and
partial momentum. (model can be run as flow model alone)
" Easy to use GUI
" Re-designed to operate on multiple core processors (parallel processing of core functions)
" Reduced parameterisation of flow model from previous CAESAR codes.
What is CAESAR-Lisflood? Background and development.
The CAESAR landscape evolution model (LEM) has been developed and used over the last
15 years to simulate erosion and depositional changes in river catchments over a range of
time and space scales. However, whilst numerically fast, the representation of river flow
within CAESAR was steady state and did not conserve mass of water nor momentum. Full
2d flow models have been increasing in speed over the last 20 years, but have still been too
slow to simulate erosion and deposition over longer time scales (e.g. greater than 10 years).
Yet, simpler 2d flow models that conserve mass but do not explicitly simulate secondary or
cross channel circulation have been developed, mostly for predicting inundation areas
from floods. These 2d models such as Lisflood, and Jflow are much faster than full 2d codes
- but were still restricted to operating with small time steps (e.g. < 1-2 seconds) to prevent
numerical instability. The Lisflood FP code of Bates et al. (2009) made a key step by
including a simple momentum term, that dramatically reduced numerical instability
allowing much longer time steps to be used, especially at smaller grid scales. This increase
in speed made, gave the potential to use such a flow model in a LEM. Furthermore, the
existing 'scanning' algorithm within CAESAR was sequential in its operation which meant it
was not suitable for being parallelised. In contrast, the Lisflood FP code has been
extensively parallelised and written for GPU.
Coding began in March 2011 by integrating the basic Lisflood FP code within CAESAR. This
prompted a 'spring clean' of the original erosion and deposition code, with over 70% of this
re-written and simplified. The code was also re-structured to operate in parallel making use
of multi-core processors. Changing the flow model also meant that the erosion and
deposition code from CAESAR behaved in a slightly different way. Therefore additional
parameters for lateral movement of sediment were required, developed and paramterised.
Further enhancements included developing a method for speeding up the flow model
during low flows or when flow inputs equalled outputs when the model was effectively in a
Moving from original CAESAR.
For researchers who have used the original CAESAR, CAESAR-Lisflood is very
similar to use - though actually operates in a very different way behind the GUI.
This section highlights the differences and parameter changes between old and
new for existing users.
The main change due to the flow model, is that there is no diagonal flow of water
or sediment. Water and sediment moves only to manhattan neighbours. This
significantly increases the speed of model operation.
In the file tab - there are no additional boxes, but the tracer boxes have been
removed. Tracer was rarely used yet added quite some complexity to the code, so
for now has been removed.
The numerical tab is also much simpler. Some controls/boxes from here have
been re-located to the sediment tab and a new tab for the flow model. The main
change here to note is that the min time step should have a value of at least 1. This
is required to prevent numerical instabilities forming, where sediment is moved
faster than water - especially when the code is first running.
The sediment tab contains some changes. Firstly, only one grainsize can be
suspended - with its own fall velocity. This is because suspended sediment is now
routed with the new flow model - in effect a parallel body of water and to extend
this to all the grainsize fractions would be computationally heavy. On the right
side there are also changes. There is now no option to chose whether bedslope or
velocity is used to calculate shear stress and thus erosion. This is now fixed as
velocity. There is the choice between the wilcock and Crowe or Einstein sediment
transport rule. Below this is a control on the max velocity used to calc Tau - which
is a leftover from the previous CAESAR and is rarely used - but included here. Max
erode limit and active layer thickness are as per previous versions - but it is
important that the max erode limit is set at least 25% of the value of the active
layer thickness. Increasing the max erode limit will increase the speed of the
model (it is the max amount allowed to be moved from one cell to another per
iteration) but too high values can result in numerical instabilities developing. If
you get 'checkerboxing' or checked patterns in erosion and deposition or flow
then this may well be set too high.
Other main changes here are the 'channel lateral erosion rate' circled in red. Put
simply, this parameter controls how fat or thin the channel is - it represents how
cohesive or not the sediment is. If sediment is loosely packed and unconsolidated,
then it is readily eroded, laterally transported (within the channel) and results in a
shallow wide channel. If it is more cohesive, harder to move laterally then a
narrower deeper channel results. Larger values of this parameter result in wide
channels, smaller narrower. Numerically, this parameter will move sediment
laterally from a cell (a) (that is underwater) to a reciving cell (b) cell based on the
amount eroded (E) that iteration by the receiving cell multiplied by the lateral
parameter L and the slope between the receiving cell and the giving cell.
dZb = Eb L (Za - Zb) /dx
where Z is cell elevation and dZb is the change in elevation of the receiving cell,
dx is the grid cell size. This addition is required (and seen in other models) to
reduce the positive feedback where erosion focuses more flow on that cell, which
causes more erosion etc.. leading to single thread deep channels. Another analogy
is that this is equivalent to lateral collapses of the bed when there is scour. At the
heart of the formulation is the (observed) idea that as you erode from one part of
the channel a small amount of the channel next to that part will move/slide into
the part eroded.
Lateral erosion is fully integrated within CAESAR-Lisflood though it may be
slightly faster to run the model without this option (if required). A check box
switches lateral erosion on or off. The rate of lateral erosion is calculated by the
radius of curvature, that is done according to the edge counting method described
in Coulthard and Van de Wiel, (2007). The second box - number of passes for
edsge smoothing filter - describes how well smoothed the calculated curvature of
the channels is. Values calculated by this method (edge) can displayed when the
model is running with the lateral gradient display option. This will show red for
the outside of bends and green for the inside. As a rough guide, this value should
be set as the frequency of meanders (or distance between two meanders) in grid
cell size. Too small a number will result in very bumpy lateral development, too
large will result in too little movement and smoothing across bends.
The amount of lateral erosion is determined by the lateral erosion rate which is:
dZb = Eb Ca /dx
where Z is cell elevation and dZb is the change in elevation of the cell next to the
bank, Eb is the amount of material eroded from the cell adjacent to the bank, Ca is
the radius of curvature (varying from 0 to 0.1) for the bank cell and dx is the grid
A new tab 'flow model' has been added that includes some existing parameters as
well as some new.
'Input - output difference allowed' is a value (in cumecs) which is used to speed up
the model operation. Whether running in reach or catchment mode,
CAESAR-Lisflood will calculate what water discharge should be coming out of the
model. If the discharge coming out is equal to that being added, then we can
assume the flow model is running in a steady state. If so, we can then detach the
time step of the flow model from that of the erosion and deposition model and
allow the time steps to extend to that determined by erosion and deposition. This
allows the timestep to increase from c.10 seconds to up to 30 min during low flow
times. The value of 'Input - output difference allowed' is the difference in cumecs
between the input and output that is acceptable to allow the model to run in this
faster mode. As a rule of thumb, it could be set to be close to a low flow value or
mean annual flow. CAESAR-Lisflood will shift automatically between these two
modes of operation and it results in much faster operation, especially during low
or static flows.
'slope for edge cells' is the slope for the exit cells on the far right hand side.
Lisflood-FP requires a slope for these cells in order to calculate a water depth and
thus flow out from the model. This is actually quite important in controlling the
erosion and deposition that occurs along the far right hand side of the DEM. Set
too low and you will get deposition, too high and scour heading back upstream. To
set this value, calculate the mean valley floor (near channel) slope for the channel
near where it exits.
'Courant number' is a value that controls the numerical stability and speed of
operation of the flow model. More details can be found in Bates et al (2009). It
should only range between 0.2 and 0.7. Higher values increase the model time
step but are more unstable. Stability and thus values also depends upon the grid
cell size. Larger cells (e.g. 20m, 50m+) can take values of 0.7, smaller cells (e.g.
2m) may need the smallest value (0.2). Stability is also linked to the erodelimit
value (sediment tab) which controls the amount of sediment that can be eroded or
deposited from a cell.
Download CAESAR Lisflood 1.0
CAESAR lisflood is available for download from the
google code pages here:
Release notes and instructions are available
through the wiki on the above site.