Skip to content
Ricardo Torres edited this page Feb 16, 2022 · 1 revision

FVCOM

{{ :wiki:official_fvcom_logo.png?nolink&300|}}

FVCOM is a prognostic, unstructured-grid, finite-volume, free-surface, 3-D primitive equation coastal ocean circulation model developed by UMASSD-WHOI joint efforts.

The model consists of momentum, continuity, temperature, salinity and density equations and is closed physically and mathematically using turbulence closure submodels. The horizontal grid is comprised of unstructured triangular cells and the irregular bottom is preseented using generalized terrain-following coordinates.

The General Ocean Turbulent Model (GOTM) developed by Burchard’s research group in Germany (Burchard, 2002) has been added to FVCOM to provide optional vertical turbulent closure schemes. FVCOM is solved numerically by a second-order accurate discrete flux calculation in the integral form of the governing equations over an unstructured triangular grid. This approach combines the best features of finite-element methods (grid flexibility) and finite-difference methods (numerical efficiency and code simplicity) and provides a much better numerical representation of both local and global momentum, mass, salt, heat, and tracer conservation.

The ability of FVCOM to accurately solve scalar conservation equations in addition to the topological flexibility provided by unstructured meshes and the simplicity of the coding structure has make FVCOM ideally suited for many coastal and interdisciplinary scientific applications.

Getting FVCOM

FVCOM is hosted by the University of Massachusetts – Dartmouth (UMASS-D) in collaboration with Dr. R. Beardsley at the Woods Hole Oceanographic Institution. The http://fvcom.smast.umassd.edu/fvcom contains a http://fvcom.smast.umassd.edu/wp-login.php?action=register which must be completed before the source code is available for download.

  • Compiling FVCOM
  • FVCOM manual
  • Read the code

Intel Fortran compatibility issues

With Intel Fortran compiler versions 15 and above, the behaviour of pointers has changed and FVCOM experiences problems in some FVCOM modules. To date (2016-10-25), FABM has problems when reading boundary data for ERSEM. Other identified problems appear when running the nesting output (NCNEST). The problems manifest as FVCOM 'hanging' whilst utilising 100% of the CPU(s).

This has been fixed in FVCOM 4.0 (it is to do with initialising pointers) but that change has not been backported to FVCOM 3.x.

Tools

  • VisIt - a free interactive parallel visualization and graphical analysis tool for viewing scientific data on Unix and PC platforms
  • fvcom-toolbox - a MATLAB toolbox for generating FVCOM input files and processing output files
  • SMS - proprietary Windows software to generate unstructured grids for use in FVCOM
  • PyFVCOM - an ever-growing toolbox of tools in Python to read FVCOM model outputs and perform FVCOM post-processing
  • PySeidon - a Python post-processing library which performs a number of analyses (e.g. harmonic analysis) of FVCOM outputs.
  • MATLAB - An example MATLAB script for plotting FVCOM output

Configuration

Some aspects of the configuration of FVCOM are outlined below. This includes configuring the model grid, its open boundaries and the surface forcing. The configuration steps outlined here often make use of the (FVCOM matlab toolbox) which simplifies the processes. Where appropriate, example code is included to show how to use the relevant tools. Elsewhere, the functions which are required are enumerated instead.

Grids

  • Setting up an unstructured grid in SMS
  • Scale considerations in grids

Open boundaries

  • Generating open boundary forcing for tides only and tides and mean flow
  • Generating open boundary forcing for temperature and salinity
  • Generating the necessary files to create mean flow at the boundaries

Surface forcing

  • WRF model configuration for surface forcing
  • Using NCEP reanalysis II atmospheric forcing to create surface forcing
  • Using Met Office Unified Model atmospheric forcing to create surface forcing

Rivers

  • Generating the necessary files to input river discharge at specific nodes

Groundwater

  • Generating variable groundwater input at specific nodes

Nesting and outputs

  • Description of nesting requirements/procedures to use structured grid model ouputs
  • Configuration of the probes for output time series
  • Outputting a subdomain of the main model domain

FVCOM-FABM (ERSEM)

  • Running FVCOM-FABM

Lagrangian particles

  • Offline Lagrangian run
  • PyLag

Tidal turbines

  • Configuring the momentum sink paramaterisation

Sediment transport

  • Configuring sediment transport

Tips

  • Stability and configuration - A list of tips on configuring FVCOM.
  • Domain examples - Summary of domain setup checks
  • Nested Domain examples - Summary of steps to generate a high res nested domain
  • Semi-Implicit - Considerations for using semi-implicit option

Data Sets

The pages below outline some useful data sets which have been used with FVCOM. This includes instructions on how to use the FVCOM matlab toolbox to obtain and process these data.

  • The NCEP Reanalysis 2 outputs
  • The Met Office's Unified Model and its outputs
  • How to convert the Met Office's Unified Model outputs to netCDF

FVCOM Workshops

Archived presentations and notes from previous workshops.

Users contributions corner

Users share here their experiences and work flows to setup and run a domain. These range from idealised setups accessible through the gitlab repository to real life implementations

Wiki Information

Clone this wiki locally