Does MOM6 have equivalent diagnostics to any of the following from POP output? I'm working out the last kinks in available output from the MOM6 + MARBL compsets, and the following are diagnostics that POP computes that we may need from MOM as well
FvPER_{tracer}
and FvICE_{tracer}
: I know these are tied to virtual fluxes, which I thought that MOM avoids, so we don't need them for any of the BGC tracers, right?RF_TEND_{tracer}
: these are tied to the Robert Filter and can also be omitted, right?HDIFE_{tracer}
, HDIFN_{tracer}
, and HDIFB_{tracer}
): I assume these exist in MOM, but don't know where to lookDIA_IMPVF_{tracer}
) and tendency from the KPP nonlocal mixing term (KPP_SRC_{tracer}
)... same as the horizontal mixing, I assume these diagnostics exist but don't know whereIt looks like per-tracer diagnostics are registered in subroutine register_tracer_diagnostics. MARBL is using diag_form=1
, the default.
{tracer}_dfx
and {tracer}_dfy
as registered as diffusive zonal flux. So I'm confused. Maybe these aren't supported by the neutral mixing scheme, but are always registered. (I suspect {tracer}_dfy
being labeled as diffusive zonal flux is a bug, and that it should be diffusive meridional flux.) I don't think there is an analogue for HDIFB_{tracer}
with MOM's neutral mixing. The convergence of these fluxes are in the variables {tracer}_dfxy_conc_tendency
and the related fields{tracer}_dfxy_cont_tendency
.register_tracer_diagnostics
or MOM_CVMix_KPP.F90
, though the latter does have KPP_NLtransport_heat
and KPP_NLtransport_salt
, which appear to be analogues specific for temperature and salinity.Thanks @Keith Lindsay. For (3), are you suggesting I add {tracer}_dfx
and {tracer}_dfy
to replace HDIFE_{tracer}
and HDIFN_{tracer}
, respectively? Would it also be helpful to include {tracer}_dfxy_conc_tendency
and {tracer}_dfxy_cont_tendency
? It looks like POP includes the HDIF
terms for tracers where we want to compute budgets: Fe, O2, DIC, DIC_ALT_CO2, DOC, and DOCr, and from your comment it isn't clear if the convergence terms are necessary.
I'll look into the KPP module this afternoon, thanks for pointing me in the right direction.
For the neutral diffusion scheme, the flux at the velocity point of a cell is a quantity that can be calculated. However, a problem in interpretation arises due to the nonlocality of scheme. Unlike other fluxes, the neutral diffusive flux is NOT symmetric between adjacent cells (e.g. the flux defined at the upstream point of j=1,k=1 is not equal to the flux of the downstream point at j+1,k=1.
To accurately capture this, we'd need to save 4 sets fluxes for each grid cell making it expensive to store
When we were debating this, the 3D convergence of the diffusive fluxes or the 2D column integral of diffusive fluxes seemed the most expedient way to enable most analysis applications
This is a long way of saying that dfx_2d
and dfy_2d
are well-defined and useable quantities, but that the 3D dfx
and dfy
aren't...we should probably disable the registration of those diagnostics if NEUTRAL_DIFFUSION
is on
Thanks for the additional info, @Andrew Shao. I talked to @Keith Lindsay a week and a half ago, and he pointed out that I was kind of blindly looking for 1-to-1 mappings from POP fields to MOM fields when really we want to make sure we include all the terms necessary to balance budgets... which may be done differently in MOM than in POP. So I think I'm going to wait until the first pass at the driver is on dev/ncar
before coming back to these diagnostics
Gotcha, yeah I think the only diagnostic which we probably need to add is the dilution/concentration due to boundary freshwater fluxes
FYI, I learned today from Alistair on the MOM6 slack channel that FMS, and hence MOM6, does not support taking time means of diagnostics across model restarts. It doesn't do diagnostic restarts. Some implications:
1) If you're generating monthly/annual means, your restart boundaries need to be on monthly/annual boundaries respectively.
2) We use annual means for some MARBL tracer budget terms, to reduce output volume. So we'll need to be restricted to running in yearly segments, or output these terms at a higher frequency and do a data reduction offline.
3) If you want to directly generate 5-day and monthly means simultaneously, you need to run in yearly segments. If you cannot run in yearly segments, e.g. hi-res runs, the alternative is to directly generate daily and monthly means, and then average the daily means to 5-day means. Alistair said this is what he does, with a sad emoji.
Last updated: May 16 2025 at 17:14 UTC