coastal evolution,
C
The material underlying the shoreline and shoreface converted to mobile sediment as it is exposed by shoreline erosion. The lithology is parameterized by two quantities that can vary across the model domain: the maximum weathering rate (which occurs when the shoreface is bare of sediment) and the composition of the resulting sediment (percentage coarse enough to stay in the nearshore system. See Valvo et al. (2006) for a full explanation of how underlying geology is treated.
Where beach nourishment is deemed by the user to be occurring, if the gradients in sediment flux would cause the shoreline to erode landward of a pre-determined location, sediment is added at the rate required to prevent such shoreline change. Hard structures are treated as if the lithology has a maximum weathering rate of 0.
However, to date the model has been used chiefly for relatively abstract explorations of how coastline evolution works: how emergent coastline structures such as capes, spits, and alongshore sand waves form and interact; how heterogeneity in underlying geology affects coastline evolution; how scenarios of changing storm and wave climates would affect coastline change; and how human manipulations alter large-scale coastline change). Ashton and Murray (2006b) compared robust model predictions concerning the way local wave climates vary along a coastline with emergent structures (capes and flying spits) to hindcast wave climates along actual shorelines. As opposed to testing whether model parameters can be adjusted to reproduce observations in detail, testing a robust prediction like this, which does not depend on the formal details of the model ingredients, can falsify the hypothesis that the interactions in the model capture the basic aspects of the interactions that are important in the actual system (see Murray, 2003; 2007).
This part will be filled out by CSDMS staff
Avulsion,
<pbars ytitle=Downloads Title='Monthly Downloads cem' xlabels=true size=900x200 ymax=30 grid=true box=true cubic=true plots=open xformat=number connected=true angle=90 legend> ,Total downloads: 331 2008 - Jan,0 Feb,0 Mar,0 Apr,0 May,0 Jun,0 Jul,0 Aug,0 Sep,0 Oct,0 Nov,0 Dec,0 2009 - Jan,0 Feb,0 Mar,0 Apr,0 May,0 Jun,0 Jul,0 Aug,0 Sep,0 Oct,0 Nov,0 Dec,6 2010 - Jan,15 Feb,16 Mar,12 Apr,4 May,13 Jun,12 Jul,7 Aug,3 Sep,4 Oct,3 Nov,6 Dec,2 2011 - Jan,3 Feb,1 Mar,9 Apr,1 May,3 Jun,9 Jul,1 Aug,1 Sep,0 Oct,2 Nov,1 Dec,3 2012 - Jan,2 Feb,4 Mar,10 Apr,3 May,6 Jun,7 Jul,3 Aug,1 Sep,1 Oct,6 Nov,5 Dec,7 2013 - Jan,3 Feb,7 Mar,5 Apr,9 May,4 Jun,1 Jul,4 Aug,0 Sep,5 Oct,8 Nov,7 Dec,0 2014 - Jan,4 Feb,3 Mar,5 Apr,3 May,7 Jun,4 Jul,2 Aug,12 Sep,15 Oct,8 Nov,4 Dec,9 2015 - Jan,9 Feb,1 Mar,0 Apr,0 May,0 Jun,0 Jul,0 </pbars>
NOTE: This page is still under development. Some information may be incorrect. When we believe everything is correct, we'll remove this message.
This site hosts the source code for the Coastline Evolution Model (CEM) from Duke University. To find out more technical details of this model, please see above. This purpose of the instructions on this page are to explain how to download, compile, and use the model.
Please keep in mind this is an open-source project, not shrink-wrapped software. So it may require a bit of effort to get running on your own system. The source code is very-well documented however, and we'd encourage you to extend it for your own purposes.
The source code is licensed under the Berkeley Standard Distribution (BSD) license.
Currently, the source code has only been run on Linux CentOS (which is a variation of RedHat Linux). It has also been successfully used on Mac OSX and Solaris, but the Makefiles will need slight tweaks on those systems. We'd appreciate any help getting the model to run on systems other than Linux!
The model code is written in C and requires the GNU Compiler Collection (GCC), preferably under version 4.0.2 or greater. It has also been run under GCC v2.9.6. Please do not use the GCC v3.x.x compiler series; we have run into issues with them.
The model code requires two libraries to be installed on your system:
You may need to tweak the Makefile to compile if you have these two libraries installed in a non-standard location; contact us for help.
To download the source code, you must use Subversion (svn), which you can get at http://subversion.tigris.org/. This project's Subversion repository may be accessed using many different client programs and plug-ins. See your client's documentation for more information.
For help on how to use Subversion, an excellent manual is available online at http://svnbook.red-bean.com/
CEM is a stand-alone subroutine. To browse the repository, point your browser to: http://csdms.colorado.edu/viewvc/?root=cem
If you plan to make changes, use this command to check out the code as yourself using HTTPS:
# Project members authenticate over HTTPS to allow committing changes. svn checkout https://csdms.colorado.edu/svn/cem/
When prompted, enter your CSDMS Subversion password.
Non-members may only check out a read-only working copy of the project source.
To obtain a CSDMS Subversion account or to become a member of this project, please email csdms@colorado.edu.
Template:Download Model
Once you have downloaded the source code, you can compile it using the UNIX/Linux 'make' utility (which should come standard with your Operating System). It is probably worthwhile to edit the Makefile in the cem/ and cem/tools/ directories to set the options you want. There are further instructions there.
To compile from the cem/ directory, simply enter the 'make' command. It compiles the model into an executable named 'cem'. It also compiles the tools/ subdirectory.
The CEM model is a command-line driven program. It has no GUI (Graphical User Interface). It takes several inputs:
It generates several outputs:
Once you have generated the configuration file, the initial shoreline, and the set of wave forcings (described below), you can run the model on the command-line as follows:
% cem --config=<path to config file>/config.xml
Note that the 'cem' executable must be in your path, and <path to config file> is the directory in which the XML configuration file is located.
A text-based XML-formatted file sets configuration options for CEM. You can find an example in the xml/ subdirectory. Please use that example config.xml for your own purposes. The configuration options are relatively straight forward with brief explanations below.
There is a utility program in the tools/ directory, called 'spxcreate' to create an initial shoreline. This utility creates model shorelines that are initially straight or have small initial perturbations. The utility works off a set number of predefined shorelines; you have the ability to override any individual attribute of the initial shoreline.
For example,
% spxcreate "Rough Beach 100m"
will create an initially straight shoreline with small perturbations that is 150 cells alongshore, 100 cells cross-shore, where each cell is 100 m on each side. If you want to make an initial shoreline with an alongshore length of 300 cells instead, you can do something like
% spxcreate "Rough Beach 100m" ALONG=300
Please see the source code (tools/spxcreate.c) for more documentation. Typically, cells in the shoreline have widths of either 100 m or 1000 m.
There is a utility program in the tools/ directory, called 'wvxcreate' to create an initial shoreline. This utility creates waves according to two parameters: the proportion of waves approaching from high angles and the proportion of the waves approach from the left (looking off-shore).
% wvxcreate -n 5000 -d 0.60 -h 0.55 -w 1.7 -f waves.wvx
will create a file named 'waves.wvx' that contains 5000 waves. Each wave has a height of 1.7m and 60% of the wave influences approach from the left (looking off-shore) and 55% of the wave influences approach from high-angle.
Note that you must generate enough waves for your simulation. The number of waves is simply the number of timesteps of your simulation divided by the number of timesteps per wave as set in your config.xml file.
The CEM model lets you generate both shoreline (SPX) files and picture (JPEG) files at any point during the simulation. If you wish to generate a text file of the positions of the beach (the dividing line between the ocean and land), you may use the 'spxposition' utility located in the tools/ directory. You can then import this text file into other programs (e.g. MATLAB). The usages of the 'spxposition' utility is simple:
% spxposition <spx file>