Terrain-following vertical coordinate overhaul

ROMS Code Release Announcements

Moderators: arango, robertson

Post Reply
Message
Author
User avatar
arango
Site Admin
Posts: 1347
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Terrain-following vertical coordinate overhaul

#1 Unread post by arango »

ROMS terrain-following, vertical coordinate have been revisited and further generalized to support additional transformation equations and numerous vertical stretching function provided that few constraints are satisfied. For more detailed information please check :arrow: WikiROMS. Notice that this Vertical S-coordinate link provides technical information, rules to follow when creating additional vertical stretching functions, metadata considerations to facilitate post-processing, and few examples comparing the vertical transformations.

The new tranformation and vertical stretching functions are now available in ROMS svn revision 322 (see :arrow: track ticket).

This implies that user need to be more careful from now on when preparing initial conditions, boundary conditions, climatologies, and observations since there are various ways to compute the depths of the grid in terms of the vertical transformations and their associated stretching parameters. A new routine netcdf_check_var was added to module mod_netcdf.F to check these parameters for consistency.

It is my plan to start releasing in the repository all the Matlab scripts that maybe used for pre- and post-processing. We need to guaranttee that users are using the official codes to compute the depths associated with a particular application. There are a lot of scripts that may not be doing this correctly. Anyway, it is a good idea to keep these scripts under svn control.

Warning:
  • All the standard input scripts (ocean*.in) were changed to add two new parameters Vtransform and Vstretching:

    Code: Select all

    ! Set vertical, terrain-following coordinates transformation equation and
    ! stretching function (see below for details), [1:Ngrids].
    
       Vtransform == 1                          ! transformation equation
      Vstretching == 1                          ! stretching function
    
    ! Vertical S-coordinates parameters, [1:Ngrids].
    
          THETA_S == 5.0d0                      ! surface stretching parameter
          THETA_B == 0.4d0                      ! bottom  stretching parameter
           TCLINE == 50.0d0                     ! critical depth (m)
    
    Here, Vtransform = 1 correspond to the original vertical transformation in ROMS (available since 1999). Vstretching = 1 corresponds also to the origina vertical stretching function (Song and Haidvogel, 1994). The advantages of the new transformation and stretching functions are discussed in :arrow: WikiROMS.
  • In order to use the new transformation (Vtransform=2) and vertical stretching funtions (Vstretching=1,2,3) you need to regenerate your input netcdf files and provide the correct 3D fields that depend on the vertical grid (depths). Usually, such fields are interpolated to tthe terrain-following coordinate grid. Notice that in the idealized test problems, the 3D fields are automatically assigned at the correct depths and no changes are necessary when using analytical expressions.
  • Notice that there are several possibilities for vertical stretching functions, Vstretching = 1,2,3. Functions 1 and 2 are appropriate for applications with depth bathymetry. I higlhly recommend to use function 3 in very shallow sediment applications (<200m). It is your resposability to choose the appropriate function for your application.

Post Reply