University of Miami Wave Model (UMWM)
A third-generation spectral ocean wave model.
This is the reference implementation of UMWM, described by Donelan et al. (2012), with later improvements and bug fixes. UMWM solves the wave energy balance equation on a curvilinear grid. It has been used to simulate:
- Global swell and windsea
- Waves in coastal and hurricane conditions
- Wave-induced material transport (Stokes drift)
- Ancient Martian seas and methane lakes on Titan
- Waves in laboratory settings such as wave tanks
Getting the code
git clone https://github.com/umwm/umwm
- A recent Fortran compiler (known to work with GNU, Intel, Cray, and IBM)
- NetCDF for I/O
- MPI for parallel processing (optional)
Edit the following variables in the top-level Makefile:
FC: Fortran compiler (e.g.
mpif90for parallel builds)
FCFLAGS: Flags to pass to the Fortran compiler
CPPFLAGS: Pre-processor flags – set to
-DMPIif building for parallel execution, and leave blank for serial builds.
Path to the NetCDF library must be set as
NETCDF environment variable.
If your library is installed in non-standard directories (something
$NETCDF/lib for library files and
$NETCDF/include for modules)
NETCDFINC variables in
umwm will be built in the top-level directory.
Auxilliary tools executables will be built in
Documentation will be built in
Running in serial mode:
Running in parallel, for example on 16 cores:
mpiexec -n 16 ./umwm
Read the docs for more information.
See the full list of publications here.
UMWM development is currently supported by NSF Award 1745384. It has previously been supported by the Gulf of Mexico Research Initiative and the National Oceanographic Partnership Program.
UMWM has also been improved by a number of open source contributors.