[MITgcm-devel] _xyz_ interface S/R

Jean-Michel Campin jmc at ocean.mit.edu
Mon Aug 21 10:25:39 EDT 2006


Hi folks,

Since there are already few packages (seaice with 3 time-levels arrays,
land, fizhi-gridalt, and more might come) that use kind of 3-D arrays
with number of levels (= 3rd dimension) different from Nr, it would
be useful to have
- exchanges
- r/w interface (pkg RW)
which can deal with those arrays (the "_xy_" and "_xyz_" that
assumes Nr levels are not enough).

We could either
- increase the number of S/R (adding other templates)
or
- replace the _xyz_ interface S/R with a general 3d version
(where the 3rd dim is an argument)

I prefer the second solution (just because we have already
quiet a lot of interface S/R: R4, R8, RL, RS ...) and propose
to implement it progressively (not removing all the _xyz_ version
right now), starting with exch2.
Is it OK ?

Further simplification: for exchanges that are not very often used
(exch_z, exch_uv_agrid) we could have just 1 set of interface S/R
using also the 3-d version for 2-d fields, with 3rd-dim argument =1.
The advantage I see: 1 version is easier to maintain, and will
be tested more often (e.g, exch_uv_agrid_xyz is used only once,
in fizhi/AtoC.F, and exch_z_xyz is never used).
What do you think ?

Jean-Michel



More information about the MITgcm-devel mailing list