[MITgcm-support] Bryan-Lewis vertical diffusivity for passive tracers
climater at gmail.com
Sun Sep 13 19:24:09 EDT 2009
I have been using Bryan and Lewis (1979) type spatially varying vertical
diffusivity together with pkg/kpp and pkg/gmredi for both potential
temperature and salinity in my model runs. Now I need to put in some passive
tracers (with pkg/ptracers) of the same vertical diffusivity. I wasn't sure
if passive tracers simply inherit that from potential temperature and
salinity or not. So I looked into the code, but was left confused even for
the treatment of active tracers.
The key routine to calculate vertical diffusivity with implicitDiffusion on,
I believe, is calc_3d_diffusivity.F. In this routine, Bryan-Lewis
diffusivity and pkg/kpp are apparently mutually exclusive, as Bryan-Lewis
parameters contribute KappaRTr only when trUseKPP is false. This routine is
called by both model/src/thermodynamics.F and pkg/kpp/kpp_calc.F. In the
I GAD_TEMPERATURE, useGMredi, useKPP,
which, since useKPP is true, ignores the Bryan-Lewis contribution, but take
the kpp contribution (CALL KPP_CALC_DIFF_T); while in the latter,
I GAD_SALINITY, .FALSE., .FALSE.,
which, since the flag is hard-coded false, takes the Bryan-Lewis
contribution, but ignores the kpp contribution.
Now it's unclear to me how different contributions to the total vertical
diffusivity add up (even though for the kpp model output, I believe the
model correctly adds the kpp contribution upon the Bryan-Lewis background
values). Without this understanding, I'm not sure I can implement
Bryan-Lewis diffusivity for passive tracers if it's not readily available.
Any clarification and explanation appreciated!
turn and live.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the MITgcm-support