[MITgcm-devel] Bug in KPP
Dimitris Menemenlis
menemenlis at jpl.nasa.gov
Tue May 26 11:48:04 EDT 2009
David, I agree that change below will work and that, assuming KPP code
was bug-free before kpp_routines.F version 1.21, this is the correct
fix. If it's not too much trouble, as a further sanity check for
vertical mismatch prior to 1.21, could you also check to see that
convective or shear instabilities trigger increase in K at the right
level and that mixed layer depth increase in K is consistent with hbl
depth.
For mixed layer depth, I would run your configuration forward for a
few time steps, set KPPwriteState=.true. in data.kpp, dumpfreq=deltat
in data, and I would compare the vertical profiles of KPPdiffkz and
KPPviscAz to KPPhbl.
For shear or convective instabilities in the interior, as you are
unlikely to have any of those in your model configuration after spin-
up, I would generate instabilities artificially by adding a bit of
salt or cooling a few random points, and then checking that KPPdiffkz
and KPPviscAz kick in at the correct level to remove these
instabilities.
The above tests are probably (hopefully) superfluous but if they are
not too much trouble to run, it would not hurt to have a fresh pair of
eyes looking at this issue one more time.
Did Hong get back to you regarding your horizontal viscosity question?
Cheers, Dimitris
On May 26, 2009, at 7:08 AM, David Ferreira wrote:
> I think the problem is in ri_iwmix. vddiff is defined at the
> interface (with
> k=0 corresponding to the air-sea interface), so the lines in ri_iwmix
> should be changed from:
> diffus(i,ki,3) = diffusKzT(i,ki)+fcon*diftcon+fRi*dift0
> to
> diffus(i,ki,3) = diffusKzT(i,ki+1)+fcon*diftcon+fRi*dift0
More information about the MITgcm-devel
mailing list