What to correct to keep ROMS from blowing up?

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

What to correct to keep ROMS from blowing up?

#1 Unread post by cflanary »

Below is my ROMS output log for my first attempts at running ROMS for a coarse grid of the central east Florida Shelf for my dissertation.

I've smoothed my bathymetry using the smooth_bath MATLAB script and I made sure to not have any 0 values for my bathymetry in the grid file.

Nothing jumps out at me as values too high or low, but I'm unsure about this.

Thank you for any help you can provide.

Code: Select all

 Model Input Parameters:  ROMS/TOMS version 3.6  
                          Friday - January 11, 2013 -  3:59:52 PM
 -----------------------------------------------------------------------------

 Nearshore Upwelling along the Central East Florida Shelf

 Operating system : Linux
 CPU/hardware     : x86_64
 Compiler system  : gfortran
 Compiler command : /usr/bin/mpif90
 Compiler flags   : -frepack-arrays -O3 -ffast-math -ffree-form -ffree-line-length-none -ffree-form -ffree-line-length-none -ffree-form -ffree-line-length-none

 Input Script  : cefs_upwelling.in

 SVN Root URL  : https://www.myroms.org/svn/src/trunk
 SVN Revision  : 638M

 Local Root    : /roms_src
 Header Dir    : /home/cflanary/roms/cefs_upwelling
 Header file   : cefs_upwelling.h
 Analytical Dir: /home/cflanary/roms/cefs_upwelling

 Resolution, Grid 01: 0048x0048x020,  Parallel Nodes:   4,  Tiling: 002x002


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

      51840  ntimes          Number of timesteps for 3-D equations.
    150.000  dt              Timestep size (s) for 3-D equations.
         15  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.
       2016  nRST            Number of timesteps between the writing of data
                               into restart fields.
          1  ninfo           Number of timesteps between print of information
                               to standard output.
         36  nSTA            Number of timesteps between the writing of data
                               the stations file.
          T  ldefout         Switch to create a new output NetCDF file(s).
         36  nHIS            Number of timesteps between the writing fields
                               into history file.
          1  ntsAVG          Starting timestep for the accumulation of output
                               time-averaged data.
         36  nAVG            Number of timesteps between the writing of
                               time-averaged data into averages file.
          1  ntsDIA          Starting timestep for the accumulation of output
                               time-averaged diagnostics data.
       2016  nDIA            Number of timesteps between the writing of
                               time-averaged data into diagnostics file.
 0.0000E+00  nl_tnu2(01)     NLM Horizontal, harmonic mixing coefficient
                               (m2/s) for tracer 01: temp
 0.0000E+00  nl_tnu2(02)     NLM Horizontal, harmonic mixing coefficient
                               (m2/s) for tracer 02: salt
 5.0000E+00  nl_visc2        NLM Horizontal, harmonic mixing coefficient
                               (m2/s) for momentum.
 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-05  Akv_bak         Background vertical mixing coefficient (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.
 2.0000E-02  Zob             Bottom roughness (m).
          2  Vtransform      S-coordinate transformation equation.
          2  Vstretching     S-coordinate stretching function.
 3.0000E+00  theta_s         S-coordinate surface control parameter.
 0.0000E+00  theta_b         S-coordinate bottom  control parameter.
     25.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).
20110501.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.
     20.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).
          T  Hout(idFsur)    Write out free-surface.
          T  Hout(idUvel)    Write out 3D U-momentum component.
          T  Hout(idVvel)    Write out 3D V-momentum component.
          T  Hout(idu3dE)    Write out 3D U-wastward  component at RHO-points.
          T  Hout(idv3dN)    Write out 3D V-northward component at RHO-points.
          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  Aout(idFsur)    Write out averaged free-surface.
          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

          T  Dout(M2rate)    Write out 2D momentun acceleration.
          T  Dout(M2pgrd)    Write out 2D momentum pressure gradient.
          T  Dout(M2fcor)    Write out 2D momentum Coriolis force.
          T  Dout(M2sstr)    Write out 2D momentum surface stress.

          T  Dout(M3rate)    Write out 3D momentun acceleration.
          T  Dout(M3pgrd)    Write out 3D momentum pressure gradient.
          T  Dout(M3fcor)    Write out 3D momentum Coriolis force.
          T  Dout(M3hadv)    Write out 3D momentum horizontal advection.
          T  Dout(M3xadv)    Write out 3D momentum horizontal X-advection.
          T  Dout(M3yadv)    Write out 3D momentum horizontal Y-advection.
          T  Dout(M3vadv)    Write out 3D momentum vertical advection.
          T  Dout(M3hvis)    Write out 3D momentum horizontal viscosity.
          T  Dout(M3xvis)    Write out 3D momentum horizontal X-viscosity.
          T  Dout(M3yvis)    Write out 3D momentum horizontal Y-viscosity.
          T  Dout(M3vvis)    Write out 3D momentum vertical viscosity.

          T  Dout(iTrate)    Write out rate of change of tracer 01: temp
          T  Dout(iTrate)    Write out rate of change of tracer 02: salt
          T  Dout(iThadv)    Write out horizontal advection, tracer 01: temp
          T  Dout(iThadv)    Write out horizontal advection, tracer 02: salt
          T  Dout(iTxadv)    Write out horizontal X-advection, tracer 01: temp
          T  Dout(iTxadv)    Write out horizontal X-advection, tracer 02: salt
          T  Dout(iTyadv)    Write out horizontal Y-advection, tracer 01: temp
          T  Dout(iTyadv)    Write out horizontal Y-advection, tracer 02: salt
          T  Dout(iTvadv)    Write out vertical advection, tracer 01: temp
          T  Dout(iTvadv)    Write out vertical advection, tracer 02: salt
          T  Dout(iThdif)    Write out horizontal diffusion, tracer 01: temp
          T  Dout(iThdif)    Write out horizontal diffusion, tracer 02: salt
          T  Dout(iTxdif)    Write out horizontal X-diffusion, tracer 01: temp
          T  Dout(iTxdif)    Write out horizontal X-diffusion, tracer 02: salt
          T  Dout(iTydif)    Write out horizontal Y-diffusion , tracer 01: temp
          T  Dout(iTydif)    Write out horizontal Y-diffusion , tracer 02: salt
          T  Dout(iTvdif)    Write out vertical diffusion, tracer 01: temp
          T  Dout(iTvdif)    Write out vertical diffusion, tracer 02: salt

 Output/Input Files:

             Output Restart File:  cefs_upwelling_sim_rst.nc
             Output History File:  cefs_upwelling_sim_his.nc
            Output Averages File:  cefs_upwelling_sim_avg.nc
         Output Diagnostics File:  cefs_upwelling_sim_dia.nc
            Output Stations File:  cefs_upwelling_sim_sta.nc
                 Input Grid File:  cefs_grid.nc
    Input Nonlinear Initial File:  cefs_upwelling_ini.nc
           Input Forcing File 01:  cefs_upwelling_frc.nc
             Input Boundary File:  cefs_upwelling_bry.nc
          Station positions File:  cefs_stations.in

 Tile partition information for Grid 01:  0048x0048x0020  tiling: 002x002

     tile     Istr     Iend     Jstr     Jend     Npts

        0        1       24        1       24    11520
        1       25       48        1       24    11520
        2        1       24       25       48    11520
        3       25       48       25       48    11520

 Tile minimum and maximum fractional grid coordinates:
   (interior points only)

     tile     Xmin     Xmax     Ymin     Ymax     grid

        0     0.50    24.50     0.50    24.50  RHO-points
        1    24.50    48.50     0.50    24.50  RHO-points
        2     0.50    24.50    24.50    48.50  RHO-points
        3    24.50    48.50    24.50    48.50  RHO-points

        0     1.00    24.50     0.50    24.50    U-points
        1    24.50    48.00     0.50    24.50    U-points
        2     1.00    24.50    24.50    48.50    U-points
        3    24.50    48.00    24.50    48.50    U-points

        0     0.50    24.50     1.00    24.50    V-points
        1    24.50    48.50     1.00    24.50    V-points
        2     0.50    24.50    24.50    48.00    V-points
        3    24.50    48.50    24.50    48.00    V-points

 Maximum halo size in XI and ETA directions:

               HaloSizeI(1) =      72
               HaloSizeJ(1) =      72
                TileSide(1) =      30
                TileSize(1) =     900



 Stations Parameters, Grid: 01
 =============================

          1  Nstation        Number of stations to write out into stations file.
          T  Sout(idFsur)    Write out free-surface.
          T  Sout(idUbar)    Write out 2D U-momentum component.
          T  Sout(idVbar)    Write out 2D V-momentum component.
          T  Sout(idUvel)    Write out 3D U-momentum component.
          T  Sout(idVvel)    Write out 3D V-momentum component.
          T  Sout(idWvel)    Write out W-momentum component.
          T  Sout(idOvel)    Write out omega vertical velocity.
          T  Sout(idTvar)    Write out tracer 01: temp
          T  Sout(idTvar)    Write out tracer 02: salt
          T  Sout(idDano)    Write out density anomaly.
          T  Sout(idVvis)    Write out vertical viscosity coefficient.
          T  Sout(idTdif)    Write out vertical T-diffusion coefficient.
          T  Sout(idSdif)    Write out vertical S-diffusion coefficient.

             Flag and positions for station 0001:  1    12.5416   44.8691

 Lateral Boundary Conditions: NLM
 ============================

 Variable               Grid    West Edge   South Edge  East Edge   North Edge
 ---------              ----    ----------  ----------  ----------  ----------

 zeta                     1     Chapman     Chapman     Chapman     Chapman

 ubar                     1     Flather     Flather     Flather     Flather

 vbar                     1     Flather     Flather     Flather     Flather

 u                        1     Rad + Nud   Rad + Nud   Rad + Nud   Rad + Nud

 v                        1     Rad + Nud   Rad + Nud   Rad + Nud   Rad + Nud

 temp                     1     Rad + Nud   Rad + Nud   Rad + Nud   Rad + Nud

 salt                     1     Rad + Nud   Rad + Nud   Rad + Nud   Rad + Nud

 tke                      1     Gradient    Gradient    Gradient    Gradient

 Activated C-preprocessing Options:

 CEFS_UPWELLING      Nearshore Upwelling along the Central East Florida Shelf
 ATM_PRESS           Impose atmospheric pressure onto sea surface.
 ANA_BTFLUX          Analytical kinematic bottom temperature flux.
 ANA_STFLUX          Analytical kinematic surface temperature flux.
 ASSUMED_SHAPE       Using assumed-shape arrays.
 AVERAGES            Writing out time-averaged nonlinear model fields.
 CURVGRID            Orthogonal curvilinear grid.
 DIAGNOSTICS_TS      Computing and writing tracer diagnostic terms.
 DIAGNOSTICS_UV      Computing and writing momentum diagnostic terms.
 DJ_GRADPS           Parabolic Splines density Jacobian (Shchepetkin, 2002).
 DOUBLE_PRECISION    Double precision arithmetic.
 KANTHA_CLAYSON      Kantha and Clayson stability function formulation.
 MASKING             Land/Sea masking.
 MIX_S_TS            Mixing of tracers along constant S-surfaces.
 MIX_S_UV            Mixing of momentum along constant S-surfaces.
 MPI                 MPI distributed-memory configuration.
 MY25_MIXING         Mellor/Yamada Level-2.5 mixing closure.
 NONLINEAR           Nonlinear Model.
 NONLIN_EOS          Nonlinear Equation of State for seawater.
 N2S2_HORAVG         Horizontal smoothing of buoyancy and shear.
 POWER_LAW           Power-law shape time-averaging barotropic filter.
 PROFILE             Time profiling activated .
 K_GSCHEME           Third-order upstream advection of TKE fields.
 !RST_SINGLE         Double precision fields in restart NetCDF file.
 SOLVE3D             Solving 3D Primitive Equations.
 SPHERICAL           Spherical grid configuration.
 STATIONS            Writing out station data.
 TS_U3HADVECTION     Third-order upstream horizontal advection of tracers.
 TS_SVADVECTION      Parabolic splines vertical advection of tracers.
 TS_DIF2             Harmonic mixing of tracers.
 UV_ADV              Advection of momentum.
 UV_COR              Coriolis term.
 UV_U3HADVECTION     Third-order upstream horizontal advection of 3D momentum.
 UV_SADVECTION       Parabolic splines vertical advection of momentum.
 UV_LDRAG            Linear bottom stress.
 UV_VIS2             Harmonic mixing of momentum.
 VAR_RHO_2D          Variable density barotropic mode.

 Process Information:

 Node #  0 (pid=    5722) is active.
 Node #  1 (pid=    5719) is active.
 Node #  2 (pid=    5720) is active.
 Node #  3 (pid=    5721) is active.

 INITIAL: Configuring and initializing forward nonlinear model ...


 Vertical S-coordinate System: 

 level   S-coord     Cs-curve   Z   at hmin       at hc    half way     at hmax

    20   0.0000000   0.0000000        0.000       0.000       0.000       0.000
    19  -0.0500000  -0.0012430       -0.209      -0.641      -1.760      -2.383
    18  -0.1000000  -0.0050000       -0.421      -1.313      -4.675      -7.123
    17  -0.1500000  -0.0113558       -0.634      -2.017      -8.784     -14.299
    16  -0.2000000  -0.0204535       -0.850      -2.756     -14.154     -24.045
    15  -0.2500000  -0.0324983       -1.069      -3.531     -20.878     -36.553
    14  -0.3000000  -0.0477616       -1.290      -4.347     -29.081     -52.078
    13  -0.3500000  -0.0665877       -1.514      -5.207     -38.922     -70.943
    12  -0.4000000  -0.0894007       -1.741      -6.118     -50.595     -93.545
    11  -0.4500000  -0.1167151       -1.972      -7.084     -64.336    -120.366
    10  -0.5000000  -0.1491465       -2.208      -8.114     -80.430    -151.983
     9  -0.5500000  -0.1874259       -2.448      -9.218     -99.211    -189.082
     8  -0.6000000  -0.2324164       -2.694     -10.405    -121.076    -232.471
     7  -0.6500000  -0.2851320       -2.946     -11.689    -146.491    -283.101
     6  -0.7000000  -0.3467612       -3.206     -13.085    -176.003    -342.086
     5  -0.7500000  -0.4186931       -3.474     -14.609    -210.250    -410.729
     4  -0.8000000  -0.5025493       -3.752     -16.282    -249.977    -490.548
     3  -0.8500000  -0.6002201       -4.042     -18.128    -296.053    -583.316
     2  -0.9000000  -0.7139071       -4.345     -20.174    -349.490    -691.097
     1  -0.9500000  -0.8461733       -4.663     -22.452    -411.465    -816.292
     0  -1.0000000  -1.0000000       -5.000     -25.000    -483.349    -961.697

 Time Splitting Weights: ndtfast =  15    nfast =  22

    Primary            Secondary            Accumulated to Current Step

  1-0.0006740978872509 0.0666666666666667-0.0006740978872509 0.0666666666666667
  2-0.0001913161153518 0.0667116065258167-0.0008654140026027 0.1333782731924834
  3 0.0014472038369421 0.0667243609335069 0.0005817898343395 0.2001026341259903
  4 0.0042370228855824 0.0666278806777107 0.0048188127199218 0.2667305148037010
  5 0.0081665994120431 0.0663454124853385 0.0129854121319649 0.3330759272890396
  6 0.0132119623624627 0.0658009725245357 0.0261973744944276 0.3988768998135752
  7 0.0193298623751124 0.0649201750337048 0.0455272368695400 0.4637970748472801
  8 0.0264494009361902 0.0636315175420307 0.0719766378057303 0.5274285923893107
  9 0.0344621375639418 0.0618682241462847 0.1064387753696720 0.5892968165355954
 10 0.0432106750211074 0.0595707483086885 0.1496494503907794 0.6488675648442840
 11 0.0524757225556949 0.0566900366406147 0.2021251729464743 0.7055576014848987
 12 0.0619616371700794 0.0531916551369017 0.2640868101165537 0.7587492566218004
 13 0.0712804429184289 0.0490608793255631 0.3353672530349826 0.8078101359473635
 14 0.0799343282324558 0.0443088497976678 0.4153015812674384 0.8521189857450313
 15 0.0872966212754959 0.0389798945821708 0.5025982025429343 0.8910988803272021
 16 0.0925912433249121 0.0331601198304711 0.5951894458678464 0.9242590001576731
 17 0.0948706401828253 0.0269873702754769 0.6900600860506717 0.9512463704331501
 18 0.0929921916151718 0.0206626609299552 0.7830522776658435 0.9719090313631054
 19 0.0855930988190858 0.0144631814889438 0.8686453764849293 0.9863722128520491
 20 0.0710637499186094 0.0087569749010047 0.9397091264035388 0.9951291877530538
 21 0.0475195634887281 0.0040193915730974 0.9872286898922669 0.9991485793261512
 22 0.0127713101077333 0.0008514206738489 1.0000000000000002 1.0000000000000000

 ndtfast, nfast =   15  22   nfast/ndtfast =  1.46667

 Centers of gravity and integrals (values must be 1, 1, approx 1/2, 1, 1):

    1.000000000000 1.070450639131 0.535225319565 1.000000000000 1.000000000000

 Power filter parameters, Fgamma, gamma =  0.28400   0.09467

 Minimum X-grid spacing, DXmin =  7.70414051E-01 km
 Maximum X-grid spacing, DXmax =  5.98288153E+00 km
 Minimum Y-grid spacing, DYmin =  4.80280021E+00 km
 Maximum Y-grid spacing, DYmax =  1.07779434E+01 km
 Minimum Z-grid spacing, DZmin =  2.09369167E-01 m
 Maximum Z-grid spacing, DZmax =  1.45404851E+02 m

 Minimum barotropic Courant Number =  2.18541158E-02
 Maximum barotropic Courant Number =  6.22825707E-01
 Maximum Coriolis   Courant Number =  1.05458473E-02


 NLM: GET_STATE - Read state initial conditions,             t =     0 00:00:00
                   (File: cefs_upwelling_ini.nc, Rec=0001, Index=1)
                - free-surface
                   (Min = -1.50946718E-01 Max =  3.46269991E-01)
                - vertically integrated u-momentum component
                   (Min = -3.85187307E-01 Max =  6.04123440E-01)
                - vertically integrated v-momentum component
                   (Min = -5.92016638E-01 Max =  9.91704551E-02)
                - u-momentum component
                   (Min = -6.15520051E-01 Max =  1.42245037E+00)
                - v-momentum component
                   (Min = -1.37342277E+00 Max =  1.67243071E+00)
                - potential temperature
                   (Min =  2.51029127E+00 Max =  2.89047081E+01)
                - salinity
                   (Min =  3.46794460E+01 Max =  3.61462999E+01)
    GET_2DFLD   - surface u-momentum stress,                 t =     0 00:00:00
                   (Rec=0001, Index=1, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min = -8.49232005E-05 Max = -2.85392018E-05)
    GET_2DFLD   - surface v-momentum stress,                 t =     0 00:00:00
                   (Rec=0001, Index=1, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min = -4.42432340E-05 Max = -5.23265678E-06)
    GET_2DFLD   - surface air pressure,                      t =     0 00:00:00
                   (Rec=0001, Index=1, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min =  1.01682361E+03 Max =  1.02091119E+03)
    GET_NGFLD   - free-surface western boundary condition,   t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.12844765E-01 Max =  1.28668516E-01)
    GET_NGFLD   - free-surface eastern boundary condition,   t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.50946718E-01 Max =  3.34003908E-01)
    GET_NGFLD   - free-surface southern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.23533118E-01 Max =  3.28403787E-01)
    GET_NGFLD   - free-surface northern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.44727153E-01 Max =  1.19976006E-01)
    GET_NGFLD   - 2D u-momentum western boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.85788006E-01 Max =  3.83047393E-01)
    GET_NGFLD   - 2D v-momentum western boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  1.02020225E+00 Max =  1.53927396E+00)
    GET_NGFLD   - 2D u-momentum eastern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -6.37606708E-02 Max =  3.11716954E-01)
    GET_NGFLD   - 2D v-momentum eastern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -5.36754906E-01 Max =  6.12801246E-01)
    GET_NGFLD   - 2D u-momentum southern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.04592643E-01 Max =  7.41820142E-01)
    GET_NGFLD   - 2D v-momentum southern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -2.93365056E-01 Max =  3.37178571E-01)
    GET_NGFLD   - 2D u-momentum northern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -8.92984988E-02 Max =  4.14072279E-01)
    GET_NGFLD   - 2D v-momentum northern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -7.29630381E-03 Max =  1.53927396E+00)
    GET_NGFLD   - 3D u-momentum western boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.86561426E-01 Max =  3.90125932E-01)
    GET_NGFLD   - 3D v-momentum western boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  1.03518355E+00 Max =  1.55752800E+00)
    GET_NGFLD   - 3D u-momentum eastern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -3.13093297E-01 Max =  4.22059603E-01)
    GET_NGFLD   - 3D v-momentum eastern boundary condition,  t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.23686052E+00 Max =  6.72367013E-01)
    GET_NGFLD   - 3D u-momentum southern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.04645615E-01 Max =  1.18387806E+00)
    GET_NGFLD   - 3D v-momentum southern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -4.38759056E-01 Max =  3.37350410E-01)
    GET_NGFLD   - 3D u-momentum northern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.16272504E-01 Max =  4.26854203E-01)
    GET_NGFLD   - 3D v-momentum northern boundary condition, t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -5.23641163E-02 Max =  1.55752800E+00)
    GET_NGFLD   - temperature western boundary condition,    t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  2.77385810E+01)
    GET_NGFLD   - salinity western boundary condition,       t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  3.60458762E+01)
    GET_NGFLD   - temperature eastern boundary condition,    t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  2.60527379E+01 Max =  2.74609264E+01)
    GET_NGFLD   - salinity eastern boundary condition,       t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.57731722E+01 Max =  3.60820632E+01)
    GET_NGFLD   - temperature southern boundary condition,   t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  6.57812843E+00 Max =  2.89047081E+01)
    GET_NGFLD   - salinity southern boundary condition,      t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.47975252E+01 Max =  3.61214021E+01)
    GET_NGFLD   - temperature northern boundary condition,   t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  1.43353590E+01 Max =  2.69954114E+01)
    GET_NGFLD   - salinity northern boundary condition,      t =     0 00:00:00
                   (Rec=0001, Index=2, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.55084619E+01 Max =  3.61459999E+01)

 Maximum grid stiffness ratios:  rx0 =   8.517373E-01 (Beckmann and Haidvogel)
                                 rx1 =   1.344290E+01 (Haney)


 Initial basin volumes: TotVolume =  2.6287323352E+13 m3
                        MinVolume =  4.5215703242E+06 m3
                        MaxVolume =  6.2806919741E+09 m3
                          Max/Min =  1.3890510429E+03


 NL ROMS/TOMS: started time-stepping: (Grid: 01 TimeSteps: 00000001 - 00051840)

    GET_2DFLD   - surface u-momentum stress,                 t =     0 06:00:00
                   (Rec=0002, Index=2, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min = -9.51333526E-05 Max = -2.90464955E-05)
    GET_2DFLD   - surface v-momentum stress,                 t =     0 06:00:00
                   (Rec=0002, Index=2, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min = -4.54583655E-05 Max = -1.84170345E-06)
    GET_2DFLD   - surface air pressure,                      t =     0 06:00:00
                   (Rec=0002, Index=2, File: cefs_upwelling_frc.nc)
                   (Tmin=          0.0000 Tmax=        183.7500)
                   (Min =  1.01681006E+03 Max =  1.01922882E+03)
    GET_NGFLD   - free-surface western boundary condition,   t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -6.26326207E-02 Max =  6.49401160E-02)
    GET_NGFLD   - free-surface eastern boundary condition,   t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -9.33988243E-02 Max =  3.41207143E-01)
    GET_NGFLD   - free-surface southern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -6.52560648E-02 Max =  2.93544295E-01)
    GET_NGFLD   - free-surface northern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.13894014E-01 Max =  5.04968460E-02)
    GET_NGFLD   - 2D u-momentum western boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -8.07490709E-02 Max =  3.87720355E-01)
    GET_NGFLD   - 2D v-momentum western boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  2.07442619E-01 Max =  2.51989610E-01)
    GET_NGFLD   - 2D u-momentum eastern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -7.96801332E-02 Max =  2.95178680E-01)
    GET_NGFLD   - 2D v-momentum eastern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -4.79241634E-01 Max =  7.26138498E-01)
    GET_NGFLD   - 2D u-momentum southern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -8.02042610E-02 Max =  7.54352499E-01)
    GET_NGFLD   - 2D v-momentum southern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -3.29897862E-01 Max =  4.49961330E-01)
    GET_NGFLD   - 2D u-momentum northern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -9.08927613E-02 Max =  5.24057646E-01)
    GET_NGFLD   - 2D v-momentum northern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.33508445E-03 Max =  3.15887359E-01)
    GET_NGFLD   - 3D u-momentum western boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -8.53513560E-02 Max =  4.31829380E-01)
    GET_NGFLD   - 3D v-momentum western boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  2.10405333E-01 Max =  2.54974672E-01)
    GET_NGFLD   - 3D u-momentum eastern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -2.35116788E-01 Max =  5.92916641E-01)
    GET_NGFLD   - 3D v-momentum eastern boundary condition,  t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.10406094E+00 Max =  7.73344153E-01)
    GET_NGFLD   - 3D u-momentum southern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -8.11046722E-02 Max =  1.14330187E+00)
    GET_NGFLD   - 3D v-momentum southern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -5.05939900E-01 Max =  4.50386922E-01)
    GET_NGFLD   - 3D u-momentum northern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -1.97932773E-01 Max =  5.30837369E-01)
    GET_NGFLD   - 3D v-momentum northern boundary condition, t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min = -4.20426984E-02 Max =  3.45469070E-01)
    GET_NGFLD   - temperature western boundary condition,    t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  2.75380093E+01)
    GET_NGFLD   - salinity western boundary condition,       t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  3.60476088E+01)
    GET_NGFLD   - temperature eastern boundary condition,    t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  2.57203600E+01 Max =  2.76989267E+01)
    GET_NGFLD   - salinity eastern boundary condition,       t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.57592199E+01 Max =  3.60906990E+01)
    GET_NGFLD   - temperature southern boundary condition,   t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  6.76678413E+00 Max =  2.87974270E+01)
    GET_NGFLD   - salinity southern boundary condition,      t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.47590740E+01 Max =  3.61144069E+01)
    GET_NGFLD   - temperature northern boundary condition,   t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  1.43267928E+01 Max =  2.71852515E+01)
    GET_NGFLD   - salinity northern boundary condition,      t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  3.55191456E+01 Max =  3.61504695E+01)

   STEP   Day HH:MM:SS  KINETIC_ENRG   POTEN_ENRG    TOTAL_ENRG    NET_VOLUME
          C => (i,j,k)       Cu            Cv            Cw         Max Speed

      0     0 00:00:00           NaN           NaN           NaN           NaN
            (21,20,02)  6.867710E-02  8.823961E-03  0.000000E+00  1.519935E+00

 Elapsed CPU time (seconds):

 Node   #  0 CPU:       0.081
 Node   #  2 CPU:       0.079
 Node   #  1 CPU:       0.082
 Node   #  3 CPU:       0.082

 ROMS/TOMS - Output NetCDF summary for Grid 01:

 Analytical header files used:

     ROMS/Functionals/ana_btflux.h
     ROMS/Functionals/ana_nudgcoef.h
     ROMS/Functionals/ana_stflux.h

 ROMS/TOMS - Blows up ................ exit_flag:   1


 MAIN: Abnormal termination: BLOWUP.

LiuZHQ
Posts: 46
Joined: Mon Apr 06, 2009 5:12 pm
Location: The Hong Kong University of Sci&Tech

Re: What to correct to keep ROMS from blowing up?

#2 Unread post by LiuZHQ »

Hi there,
How about you initate the model run from rest?

rduran
Posts: 152
Joined: Fri Jan 08, 2010 7:22 pm
Location: Theiss Research

Re: What to correct to keep ROMS from blowing up?

#3 Unread post by rduran »

your

Code: Select all

 Maximum barotropic Courant Number =  6.22825707E-01
is not that far from one, from browsing the forum it seems the first things to check are lowering your time step and Nans in input files as well of zero bathymetric values which u already looked into.smoothing the bathymetry is for numerical convergence not so much avoid blow up although I guess it is possible under certain circumstances but at the end, the way I am thinking of it, the actual cause would be again time step.

rduran
Posts: 152
Joined: Fri Jan 08, 2010 7:22 pm
Location: Theiss Research

Re: What to correct to keep ROMS from blowing up?

#4 Unread post by rduran »

then of course going through your output is always a good idea:

Code: Select all

GET_NGFLD   - temperature western boundary condition,    t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  2.75380093E+01)
    GET_NGFLD   - salinity western boundary condition,       t =     1 00:00:00
                   (Rec=0002, Index=1, File: cefs_upwelling_bry.nc)
                   (Tmin=          0.0000 Tmax=        183.0000)
                   (Min =  0.00000000E+00 Max =  3.60476088E+01)

User avatar
m.hadfield
Posts: 521
Joined: Tue Jul 01, 2003 4:12 am
Location: NIWA

Re: What to correct to keep ROMS from blowing up?

#5 Unread post by m.hadfield »

A maximum barotropic Courant number of 0.62 is fine. (I find 0.8 is usually optimal for robustness and performance.)

I can't see anything wrong with those boundary conditions, with temperatures in the range 0-27 and salinities in the range 0-36. I suspect the 0 values shouldn't be in there, but I don't see why they'd crash the model. Don't be fooled by Tmax=183: that's a time, not a data value.

The fact that the initial energies and volumes are all NaN is ever so slightly suspicious :roll: . This suggests something wrong with the initial conditions, but the values read from the initial-conditions file look OK. Odd.

However your Beckman and Haidvogel stiffness of 0.85 is way too big, i.e. the topography is too rough. It needs to be smoothed to bring the B&H stiffness down to ~0.2.

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#6 Unread post by cflanary »

Thank you for the input so far. The standing questions, where I'm stuck, are: why would the energies and net volume of the first output time step be NaNs and would the B&H stiffness of 0.85 be the reason for it blowing up at the first time step?

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: What to correct to keep ROMS from blowing up?

#7 Unread post by kate »

It is NaN before the first step, so your timestep is not the (only) problem. It has to be something in the initial conditions or the grid itself. Actually, the grid file is more suspect given that the volume is NaN (but then the report of the vertical grid spacing and min/max dx/dy seem OK). Does your initial file have a NaN inside the land mask?

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#8 Unread post by cflanary »

Thanks for the reply Kate,

I've checked what I thought could be the reason for the NaNs. My initial conditions file doesn't have a mask variable, but there are no zeros or NaNs in the h variable. Same for h and hraw in my grid file. I checked the masks in my grid file an they were 0s and 1s where they should be. I also checked my initial condition variables, temp, salt, u, v, etc.. and they were all good.

I think I may need to redo my grid to not include the Bahamas off the coast of south Florida, so I don't have any land in my grid. I really just need the eastern edge of the Gulf Stream. I attached the output of the m-file hslope to see if anything stands out.



Thank you for your help,

Chris
Last edited by cflanary on Tue Jan 15, 2013 9:03 pm, edited 3 times in total.

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: What to correct to keep ROMS from blowing up?

#9 Unread post by kate »

How about showing pm and pn too?

Those don't all look like right angles to me...

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#10 Unread post by cflanary »

Here is the pm and pn figures. I don't know what to look for in these variables.





Chris

User avatar
m.hadfield
Posts: 521
Joined: Tue Jul 01, 2003 4:12 am
Location: NIWA

Re: What to correct to keep ROMS from blowing up?

#11 Unread post by m.hadfield »

There are holes (white patches) in the plot of barotropic time step limit. How do they arise?

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: What to correct to keep ROMS from blowing up?

#12 Unread post by kate »

m.hadfield wrote:There are holes (white patches) in the plot of barotropic time step limit. How do they arise?
I was wondering that too.

As for pm/pn, they don't look like anything that would make the model blow up. They also show a grid I wouldn't personally use. Did you perchance get the mex files compiled for Seagrid? I assume that's how you are making it. Since we can now see the lines explicitly, it's quite clear that the grid is not at all orthogonal, even to the extent possible given the boundary shape. The last time I tried Seagrid (many years ago), I failed to get the mex files compiled and it would happily produce non-orthogonal grids like this.

Also, the pm values get quite large up against the coast, where the grid lines converge there. There have been papers about limiting the change in depth from one grid to the next, but similar limits apply to changes in pm and pn. You might be better off with a uniform rectangular grid, masking out the land areas.

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#13 Unread post by cflanary »

The holes in the time step graphic are the locations of my mask_rho points. I'm not sure why the hslope m-file is configured to only apply the mask to that graphic.

I just used SeaGrid out of the box from the svn repository.

I will try a rectangular grid.

Thank you,

Chris

User avatar
drews
Posts: 35
Joined: Tue Jun 19, 2007 3:32 pm
Location: National Center for Atmospheric Research
Contact:

Re: What to correct to keep ROMS from blowing up?

#14 Unread post by drews »

I just debugged a blowup situation involving very shallow water and drying on the coast. From the color scale I cannot tell if your bathymetry rises above sea level, but if it does:

Try increasing the critical depth DCRIT. This is a simple revision to make, and it might tell you something about the problem. Of course you should restart the model from the last restart file by setting NRREC to something other than zero and ININAME to the restart file.

If your bathymetry is all well below sea level, then DCRIT doesn't matter.

You could also try using no-slip boundaries (GAMMA2).

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#15 Unread post by cflanary »

Thank you all for the input.

Kate, I don't appear to have compiled the mex files properly for seagrid. I'm trying again but MATLAB continues to crash when it tries to call the mexrect command in the test_mexrect.m file. Mexinside and mexsepeli are compiling fine. Given my area of study, the Florida east coast from Cape Canaveral to Miami and as close to the shoreline as I can get and out to the eastern extent of the Gulf Stream, is my best grid option a large rectangular grid even if a large portion will include land? What would be your ideal grid design for this area?

Thank you,

User avatar
m.hadfield
Posts: 521
Joined: Tue Jul 01, 2003 4:12 am
Location: NIWA

Re: What to correct to keep ROMS from blowing up?

#16 Unread post by m.hadfield »

Personally, I would lay out the grid for an area like yours on a domain that's rectangular on a suitable (possibly rotated) map projection, with maybe some stretching towards the boundaries. I would do the whole thing in IDL (similar to Matlab) code.

To my mind the benefit you're getting from warping and stretching the grid in Seagrid (even if it were being done properly) isn't worth he bother.

But that's just me.

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: What to correct to keep ROMS from blowing up?

#17 Unread post by kate »

I wouldn't say you have a lot of land in your grid if you make it rectangular. You don't even have many points total in that grid.

If you want a curvy grid for better boundary layer flow past Florida, I would curve the outer boundary too. I would also aim for right-angle corners. I would iterate on that rect routine as many times as you can, because it converges iteratively to an orthogonal interior with repeated calls until the last call fails. I suppose Seagrid is still just calling it once - what you want to do is call it ten times, then if it blows up on call eight, call it seven times.

We have python tools to call a different algorithm for filling in an orthogonal grid, but we can't make as nicely curvy edges. That's why I play the stubborn old fart who uses ancient Fortran tools if I really want a curved domain.

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#18 Unread post by cflanary »

I redesigned my grid to be rectangular, and I was able to compile all the mex files in seagrid successfully. My setup is the same as the posted .in file at the start of this thread. I did check my bathymetry for 0s and my land mask for NaNs. When i ran ROMS using oceanM it blew up at the same point with the first line of the 0 step as all NaNs.

The test cases I've run have the same value for NET_VOLUME in each time step as the initial basin volumes: TotVolume. In my run, my NET_VOLUME is NaN but I have a value for my TotVolume. I want to add a couple write statements to stiffness.f90 and diag.f90 to report the values being used to compute TotVolume and NET_VOLUME respectively.

How can I alter these .f90 files in my Build folder and rebuild without overwriting my changes? I don't know how to use the debugging option executable.

The stdout documentation doesn't include the second line output at each timestep of Cu,Cv,Cw,Max Speed at different i,j and k indicies. What are they and why the indicies (21,20,02) in my case?

Thank you,

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: What to correct to keep ROMS from blowing up?

#19 Unread post by kate »

You don't want to be editing diag.f90. Instead, edit ROMS/Nonlinear/diag.F. This file is run through the C preprocessor to become diag.f90.

You are more likely to figure this out with print statements. Unless you have access to the rather dear Totalview, you won't have a lot of luck. gdb is pretty useless at debugging fortran because the people who develop it aren't fortran users. On the other hand, if you write python, the python debugger is very useful.

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#20 Unread post by cflanary »

I solved most of my problems that I was having in this thread. Thank you for grep and print statements. I had a error in my zeta variable, so I no longer have a NaN for my POTEN_ENRG and NET_VOLUME.

I still have NaNs for my KINETIC and TOTAL_ENRG and I traced it to the calculation of u2v2 in diag.F. There is a NaN in my u variable at a single index for all my levels.

Does the u variable used to calculate u2v2 in diag.F get read in directly from my initial conditions file? I ask because I've looked at my u variable within Matlab and can't find a NaN around or at the index in question.

Thank you,

Chris

User avatar
arango
Site Admin
Posts: 1367
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Re: What to correct to keep ROMS from blowing up?

#21 Unread post by arango »

Well, users need to be careful what NetCDF interface is used when processing data in Matlab. Recall that you can use Native, SNCTOOLS, or MEXNC interfaces. I highly recommend that you use the native interface to NetCDF in Matlab. It requires high expertise in SNCTOOLS or MEXNC to have control on how the NaN data is processed. With the native interface, there are not assumptions about anything and you may code your own scripts and have the desired behavior. There are lots of scripts out there written by third parties with various degrees of expertise in Matlab and ROMS. We do no support any of those packages and it is impossible for us to correct them. Notice that we distribute our own repository of matlab processing scripts for ROMS data. These scripts are discussed in :arrow: WikiROMS. It is up to the user to select the appropriate software to process their data and check it before using ROMS.

:idea: If interpolating data into a ROMS grid, you need to check if the interpolation failed in some places resulting on NaNs. You need to remove those and take the appropriate steps to process them.

cflanary
Posts: 23
Joined: Sun Jan 29, 2012 4:33 pm
Location: Florida Institute of Technology
Contact:

Re: What to correct to keep ROMS from blowing up?

#22 Unread post by cflanary »

I did originally have NaNs in my u and v velocities. I used the native netcdf tools in Matlab. I've since corrected my mistake and no longer have NaNs in my u and v in my initial conditions file. I looking into diag.F to determine where the problem could be on my end.

Does the u and v used in diag.F to compute u2v2 come directly from my netcdf initial conditions file?

Thank you,

uranoscopus
Posts: 26
Joined: Sat Mar 17, 2012 4:54 pm
Location: CNR - IAMC
Contact:

Re: What to correct to keep ROMS from blowing up?

#23 Unread post by uranoscopus »

Hello everybody,
I have I think a dummy question but...here it is:
I read through the post that the h (and maybe even hraw) should not have 0 values. But what about the LAND points? Even the Land should not have zeros or what?

Thanks in advance,
Cheers,
Antonio

uranoscopus
Posts: 26
Joined: Sat Mar 17, 2012 4:54 pm
Location: CNR - IAMC
Contact:

Re: What to correct to keep ROMS from blowing up?

#24 Unread post by uranoscopus »

Sorry,
I've found the answer in this viewtopic.php?f=14&t=2033 post.
Cheers

Post Reply