[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