At the risk of asking a question with an obvious answer, here goes...
Running the upwelling example with the following cpp defs, with T & S set to constants and sustr and svstr set to 0, produces zero velocities as expected. My question in why, when turning on NONLIN_EOS (so that density is a function of salinity as well as temperature), are velocities suddenly created? The density is the same everywhere, what is causing the water to move?
Looks like you turned off the periodicity. In answer to your question, yes, we expect stratification in the presence of a sloping bottom to generate some currents. This is the classic "pressure gradient problem" about which many papers have been written. Note their magnitude - they'd be lost in the noise with the winds on.
Hi Kate,
Thanks so much for the quick response. (Yes, I turned off periodicity.) You mentioned stratification. I used ANA_INITIAL to set the initial T and S to constants, so there should be no stratification. Would you still expect the pressure gradient problem to create velocities? It appears so. Yes, I agree that the magnitude of the velocities are small, but the problem arises when I substitute my grid for the analytical grid (using the same cppdefs above). See attached model results. So perhaps it is more a problem with my grid than the pressure gradients. I've smoothed bathymetry a lot (using first a Shapiro to 0.35 and then also LP to 0.1), but I am still getting some noisy and fairly strong velocities. Is there another type of bathymetry smoothing I should be considering? Could there be something else wrong with my grid (created with Seagrid and then seagrid2Roms)?
Uniform T and S with the linear equation of state should produce no currents. Next I would turn on the diagnostics output and see which term(s) are driving the currents.
As I understand it, when constant T and S are used with a linear equation of state, the velocities are indeed zero. The non-zero velocities crop up when a nonlinear equation of state is used. This makes sense since there is a compressibility condition in the full, nonlinear equation of state which will generate a weak depth dependence in density. Once a vertical density profile exists, then with variable bathymetry, pressure gradient truncation errors will generate a weak nonzero velocity field.
Yes, the problem here is due to the fact that the pressure gradient scheme described
in the 2003 paper WAS NEVER FULLY implemented in Rutgers ROMS.
That paper introduces the notion of adiabatic differences and harmonic averaging of
adiabatic differences as a method to enforce non-oscillatory stratification of cubic
polynomial interpolants. Note that just monotonic decrease of "in situ" density with
vertical coordinate z (pointing upward) does not necessarily guarantees that the water
column is positively stratified: in fact, most of density variation in the ocean occurs
due to what I would call "bulk compressibility" -- imagine than T,S are spatially
uniform and equal to T=3.8 degrees, S=34.5 PSU. This would still yield about 90% of
the observed variation of "in situ" density. However, in can be shown (Dukowicz, 2001)
that "bulk compressibility" does not create any contribution to pressure gradient and,
in fact, is dynamically passive.
The 2003 paper argues that pressure gradient should not be computed from "in situ"
density, but rather splits EOS into two parts to facilitate computing of adiabatic
differencing, see Sec. 7 there. Once this is properly done, pressure gradient force
should vanish identically when T,S are spatially uniform. Yes, this requires a special
form of EOS.
The PGF errors associated with neglecting this issue (i.e. computing PGF from straight
from "in situ" density vs. splitting EOS) are shown on Fig. 16 in 2003 paper.
The dynamical errors due to entirely neglecting seawater compressibility (missing
thermobaric effect) are shown on Figs. 17 and 18.
Rutgers ROMS instead took the route of bringing "latest and greatest", and supposedly
more accurate versions of EOS, not realizing that it leads to the admission of much
cruder errors due to sigma-problem than the improvement of the physical accuracy of
EOS relative to the Jackett and McDougal, 1995 version.
Another related dilemma is a long-term, 40+ years, misunderstanding of the Boussinesq
approximation within the oceanic modeling community leading to the belief that the more
accurate EOS is used the better it is for your model. This is slowly being sorted out
starting with the year 2010, but overall it already took 100 years (counting from the
1903 lecture noted by Boussinesq) to realize that if the Boussinesq approximation is
desired it should be applied to the entire system of equations including EOS.
In fact, most of the effort to improve EOS starting with the original UNESCO standard
of early 198x was undertaken pursuing two directions: (i) accuracy of representation
of "in situ" density under the conditions of extreme pressure, and (ii) to ensure
internal thermodynamic consistency among the derived properties resulting from EOS
(after work of Feistel, 2003). While both are important goals, neither of them leads
to any improvement in a Boussinesq model: accuracy of "in situ" density is irrelevant,
since in some places you have is as "in situ", in other places it is replaced by rho0.
Thermodynamics is grossly simplified by the Boussinesq approach to start with, reducing
it to just conservation. So the only relevant properties needed from EOS are translations
of spatial derivatives of T,S into "in situ" adiabatic derivatives of density (derivatives
under constant pressure equal to the actual local pressure). This opens the possibility
to significantly simplify EOS and yet, have a very physically accurate Boussinesq model.
This comment is orthogonal to Sasha's comment -- and his certainly the more interesting of the two.
However, it is worth noting that if you have stratification over a sloping bottom, in the presence of vertical mixing, you will have an adjustment of the density near the bottom. If the mixing were isotropic, your boundary condition would be no diffusive flux through the bottom, and thus no gradient in density normal to the bottom. This leads to a cross-slope density gradient, which will drive a velocity by thermal wind. Non-isotropic mixing gives you a slightly different result -- i.e. if there is only vertical mixing, you will get no vertical stratification near the bottom, which again leads to horizontal density gradients over a sloping bottom, and velocity by thermal wind.
Thus, even in the absence of error, but in the presence of diffusion of T & S, stratification, and sloping bottoms, you will get weak velocities. Once those velocities start, they can advect density and the density field will start to evolve. In the periodic case, this evolution is very slow, because most of the flow is along isobath and thus perpendicular to the density gradients. Stick a wall into the problem by turning off periodicity, and odd things will happen.
Of course, you should also see this with a linear EOS.