Hi, is there a way to use a no slip bottom boundary condition with ROMS? I realize that you can choose logarithmic, linear, or quadratic bottom drag.
I tried to specify a no slip BC by choosing a linear bottom drag and setting rdrg = +.1 to 10.0, but in each case the model blows up.
Thanks for any suggestions.
-J
Bottom boundary condition: no slip
Bottom boundary condition: no slip
Last edited by jabent on Thu Mar 27, 2008 2:30 pm, edited 1 time in total.
Look where the optionI tried to specify a no slip BC by choosing a linear bottom drag and setting rdrg = -.1 to 10.0, but in each case the model blows up.
#define UV_LDRAG
is used in the code. It's set_vbc.F
You will see that choosing a negative linear drag coefficient will simply reverse the direction of the bottom stress with respect to the near bottom velocity, which rather than represent a drag will accelerate the fluid. No wonder it blows up.
The value 5.0d-02 m/s is a rather large linear drag coefficient which may create the illusion of a no slip condition, but is not.As I understand you did this:
#define UV_LDRAG
Try this to get no slip:
RDRG == 5.0d-02
Works for my application.
All the best,
Evgeny
The UV_LOGDRAG option is based on Law of the Wall bottom boundary layer theory which can be interpretted as applying zero velocity at the height of the roughness scale Zob set in ocean.in. This is probably your easiest route to obtaining solutions consistent with a no slip assumption.
John Wilkin: DMCS Rutgers University
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
71 Dudley Rd, New Brunswick, NJ 08901-8521, USA. ph: 609-630-0559 jwilkin@rutgers.edu
Re: Bottom boundary condition: no slip
Hi John,
I understand that the bottom stress, bustr, is calculated in set_vbc.F, as you mentioned.
I'm interested in using the no-slip boundary condition. From the linear bottom stress, we know that Km (du/dz) = rdrg*u at the bottom u-grid point, where u is calculated at a distance dz above the bottom. Then, one can estimate no slip by rdrg = Km/dz. Now, with topography, dz itself is a function of x and y. I'm trying to understand what the best 'dz' to choose in my choice of rdrg.
In the s-coordinate, the bottom boundary condition becomes (Km/Hz)(du/dsigma) = rdrg*u = bustr. In this coordinate system, Hz is a function of x and y. Could you please explain how this bottom stress, bustr, is applied in the code once it's calculated? I'm having difficulty determining where it's explicitly applied. Or, if you could point me to a reference, that would be great too.
Thanks, Jessica
I understand that the bottom stress, bustr, is calculated in set_vbc.F, as you mentioned.
I'm interested in using the no-slip boundary condition. From the linear bottom stress, we know that Km (du/dz) = rdrg*u at the bottom u-grid point, where u is calculated at a distance dz above the bottom. Then, one can estimate no slip by rdrg = Km/dz. Now, with topography, dz itself is a function of x and y. I'm trying to understand what the best 'dz' to choose in my choice of rdrg.
In the s-coordinate, the bottom boundary condition becomes (Km/Hz)(du/dsigma) = rdrg*u = bustr. In this coordinate system, Hz is a function of x and y. Could you please explain how this bottom stress, bustr, is applied in the code once it's calculated? I'm having difficulty determining where it's explicitly applied. Or, if you could point me to a reference, that would be great too.
Thanks, Jessica