[MITgcm-devel] pickups: mdsio and mnc with unorthodox fields

Jean-Michel Campin jmc at ocean.mit.edu
Mon Mar 20 08:51:59 EST 2006


Hi Martin,

You can have a look at how it's done with pkg land (a simple case),
that has also an MNC version of its write pickup.
With MDSIO, the idea is to write 1rst the 3-D fields, and then count
how many 2-D layers have been written and to continue from there
with 2-D fields

Jean-Michel

On Mon, Mar 20, 2006 at 12:07:56PM +0100, Martin Losch wrote:
> Hi,
> I am having problems with (understanding) writing pickup files with  
> fields that are NOT 2D as etaN, but 3D with the 3rd dimension  
> different from Nr. Example: UICE,VICE,TICES in pkg/seaice/ 
> seaice_pickup.F
> TICES is define with MULTDIM=7 (currently) in the third dimension:
>       _RL TICES      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,MULTDIM,nSx,nSy)
> and this is how the pickup file is written
>        CALL MDSWRITEFIELD
>      &      (fn,prec,lgf,'RL', MULTDIM,  TICES,1, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 1,  YNEG, 8, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 1, HSNOW, 9, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  UICE, 4, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  VICE, 5, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  HEFF, 6, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  AREA, 7, myIt,myThid)
> My understanding is, that the 7th argument of MDSWRITEFIELD give the  
> position the file, so 4 (as for UICE) means the 4th record, but where  
> are record 2 and 3? Even more confusing, if SEAICE_MULTILEVEL is  
> undefined, the 2D field TICE replaces TICES and writing the pickup  
> looks like this:
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 1,  TICE, 1, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 1,  YNEG, 2, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 1, HSNOW, 3, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  UICE, 2, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  VICE, 3, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  HEFF, 4, myIt,myThid)
>        CALL MDSWRITEFIELD(fn,prec,lgf,'RL', 3,  AREA, 5, myIt,myThid)
> Doesn't that mean, that UICE (second record) overwrites YNEG (second  
> record also), equivalently VICE and HSNOW? Is this correct? I want to  
> add more fields, so I need to know.
> 
> The problem is different when I want to do pickups with mnc, which is  
> not implemented in seaice at all. Is it possible to define mnc- 
> variables for fields such as TICE or UICE? I am sure that's easy, but  
> I cannot find an example for that (meaning, I am too lazy to plow  
> through the documentation, sorry). I would like to use mnc for  
> writing pickups of seaice, but I don't know how.
> 
> Martin
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel



More information about the MITgcm-devel mailing list