tidal forcing run on an enclosed bay

Discussion of how to use ROMS on different regional and basin scale applications.

Moderators: arango, robertson

Post Reply
Message
Author
loric
Posts: 14
Joined: Mon Nov 12, 2007 2:17 pm
Location: UP - Marine Science Institute

tidal forcing run on an enclosed bay

#1 Unread post by loric »

Hi,

I'm a beginner to ROMS, and I'm trying to get to the point where I can run my own application. So far, I've gone as far as using seagrid to prepare a grid file, with landmask and bathymetry. My site is an enclosed bay, with closed boundaries on the north, east, and south, and with only a partially open western boundary. And to simplify things (I hope) and get a working run, I hope to use only tidal forcing.

I'm confused as to what to do next. For starters, I tried simply modifying the ocean_upwelling.in and upwelling.h files to account for the change in grid parameters. I've undefined ANA_GRID, and have defined MASKING, EASTERN_WALL, WESTERN_WALL, and SOUTHERN WALL. And where UPWELLING occurs in the functionals (ANA_INITIAL, ANA_SMFLUX, etc.), I've simply changed it to my application name. Of course, I wasn't expecting this to give me a good result, but I got a blowup at the very first timestep.

Am I missing any important step (such as modifying files other than the analyticals, and the ocean_*.in, and *.h files)? Eventually I'd like to force this situation with tidal components obtained from OTIS, to hopefully get a more realistic run. What would be the best way to get this done?

I apologize for the very basic feel of these questions though. I hope to improve as I gain a better understanding.

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

#2 Unread post by kate »

Do you mean OTPS tides? I expect there are Matlab scripts out there to do just that using your grid file. I of course use NCL instead.

So you have set up a domain with three walls and one open end. What are your boundary conditions on the open end? Did you turn off the EW_PERIODIC option? Did you turn off the wind forcing that defines UPWELLING? Did you check to make sure your timestep matches the resolution in your new grid? What happens with a vastly shorter timestep? If you can get it to go a whole timestep, you can ask it to plot the fields then to see what's going on.

loric
Posts: 14
Joined: Mon Nov 12, 2007 2:17 pm
Location: UP - Marine Science Institute

#3 Unread post by loric »

Thanks for your attention Kate. I've tried your suggestion regarding the timestep, making sure it complies with the CFL condition. And I've tried making it really small. Still, it ends up blowing up even at the first output timestep.

I couldn't seem to trace where the upwelling forcing factors in, so I've pasted my *.h file here. Is there something here that shouldn't be included for the simple case of a tidally forced bay? I have my current run set at 3 layers, but perhaps I should start with a 1-layer run?

#define UV_ADV
#define UV_COR
#define UV_LDRAG
#define UV_VIS2
#undef MIX_GEO_UV
#define MIX_S_UV
#define TS_U3HADVECTION
#define TS_C4VADVECTION
#undef TS_MPDATA
#define DJ_GRADPS
#define TS_DIF2
#undef TS_DIF4
#undef MIX_GEO_TS
#define MIX_S_TS

#define SALINITY
#define SOLVE3D
#define MASKING
#define SPLINES
#define AVERAGES
#define DIAGNOSTICS_TS
#define DIAGNOSTICS_UV
#undef EW_PERIODIC
#define EASTERN_WALL
#define NORTHERN_WALL
#define SOUTHERN_WALL

#undef ANA_GRID
#define ANA_INITIAL
#define ANA_SMFLUX
#define ANA_STFLUX
#define ANA_SSFLUX
#define ANA_BTFLUX
#define ANA_BSFLUX

#if defined GLS_MIXING || defined MY25_MIXING
# define KANTHA_CLAYSON
# define N2S2_HORAVG
#else
# define ANA_VMIX
#endif

#if defined BIO_FASHAM || defined ECOSIM || \
defined NPZD_POWELL || defined NEMURO
# define ANA_BIOLOGY
# define ANA_SPFLUX
# define ANA_BPFLUX
# define ANA_SRFLUX
#endif

#ifdef BIO_FASHAM
# define CARBON
# define DENITRIFICATION
# define BIO_SEDIMENT
# define DIAGNOSTICS_BIO
#endif

#ifdef PERFECT_RESTART
# undef AVERAGES
# undef DIAGNOSTICS_BIO
# undef DIAGNOSTICS_TS
# undef DIAGNOSTICS_UV
# define OUT_DOUBLE
#endif

In the end, as I'm just starting, I'd just like to see a working run for one of my sites and hope to move on from there. If tidal forcing is too complicated for a newbie, can you suggest a simple forcing scheme that I can try?

With regards to the tidal components, I meant OTIS, as we've run the OSU tidal inversion software to generate amplitude and phase values at fixed points around our region. I got to use a commercial model before that only needed the specification of the amplitude and phase values (for current or water level) at the endpoints of the open boundaries to run tidal forcing. But I'd like to move on from the commercial model and would like to explore how this is done in ROMS.

Thanks again for the reply, and I apologize if my questions seem too basic.

Loric

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

#4 Unread post by kate »

For tides, the first thing I would try is turning off STEP3D, turning ROMS into a shallow water model. You then need to set the timestep ratio to 1 and shorten the timestep accordingly.

loric
Posts: 14
Joined: Mon Nov 12, 2007 2:17 pm
Location: UP - Marine Science Institute

#5 Unread post by loric »

Ok. Thanks for the suggestion Kate. I'll look into the options for the shallow water model. And then to handle the tidal components, I can use NCL?

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

#6 Unread post by kate »

I've put the tides NCL scripts in http://people.arsc.edu/~kate/NCL/
I do it in two phases, first creating the file with tide_file.ncl, then filling in the values with otps.ncl.

Post Reply