Demonstration Sediment-Transport Applets

These demonstration applets demonstrate a subset of the sedx package, a collection of Java classes for peforming sediment-transport calculations and associated oceanographic calculations. The applets are intended to allow quick access to commonly used calculations. If you are interested in the underlying Java package, contact Chris Sherwood. To run the applets, you need a Java-aware browser (e.g, Netscape 3.0 or higher) with Java enabled (under Options/Network Preferences/Languages). Read the disclaimer, then just click on an applet in the list below. (Ones that are unlinked are under development but should appear soon. I will take suggestions for others!)

Background Information About the Calculations

This section provide brief descriptions of the calculations performed by each of the applets.

Linear Wave Calculations

This applet calculates angular wave frequency, wavenumber, and near-bottom horizontal orbital velocity for monochromatic linear gravity waves (c.f. Komar, 1976). The wavenumber k = 2 pi/L, where L is wavelength, is determined from the dispersion equation. Because k is implicit in the dispersion equation, this is normally an iterative calculation with asymptotic solutions for shallow and deepwater cases. This applet uses the explicit approximation suggested by Hunt (1979), which (according to my limited tests) is accurate to within about 0.2%.

Water Property Calculations

This applet calculates seawater density (Millero et al., 1980; Millero and Poisson, 1981), kinematic (molecular) viscosity, (Kukulka et al., 1987 as cited in Boudreau's 1997 DIFCOEF.F routine), dynamic viscosity (kinematic viscosity/density), freezing point (Millero et al., 1978), heat capacity (Millero et al., 1973), and sound velocity (Apel, 1987). Inputs are practical salinity in the range 0 to 42, temperature between freezing point and 40 deg C, and pressure (above atmospheric) in bars, up to 1000 bars. (A bar is approximately 10.13 meters of water depth). Density calculations should be accurate to 0.03 kg m-3. Viscosity calculations are valid from 0 <= T <= 30 and 0 <= S <= 36, but estimates to -3 deg C are returned. Heat capacity calculations are accurate to better than 0.4 J kg-1 deg C-1 and valid between -3 <= T < 40 and 0 < S < 40. Freezing points should be accurate to 0.004 deg C in the range 0 <= T <= 30 and 0 <= S <= 36, and calcs to T = -3 deg C are allowed. Sound velocity calculations are probably accurate to 0.5 m s-1, but are not optimal for cold water calculations.

Particle Settling Velocites and Critical Shear Stress

This applet calculates particle settling velocities according to three standard equations: the Stokes settling equation (e.g., Neilsen 1992, p.165), the Gibbs equation (also in Neilsen, 1992, p. 165), and the empirical equation developed by Dietrich (1982), which incorporates values of the Powers roundness factor and the Corey shape factor. It also calculates critical shear stress for non-cohesive well-sorted particles using a non-dimensional Sheilds curve ( White, 1970; Gelfenbaum and Smith, 1986. Water properties must be specified in order to calculate water density and viscosity...these routines are the same as the ones in the water properties applet.

Ripple Geometry Calculations

This program calculates equilibrium height, wavelength, and steepness of wave-formed ripples on a sandy bottom using the empirical formulations of Wiberg and Harris (1994). Required input is wave height, wave period, water depth, and sand grain diameter. Linear-wave calculations are used to calculate near-bottom orbital velocity and orbital diameter. The ripple geometries are valid only for sand-sized sediments (-1 to 4 phi; 2 to 0.0625 mm), and only when the critical shear stress has been exceeded, but the material is not in suspension. At this point the program does not check the transport criteria only suggests that there may be no transport when orbital velocity is less than 0.13 cm/s.

Wave-Current Boundary Layer Calculations

This applet calculates properties of a neutrally stratified wave-current bottom boundary layer using the approach of Madsen (1994). In the absence of waves, the current profile near the bottom is generally logarithmic, taking the form:

u = u*c/kappa * ln( z/zo )

where u is speed at elevation z, u*c is current shear velocity, kappa is von Karmans constant (0.41) and zo is the bottom roughness length. The effect of wave-induced turbulence (which is confined to a thin sublayer within the current boundary layer) is to increase coupling between the currents and the bottom. Assuming that the current velocity at some reference elevation (usually 1 m above the bed) is held constant, the effect of adding waves is to increase drag, as evidenced by a larger "apparent" zoa (or, equivalently, an enhanced bottom-drag coefficient Cde. The shear in the current boundary layer is increased (higher u*c). In addition, the calculations estimate the friction velocity associated with the wave motion (u*w) and the maximum friction velocity of the combined waves and currents u*wc. The calculations presented here assume constant linear eddy viscosities in the current and wave boundary layers, connected by a region of uniform eddy viscosity. A critical assumption is that a single length scale exists, and the solution is formally restricted to the range of roughness indicated in Madsen's Eqn. 32 and 33. Watch for error messages at the bottom of the output.

Fetch- and Depth-Limited Wave Height and Period Calculations

This applet implements Eqns. 3-39 and 3-40 from the Shore Protection Manual. Input is the 10-m wind speed u [m s-1], the fetch f [km], and the water depth h [m]. The applet adjusts wind speed to adjusted wind speed Ua according to Eqn. 3-28a before being used. The calculations assume a flat bottom with depth h. No checks are made to ensure that reasonable values are entered or that the calculations are within the applicable range.

Java Issues

A few problems have come up as I have tried to learn and use Java for these calculations. Below is a running list.


The applets in the sedx package have not been completely tested and are not warranted in any way. Please do not use them for any application that involves money, or the welfare of people, animals, or sediment particles.

Development of the sedx package was supported by the Division of Marine Research, Commonwealth Scientific and Research Organisation (CSIRO) in Hobart, Australia. Maintainence is now supported by the USGS, but any errors are the sole responsibility of Chris Sherwood.

Bug Reports

If you find errors, please sent email to