Open dcherian opened 1 year ago
Thanks for reporting this. cc'ing @alperaltuntas
As update, after discussing with Alper and Gustavo, we decided to do something similar for diffusivity where we add the background field to whatever Kd_int
is initialized to (KD
in this case) , and then set KV=0
, KD=0
by default in MOM_interface.
See #239 and https://github.com/ESCOMP/MOM_interface/issues/134, https://github.com/ESCOMP/MOM_interface/pull/135
https://github.com/NCAR/MOM6/blob/9786710c3eff31468891767852600eeadf368589/src/parameterizations/vertical/MOM_set_diffusivity.F90#L311-L315
Kd_lay
andKv_slow
are set toKD
andKV
; effectively these are background values and the defaults areKD=2e-5, KV=1e-4
Later
calculate_bkgnd_mixing
calculates background valuesKv_bkgnd
andKd_bkgnd
(I haveHORIZ_VARYING_BACKGROUND=TRUE
) and assignsKd_lay_2d
andKd_int_2d
https://github.com/NCAR/MOM6/blob/9786710c3eff31468891767852600eeadf368589/src/parameterizations/vertical/MOM_set_diffusivity.F90#L409-L410
Kd_bkgnd
is assigned toKd_lay
in there, overwriting theKD
values set earlier.Now back in
MOM_set_diffusivity
:Kv_bkgnd
is added toKv_slow
(≡KD
): https://github.com/NCAR/MOM6/blob/9786710c3eff31468891767852600eeadf368589/src/parameterizations/vertical/MOM_set_diffusivity.F90#L411-L414This is NOT what's being done with diffusivity where
Kd_lay
is set bycalculate_bkgnd_mixing
.It is wrong because we've added two different "background" viscosity formulations. We should be overwriting
Kv_slow
withKv_bkgnd
.Setting
KD=0, KV=0
makes things work like I expected.EDIT: For the record, here's the image that shows the issue (mean profiles at 0N, 140W; averaged over years 46-68), the prandtl number (visc/diff) is ~200 below the EUC. We want it to be in the 1-10 range.