ROMS 2-way nesting

Report or discuss software problems and other woes

Moderators: arango, robertson

Post Reply
Message
Author
osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

ROMS 2-way nesting

#1 Unread post by osua72 »

I'm having some issues with a refined nesting application blow up and wonder if anyone could advise on a working method of grid creation using Matlab? Particularly regarding the correct procedure for setting the land mask in a refinement case? I've tried a few different methods each with low levels of success..

Some background:
I have an outer model with an inner nested grid and there are land points in both grid.

So far I have followed the following steps:

1. Create high resolution outer grid using the ROMS_TOOLS make_grid.m script and edited the mask: (dl of hres outer == inner grid dl).

2. Run fine2coarse.m with a refinement factor of 5 to reduce the resolution of the outer grid which creates my parent grid.

- I've then gone back into the file to check the bathymetry smoothing and mask.

3. Run coarse2fine.m with a refinement factor of 5 for a subset of the parent grid to create the child grid.

4. Run c_contact.m and contact.m to make contact file.

The above steps are something I've come up with from various posts on this forum, but it's possible that I'm getting muddled. Can someone point me in the right direction please?

If it helps the blow up is occurring after 2 timesteps and the error message is as follows:

2 2014-07-20 00:00:08.00 NaN NaN NaN NaN 02
(000,000,00) 0.000000E+00 0.000000E+00 0.000000E+00 NaN
Found Error: 01 Line: 298 Source: ROMS/Nonlinear/main3d.F
Found Error: 01 Line: 298 Source: ROMS/Drivers/nl_ocean.h

Blowing-up: Saving latest model state into RESTART file
Attachments
ROMS-blowup.txt
(62 KiB) Downloaded 464 times

User avatar
wilkin
Posts: 918
Joined: Mon Apr 28, 2003 5:44 pm
Location: Rutgers University
Contact:

Re: ROMS 2-way nesting

#2 Unread post by wilkin »

Does the parent grid run on its own (without any nesting)?

You have open boundary conditions (Chapman/Flather/gradient) for velocities but closed for tracers. That might give you stability problems at the boundary.

You also have explicit horizontal mixing on tracers in s-coordinates (MIX_S_TS) rather than geopotential coordinates (MIX_GEO_TS) which could give appreciable vertical mixing if you have steep bathymetry.

I also notice one odd thing with the grid 02 metrics:

Code: Select all

Metrics information for Grid 02:
 ===============================
...
 Minimum Z-grid spacing, DZmin =  0.00000000E+00 m
You have a DZ of zero somewhere. Not sure how you managed that.

You should check your vertical coordinates are sensible. The vertical coordinate stretching values you use of theta_s = 0 and theta_b = 0 are unconventional.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: ROMS 2-way nesting

#3 Unread post by osua72 »

Thank you for your response -

Yes, the parent grid runs fine without nesting, I've switched to MIX_GEO_TS but I'm still getting a blow up. I'm not sure why I'm getting a DZ of 0.0 in the nested grid, I've tried a run with constant bathymetry everywhere and I get the same problem. I did discover some strange values in my masks which I've now ammended but it's still blowing up at the same time step. Now, regardless of whether the model has constant or variable bathymetry, the blow up is occurring at the eastern boundary of the child grid, which is an ocean only boundary. I'll play around with the sigma layers and keep fiddling with a few other things.

Caffery

Re: ROMS 2-way nesting

#4 Unread post by Caffery »

i met the similar problem. parent grid's resolution is 1/24°, and child resolution is 1/72°. Could you show you why it didn't work and its solution?
thx!

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: ROMS 2-way nesting

#5 Unread post by osua72 »

The previous problem has been solved - I had neglected to include x_rho and y_rho etc in parent and child grid files.

I now have a new problem - 18 hours into the model run I get a blow up. I've restarted and looked into the problem in more detail but I'm still at a bit of a loss. I seem to get erroneous temperature and salinity values - my intention at this stage was to keep these values constant, but there is still an instability occuring. The same blow up occurs if I use a flat bathymetry and a generated bathymetry.

Any thoughts on why temp/salinity instabilities may occur? The parent grid runs to completion.
Attachments
roms_nest_bu.txt
(50.35 KiB) Downloaded 446 times

MIDHILAVARNAV
Posts: 30
Joined: Fri Dec 15, 2017 6:07 pm

Re: ROMS 2-way nesting

#6 Unread post by MIDHILAVARNAV »

Dear osua72
Was you able to resolve the blowup? Could you please state out what was wrong with the setup.

osua72
Posts: 20
Joined: Tue Feb 12, 2013 2:54 pm
Location: Bangor University

Re: ROMS 2-way nesting

#7 Unread post by osua72 »

Unfortunately, I've not been able to solve the problem. I suspect it's due to boundary placement and bathymetry causing instabilities but as yet I'm still unable to run the model past spin up without it blowing up.

MIDHILAVARNAV
Posts: 30
Joined: Fri Dec 15, 2017 6:07 pm

Re: ROMS 2-way nesting

#8 Unread post by MIDHILAVARNAV »

Dear osua72
I have also met up with such instable values in salinity during my two way nesting and for one way it is almost fine. Would it be possible for you to check the configuration with one way nesting defined instead of two way?

Patilc103
Posts: 7
Joined: Wed May 03, 2023 12:22 pm
Location: Banglore

Re: ROMS 2-way nesting

#9 Unread post by Patilc103 »

Hey,

I have a doubt regarding setting up of nested grid applications. How can initial files for finer grid be generated from the coarser grid?
Can we just use roms2roms function to get initial file for the finer grid from a coarser grid initial file.
or we need to run for the coarser grid first and feed the output from the coarser grid to the roms2roms function and get the initial file for finer grid.


Thank you.

Post Reply