ROMS blows-up after a few time-steps

Report or discuss software problems and other woes

Moderators: arango, robertson

Post Reply
Message
Author
jmsole6
Posts: 6
Joined: Fri Jan 13, 2012 11:15 pm
Location: METEOSIM

ROMS blows-up after a few time-steps

#1 Unread post by jmsole6 »

Good morning all,

Do you have any idea what can I do? I explain my simulation and my problems below. Here it is attached the initial file (inifile.nc),the forcing file (frc_bulk.nc), the cpp file (westmed.h), and the ROMS input file (westmed.in).
Many thanks in advance.

The main features of my simulation are:

Lm == 59 ! Number of I-direction INTERIOR RHO-points
Mm == 43 ! Number of J-direction INTERIOR RHO-points
N == 15 ! Number of vertical levels
NTIMES == 10000
DT == 30d0
NDTFAST == 5

Vtransform == 1 ! transformation equation
Vstretching == 1 ! stretching function
THETA_S == 6.0d0 ! surface stretching parameter
THETA_B == 0.d0 ! bottom stretching parameter
TCLINE == 10.0d0 ! critical depth (m)


The activated CPP:

#define UV_ADV
#define UV_COR
#define UV_QDRAG
#define DJ_GRADPS

#ifdef TS_U3ADV_SPLIT
# define TS_DIF4
# define DIFF_GRID
# define MIX_GEO_TS
#endif
#ifdef UV_U3ADV_SPLIT
# define UV_VIS4
# define VISC_GRID
# define MIX_GEO_UV
#endif
#define BULK_FLUXES
#undef LONGWAVE
#define NONLIN_EOS
#undef SALINITY
#define SOLVE3D
#define SOLAR_SOURCE
#define MASKING
#define SPLINES
#undef QCORRECTION
#undef SRELAXATION
#define CURVGRID
#undef SPONGE
#ifdef LMD_MIXING
# define LMD_RIMIX
# define LMD_CONVEC
# define LMD_SKPP
# define LMD_NONLOCAL
#endif
#undef TCLIMATOLOGY
#undef TCLM_NUDGING
#define ANA_BSFLUX
#define ANA_BTFLUX

I am trying to run ROMS. It starts , but it blows-up after having computed 4 minutes time:

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:01 1.515601E-03 8.226723E+03 8.226724E+03 1.137087E+15
(14,09,14) 1.677379E-04 3.639111E-04 0.000000E+00 3.901709E-01
DEF_HIS - creating history file: westmed_his.nc
WRT_HIS - wrote history fields (Index=1,1) into time record = 0000001
1 0 00:00:31 1.560854E-03 8.226681E+03 8.226682E+03 1.137087E+15
(46,15,15) 1.427931E-03 2.246364E-03 6.938058E-05 2.816670E+00
2 0 00:01:01 1.691695E-03 8.226640E+03 8.226642E+03 1.137087E+15
(31,27,15) 1.731919E-04 2.605589E-04 1.364881E-01 5.444033E+00
3 0 00:01:31 1.922482E-03 8.226602E+03 8.226604E+03 1.137087E+15
(31,27,15) 2.390360E-04 3.932507E-04 1.219707E-01 8.060204E+00
4 0 00:02:01 2.273733E-03 8.226567E+03 8.226569E+03 1.137087E+15
(31,27,15) 3.047909E-04 5.254843E-04 9.950828E-02 1.066188E+01
5 0 00:02:31 2.766925E-03 8.226534E+03 8.226537E+03 1.137087E+15
(31,27,15) 3.706933E-04 6.575518E-04 7.113620E-02 1.324395E+01
6 0 00:03:01 3.419784E-03 8.226505E+03 8.226508E+03 1.137087E+15
(37,31,15) 4.478399E-04 7.782489E-04 4.986929E-02 1.580115E+01
7 0 00:03:31 4.243094E-03 8.226478E+03 8.226482E+03 1.137087E+15
(47,14,15) 7.060503E-03 1.023748E-02 3.565038E-02 1.832808E+01
8 0 00:04:01 5.240034E-03 8.226454E+03 8.226460E+03 1.137087E+15
(29,26,15) 7.358719E-04 1.392776E-03 5.624096E-02 2.081915E+01

Blowing-up: Saving latest model state into RESTART file

WRT_RST - wrote re-start fields (Index=1,1) into time record = 0000001
Attachments
westmed.h
(1.22 KiB) Downloaded 366 times
westmed.in
(100.69 KiB) Downloaded 335 times
WESTMED_grd.nc
(405.98 KiB) Downloaded 352 times
inifile.nc
(672.84 KiB) Downloaded 326 times
frc_bulk.nc
(773.92 KiB) Downloaded 350 times

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

Re: ROMS blows-up after a few time-steps

#2 Unread post by kate »

1. I would look at the rst file where it saved the bad state in ncview (or whatever) to see where it went bad. Top, bottom or middle? u/v or T/S? Shallow or deep water?

2. I would turn on either GLS_MIXING or LMD_MIXING - I don't see either in your listing.

3. Currently recommended values of Vstretching and friends are more like:

Code: Select all

  Vtransform == 2                          ! transformation equation
 Vstretching == 4                          ! stretching function

     THETA_S == 7.0d0                      ! surface stretching parameter
     THETA_B == 2.0d0                      ! bottom  stretching parameter
      TCLINE == 250.0d0                    ! critical depth (m)
(which of course needs a new ini file to be created.)

4. I would try a shorter timestep.

Oh, and you don't have many grid points at all. Is it enough? Looking at your grid file, you have 4-5 independent patches of water - you should mask out the unconnected edge ones and the lake. Also, you can save on some grid points by truncating your easternmost part of the domain which is all land.

jmsole6
Posts: 6
Joined: Fri Jan 13, 2012 11:15 pm
Location: METEOSIM

Re: ROMS blows-up after a few time-steps

#3 Unread post by jmsole6 »

Hi Kate,

thank you very much for your recommedations. I just try it and, if I have more questions, I ask you again. I have already tried with GLS_MIXING and it works! I'll post the results for the next improved simulation.

Many thanks,

Josep Maria Solé

jmsole6
Posts: 6
Joined: Fri Jan 13, 2012 11:15 pm
Location: METEOSIM

Re: ROMS blows-up after a few time-steps

#4 Unread post by jmsole6 »

Good morning,

I have the same problem again. I attach the restart file (westmed_rst.nc), the forcing file (frc_bulk2.nc), the initial file (inifile2.nc), the input file (westmed.in) and the log file (westmed.log). It just blows up after 40 min of computation time approximately. My activated CPP options are:

#define UV_ADV
#define UV_COR
#define UV_QDRAG
#define DJ_GRADPS

#ifdef TS_U3ADV_SPLIT
# define TS_DIF4
# define DIFF_GRID
# define MIX_GEO_TS
#endif


#ifdef UV_U3ADV_SPLIT
# define UV_VIS4
# define VISC_GRID
# define MIX_GEO_UV
#endif


#define BULK_FLUXES
#undef LONGWAVE
#define NONLIN_EOS
#undef SALINITY
#define SOLVE3D
#define SOLAR_SOURCE
#define MASKING
#define SPLINES
#undef QCORRECTION
#undef SRELAXATION
#define CURVGRID
#define SPONGE
#undef GLS_MIXING
#define LMD_MIXING

#ifdef LMD_MIXING
# define LMD_RIMIX
# define LMD_CONVEC
# define LMD_SKPP
# define LMD_NONLOCAL
#endif

#undef TCLIMATOLOGY
#undef TCLM_NUDGING
#define TS_FIXED
#undef TS_ADVECTION
#undef TS_C4ADVECTION
#define ANA_BSFLUX
#define ANA_BTFLUX

Thank you very much for your help

Josep Maria Solé
Attachments
westmed.in
(100.64 KiB) Downloaded 353 times
westmed.log
(33.01 KiB) Downloaded 344 times
inifile2.nc
(16.92 MiB) Downloaded 285 times
frc_bulk2.nc
(9.93 MiB) Downloaded 292 times
westmed_rst.nc
(64.58 MiB) Downloaded 465 times

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

Re: ROMS blows-up after a few time-steps

#5 Unread post by kate »

Did you mean to define TS_FIXED? That means T and S will not be evolving. Whatever density field they prescribe, the velocities will be spinning up to match. Perhaps your T/S fields provide strong density gradients that you have prevented the model from damping out or turning into a wave field.

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

Re: ROMS blows-up after a few time-steps

#6 Unread post by rduran »

Off topic comment/question:

When doing a pressure gradient test (i.e. all forcing and initial fields zero except for an arbitrary stratification), initially velocities are due to pressure gradient error but eventually the advection and difussion of T,S will also be involved in the development of velocities. My question is: seems that fixing T and S would be a good way of evaluating the pressure gradient's evolution without other factors chipping in, am I right?

thanks!

Post Reply