[MITgcm-support] Mass balance... again...
Stefano Querin
squerin at ogs.trieste.it
Wed Jun 16 11:25:47 EDT 2010
Dear MITgcmers,
we are still working to compute the exact mass balance of a passive
tracer for a single cell due to advection-diffusion (no source, no
sink).
We use salinity as a generic passive tracer.
We consider the following terms for a given cell (i,j,k), for a given
time period:
- the values of ADVx and DFxE at i and i+1 as zonal fluxes at the 2
cell boundaries;
- the values of ADVy and DFyE at j and j+1 as meridional fluxes at the
2 cell boundaries;
- the values of ADVr and DFyI at k and k+1 as vertical fluxes at the
upper and lower cell boundary;
- the KPP non local transport terms at k and k+1 as additional
vertical fluxes at the upper and lower cell boundary;
- the surfaceForcing term.
All these fluxes are time averages (diagnostic dump frequency > 0).
We compute the sum of these terms (changing the sign for i+1, j+1 and
k fluxes). The resulting value, multiplied by the time interval,
should give the net variation of the tracer mass (salinity) in the cell.
However, this result is not equal to the difference of the salinity
values at the two consecutive snapshot outputs (diagnostic dump
frequency for salinity field < 0), multiplied by the cell volume.
In other words, the mass difference between two dump times (snapshots)
is not equal to the sum of the average fluxes between the two snapshots.
We observed that:
- the balance is heavily not conserved for the surface cell;
- the balance is not conserved for a number of subsurface cells (5-8
over 51 layers) but with much smaller error than that of the surface
layer;
- the balance shows negligible differences for the remaining cells of
the water column.
Is anybody able to find out if and what we are missing in our
computations?
We report below the most relevant parameters we changed in the
namelists and we attach the full namelist files for sake of clarity.
Then, we shortly summarize what we think the model is doing for
computing the transport terms and for saving them.
Thanks for your help (and sorry for the long email...)!
Cheers!
Gianpiero and Stefano
------------------------------------------------------------------------
Run configuration:
MITgcmUV version: checkpoint61t
Parameters:
deltaT=300.,
implicitDiffusion=.TRUE.,
implicitViscosity=.TRUE.,
nonHydrostatic=.TRUE.,
useNHMTerms=.TRUE.,
useRealFreshwaterFlux=.TRUE.,
selectAddFluid=1,
saltAdvScheme=33,
saltVertAdvScheme =33
exactConserv=T
selectAddFluid =1 (=0 off)
useRealFreshWaterFlux =T
staggerTimeStep =T
Packages used:
useOBCS=.TRUE.,
useKPP=.TRUE.,
useMNC=.FALSE.,
useGMRedi=.FALSE.
KPP parameters
kpp_freq = 300.,
With this configuration the transport terms are computed and saved in
THERMODYNAMICS as follows (as far as we understand…):
1. advection terms are computed in GAD_ADVECTION for x, y and r
directions. A temporary term (TlocalTij) is computed after each of the
3 advection terms. Then a tendency (gS) is calculated as the
difference between the former value and the last temporary term
(divided by deltaTlev).
Advection terms are temporary stored in afx, afy and fVerT which are
then passed to the diagnostic ADVx, ADVy and ADVr.
However, extra terms (Tracer*u,v,rTrans) are computed in the equations
for TlocalTij. Which is the meaning of these extra terms? And are they
passed to the diagnostic tool somehow?
A do loop in the vertical direction starts here.
2. Horizontal explicit diffusion is computed in GAD_CALC_RHS and the
terms fZon and fMer are passed to the diagnostics variables DFxE ad
DFyE.
3. The KPP mixing term is computed in GAD_CALC_RHS using KPPdifKzS,
KPPghat and surfaceForcingS and temporary stored in fVert. The terms
KPPdifKzS and KPPghat are passed to the diagnostic tool, while
surfaceForcingsS is passed to the diagnostic tool in
DIAG_OCEANIC_SURF_FLUX which in turn is called by DO_OCEANIC_PHYS.
4. The tendency gS is augmented by the terms fZon, fMer and fVert.
5. In EXTERNAL_FORCING_S the tendency gS for k=1 is increased by the
surfaceForcingS term.
6. TIMESTEP_TRACERS computes gS as the new term of salinity using the
previous term and the tendency.
End of the do loop.
7. The vertical implicit diffusion is computed in IMPLDIFF, the new
term of gS is updated and diagnostic term DFrI is computed.
------------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.diagnostics_slt
Type: application/octet-stream
Size: 2685 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data
Type: application/octet-stream
Size: 1828 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0001.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.exf
Type: application/octet-stream
Size: 2576 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0002.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.obcs
Type: application/octet-stream
Size: 3269 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0003.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.cal
Type: application/octet-stream
Size: 156 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0004.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.pkg
Type: application/octet-stream
Size: 179 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0005.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: data.kpp
Type: application/octet-stream
Size: 163 bytes
Desc: not available
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20100616/d26ccc24/attachment-0006.obj>
More information about the MITgcm-support
mailing list