High residual current in coastal sea simulation

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
sankarea
Posts: 2
Joined: Wed Feb 10, 2021 8:06 pm
Location: Ocean University of China

High residual current in coastal sea simulation

#1 Unread post by sankarea »

hello everyone!
I built a ROMS model on Bohai sea, which is a coastal sea with 24 meters average water depth.But the time-averaged current in one tide period is always too high.
  • BASIC MODEL PARAMETERS
1) horizontal resolution: about 1 km.
2) vertical level: 10
3) boundary condition: east open boundary, Cha for free surface, Fla for 2d-momentum, Cla for 3d-momentum, Gra for mixing-TKE, RadNud for temperature and salinity.
4) boundary data: extract from HYCOM dataset. the hycom dataset exclude the tide-induced current and tide-induced water level, so I turn the CPP option "ADD_FSOBC" and "ADD_M2OBC" on.

*.h file:

Code: Select all

#define ROMS_MODEL

# define WET_DRY 

/* Physics + numerics */
# define WEC_VF
# define WDISS_WAVEMOD
# define UV_KIRBY

# define UV_ADV
# define UV_COR
# define UV_VIS2
# define MIX_S_UV
# undef  TS_FIXED

# define UV_LOGDRAG

# define DJ_GRADPS
# define TS_DIF2
# define MIX_GEO_TS
# define CURVGRID

# define SALINITY
# define SOLVE3D
# define SPLINES_VDIFF
# define SPLINES_VVISC
# define AVERAGES
# define NONLIN_EOS

/* Grid and Initial */
# define MASKING

/* Forcing */
# define BULK_FLUXES
# define LONGWAVE
# define ATM_PRESS
# define PRESS_COMPENSATE
# define EMINUSP
# define SOLAR_SOURCE

# define ANA_NUDGCOEF
# define ANA_BTFLUX
# define ANA_BSFLUX
# define ANA_BPFLUX


/* Turbulence closure */
# undef GLS_MIXING
# define  MY25_MIXING
# define LIMIT_VDIFF
# define LIMIT_VVISC

# if defined GLS_MIXING || defined MY25_MIXING
#  define KANTHA_CLAYSON
#  define N2S2_HORAVG
#  define RI_SPLINES
#  define CRAIG_BANNER
#  define CHARNOK
# endif

/* tide */
# define SSH_TIDES
# define UV_TIDES
# define RAMP_TIDES
# define ADD_FSOBC
# define ADD_M2OBC

# undef FSOBC_REDUCED

/* Output */
# undef DIAGNOSTICS_UV
# undef DIAGNOSTICS_TS
Physical Parameters:

Code: Select all

Physical Parameters, Grid: 01
 =============================

     518400  ntimes            Number of timesteps for 3-D equations.
     30.000  dt                Timestep size (s) for 3-D equations.
         30  ndtfast           Number of timesteps for 2-D equations between
                                 each 3D timestep.
          1  ERstr             Starting ensemble/perturbation run number.
          1  ERend             Ending ensemble/perturbation run number.
          0  nrrec             Number of restart records to read from disk.
          T  LcycleRST         Switch to recycle time-records in restart file.
          0  nRST              Number of timesteps between the writing of data
                                 into restart fields.
          1  ninfo             Number of timesteps between print of information
                                 to standard output.
          T  ldefout           Switch to create a new output NetCDF file(s).
        720  nHIS              Number of timesteps between the writing fields
                                 into history file.
       2880  ndefHIS           Number of timesteps between creation of new
                                 history files.
        120  nQCK              Number of timesteps between the writing fields
                                 into quicksave file.
       2880  ndefQCK           Number of timesteps between creation of new
                                 brief snpashots files.
          1  ntsAVG            Starting timestep for the accumulation of output
                                 time-averaged data.
       2880  nAVG              Number of timesteps between the writing of
                                 time-averaged data into averages file.
 2.0000E+01  nl_tnu2(01)       NLM Horizontal, harmonic mixing coefficient
                                 (m2/s) for tracer 01: temp
 2.0000E+01  nl_tnu2(02)       NLM Horizontal, harmonic mixing coefficient
                                 (m2/s) for tracer 02: salt
 5.0000E+01  nl_visc2          NLM Horizontal, harmonic mixing coefficient
                                 (m2/s) for momentum.
          F  LuvSponge         Turning OFF sponge on horizontal momentum.
          F  LtracerSponge(01) Turning OFF sponge on tracer 01: temp
          F  LtracerSponge(02) Turning OFF sponge on tracer 02: salt
 1.0000E-06  Akt_bak(01)       Background vertical mixing coefficient (m2/s)
                                 for tracer 01: temp
 1.0000E-06  Akt_bak(02)       Background vertical mixing coefficient (m2/s)
                                 for tracer 02: salt
 1.0000E-03  Akt_limit(01)     Vertical diffusion upper threshold (m2/s)
                                 for tracer 01: temp
 1.0000E-03  Akt_limit(02)     Vertical diffusion upper threshold (m2/s)
                                 for tracer 02: salt
 1.0000E-05  Akv_bak           Background vertical mixing coefficient (m2/s)
                                 for momentum.
 1.0000E-03  Akv_limit         Vertical viscosity upper threshold (m2/s)
                                 for momentum.
 5.0000E-06  Akk_bak           Background vertical mixing coefficient (m2/s)
                                 for turbulent energy.
 5.0000E-06  Akp_bak           Background vertical mixing coefficient (m2/s)
                                 for turbulent generic statistical field.
 3.0000E-04  rdrg              Linear bottom drag coefficient (m/s).
 3.0000E-03  rdrg2             Quadratic bottom drag coefficient.
 1.2500E-03  Zob               Bottom roughness (m).
 2.0000E+00  blk_ZQ            Height (m) of surface air humidity measurement.
 2.0000E+00  blk_ZT            Height (m) of surface air temperature measurement.
 1.0000E+01  blk_ZW            Height (m) of surface winds measurement.
 1.5000E-01  Dcrit             Minimum depth for wetting and drying (m).
          1  lmd_Jwt           Jerlov water type.
          2  Vtransform        S-coordinate transformation equation.
          4  Vstretching       S-coordinate stretching function.
 3.5000E+00  theta_s           S-coordinate surface control parameter.
 0.0000E+00  theta_b           S-coordinate bottom  control parameter.
      1.000  Tcline            S-coordinate surface/bottom layer width (m) used
                                 in vertical coordinate stretching.
   1025.000  rho0              Mean density (kg/m3) for Boussinesq approximation.
      0.000  dstart            Time-stamp assigned to model initialization (days).
      0.000  tide_start        Reference time origin for tidal forcing (days).
20190101.00  time_ref          Reference time for units attribute (yyyymmdd.dd)
 0.0000E+00  Tnudg(01)         Nudging/relaxation time scale (days)
                                 for tracer 01: temp
 0.0000E+00  Tnudg(02)         Nudging/relaxation time scale (days)
                                 for tracer 02: salt
 0.0000E+00  Znudg             Nudging/relaxation time scale (days)
                                 for free-surface.
 0.0000E+00  M2nudg            Nudging/relaxation time scale (days)
                                 for 2D momentum.
 0.0000E+00  M3nudg            Nudging/relaxation time scale (days)
                                 for 3D momentum.
 0.0000E+00  obcfac            Factor between passive and active
                                 open boundary conditions.
          F  VolCons(1)        NLM western  edge boundary volume conservation.
          F  VolCons(2)        NLM southern edge boundary volume conservation.
          F  VolCons(3)        NLM eastern  edge boundary volume conservation.
          F  VolCons(4)        NLM northern edge boundary volume conservation.
     14.000  T0                Background potential temperature (C) constant.
     35.000  S0                Background salinity (PSU) constant.
      1.000  gamma2            Slipperiness variable: free-slip (1.0) or 
                                                      no-slip (-1.0).
          F  LuvSrc            Turning OFF momentum point Sources/Sinks.
          F  LwSrc             Turning OFF volume influx point Sources/Sinks.
          F  LtracerSrc(01)    Turning OFF point Sources/Sinks on tracer 01: temp
          F  LtracerSrc(02)    Turning OFF point Sources/Sinks on tracer 02: salt
          F  LsshCLM           Turning OFF processing of SSH climatology.
          F  Lm2CLM            Turning OFF processing of 2D momentum climatology.
          F  Lm3CLM            Turning OFF processing of 3D momentum climatology.
          F  LtracerCLM(01)    Turning OFF processing of climatology tracer 01: temp
          F  LtracerCLM(02)    Turning OFF processing of climatology tracer 02: salt
          F  LnudgeM2CLM       Turning OFF nudging of 2D momentum climatology.
          F  LnudgeM3CLM       Turning OFF nudging of 3D momentum climatology.
          F  LnudgeTCLM(01)    Turning OFF nudging of climatology tracer 01: temp
          F  LnudgeTCLM(02)    Turning OFF nudging of climatology tracer 02: salt

          T  Hout(idFsur)      Write out free-surface.
          T  Hout(idUbar)      Write out 2D U-momentum component.
          T  Hout(idVbar)      Write out 2D V-momentum component.
          T  Hout(idUvel)      Write out 3D U-momentum component.
          T  Hout(idVvel)      Write out 3D V-momentum component.
          T  Hout(idWvel)      Write out W-momentum component.
          T  Hout(idOvel)      Write out omega vertical velocity.
          T  Hout(idTvar)      Write out tracer 01: temp
          T  Hout(idTvar)      Write out tracer 02: salt

          T  Qout(idFsur)      Write out free-surface.
          T  Qout(idUbar)      Write out 2D U-momentum component.
          T  Qout(idVbar)      Write out 2D V-momentum component.
          T  Qout(idu2dE)      Write out 2D U-eastward  at RHO-points.
          T  Qout(idv2dN)      Write out 2D V-northward at RHO-points.
          T  Qout(idUsur)      Write out surface U-momentum component.
          T  Qout(idVsur)      Write out surface V-momentum component.
          T  Qout(idsurT)      Write out surface tracer 01: temp_sur
          T  Qout(idsurT)      Write out surface tracer 02: salt_sur
          T  Qout(idUsms)      Write out surface U-momentum stress.
          T  Qout(idVsms)      Write out surface V-momentum stress.
          T  Qout(idUbms)      Write out bottom U-momentum stress.
          T  Qout(idVbms)      Write out bottom V-momentum stress.
          T  Qout(idPair)      Write out surface air pressure.
          T  Qout(idTair)      Write out surface air temperature.
          T  Qout(idUair)      Write out surface U-wind component.
          T  Qout(idVair)      Write out surface V-wind component.
          T  Qout(idTsur)      Write out surface net heat flux.
          T  Qout(idTsur)      Write out surface net salt flux.
          T  Qout(idSrad)      Write out shortwave radiation flux.
          T  Qout(idLrad)      Write out longwave radiation flux.
          T  Qout(idLhea)      Write out latent heat flux.
          T  Qout(idShea)      Write out sensible heat flux.
          T  Qout(idEmPf)      Write out E-P flux.
          T  Qout(idevap)      Write out evaporation rate.
          T  Qout(idrain)      Write out rain rate.

          T  Aout(idFsur)      Write out averaged free-surface.
          T  Aout(idUbar)      Write out averaged 2D U-momentum component.
          T  Aout(idVbar)      Write out averaged 2D V-momentum component.
          T  Aout(idUvel)      Write out averaged 3D U-momentum component.
          T  Aout(idVvel)      Write out averaged 3D V-momentum component.
          T  Aout(idu3dE)      Write out averaged 3D U-eastward  at RHO-points.
          T  Aout(idv3dN)      Write out averaged 3D V-northward at RHO-points.
          T  Aout(idWvel)      Write out averaged W-momentum component.
          T  Aout(idOvel)      Write out averaged omega vertical velocity.
          T  Aout(idTvar)      Write out averaged tracer 01: temp
          T  Aout(idTvar)      Write out averaged tracer 02: salt

  • PROBLEMS
I calculated the average current of one day, the residual current is unreasonable high. The tide-induced residual current should be in the magnitude of 1cm/s~10cm/s, but I got 1 m/s in most areas.
I also ran a particle tracking experiment with the output flowfield for 15 days, and most of the particles moved for more than 100 km within 15 days. It also unmatches the buoy data.

Image
Image

Is there anyone who have met similar problems? I would appreciate it if you could post any replies!

Post Reply