14. Adding tides#

Using the method described by Flather and Davies [1976], CROCO is able to propagate the different tidal constituents from its lateral boundaries.

To do so, you will need to add the tidal components to the forcing file, and define the following cpp keys TIDES, SSH_TIDES and UV_TIDES and recompile the model using jobcomp. To work correctly, the model should use the characteristic method open boundary radiation scheme (cpp key OBC_M2CHARACT defined).

Warning

To get a clean signal you need to provide harmonic components from both tide elevation and tide velocity. In case you don’t have velocity harmonics (not defined UV_TIDES) a set of reduced equation is available to compute velocity from SSH (OBC_REDUCED_PHYSICS)

14.1. Pre-processing#

To create a tidal forcing file:

14.2. Compiling#

  1. Edit cppdefs.h for defining tides:

    /* Open Boundary Conditions */
    # define TIDES
    
    /* Open Boundary Conditions */
    # ifdef TIDES
    #  define SSH_TIDES
    #  define UV_TIDES
    #  define POT_TIDES
    #  undef  TIDES_MAS
    #  ifndef UV_TIDES
    #   define OBC_REDUCED_PHYSICS
    #  endif
    #  define TIDERAMP
    # endif
    # define OBC_M2CHARACT
    # undef  OBC_M2ORLANSKI
    # define OBC_M3ORLANSKI
    # define OBC_TORLANSKI
    # undef  OBC_M2SPECIFIED
    # undef  OBC_M3SPECIFIED
    # undef  OBC_TSPECIFIED
    
  2. Check/Edit param.h:

    #if defined SSH_TIDES || defined UV_TIDES
          integer Ntides             ! Number of tides
                                     ! ====== == =====
    # if defined IGW || defined S2DV
          parameter (Ntides=1)
    # else
          parameter (Ntides=10)
    # endif
    #endif
    

    Warning

    The number of tide components must be coherent with the one defined in crocotools_param.m or in tides.ini

  3. Re-compile the model:

    ./jobcomp > jobcomp_tide.log
    

14.3. Running#

Run the model

qsub job_croco_mpi.pbs