[MITgcm-support] output using diagnostics package

q li qliuri at yahoo.com
Fri Jul 31 11:04:55 EDT 2009


Hi Jean-Michel,

You are right. I put them in one file. It works.

Here is the STDERR file. The 2D domain is 4096x300. It runs using MPI on 32 cpus.

The DIAGNOSTICS_SIZE.h is followed. I did not change anything. It says the maximum. It looks all works for my 4 point output.

Many thanks. Have a great weekend.

Li



> more STDE*
::::::::::::::
STDERR.0000
::::::::::::::
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    23 ETAN     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    30 UVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    31 VVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    32 WVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    26 THETA    has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    23 ETAN     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    30 UVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    31 VVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    32 WVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    26 THETA    has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    23 ETAN     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    30 UVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    31 VVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    32 WVEL     has already been set
(PID.TID 0000.0001) - WARNING - SETDIAG: Stats-Diag #    26 THETA    has already been set
::::::::::::::


Here is the DIAGNOSTICS_SIZE.h.

C $Header: /u/gcmpack/MITgcm/verification/global_ocean.cs32x15/code/DIAGNOSTICS_SIZE.h,v 1.1 2006/06/08 00:54:30 jmc Exp $
C $Name:  $

C     Diagnostics Array Dimension
C     ---------------------------
C     ndiagMax   :: maximum total number of available diagnostics
C     numlists   :: maximum number of diagnostics list (in data.diagnostics)
C     numperlist :: maximum number of active diagnostics per list (data.diagnostics)
C     numLevels  :: maximum number of levels to write    (data.diagnostics)
C     numdiags   :: maximum size of the storage array for active 2D/3D diagnostics
C     nRegions   :: maximum number of regions (statistics-diagnostics)
C     sizRegMsk  :: maximum size of the regional-mask (statistics-diagnostics)
C     nStats     :: maximum number of statistics (e.g.: aver,min,max ...)
C     diagSt_size:: maximum size of the storage array for statistics-diagnostics
C Note : may need to increase "numdiags" when using several 2D/3D diagnostics,
C  and "diagSt_size" (statistics-diags) since values here are deliberately small.
      INTEGER    ndiagMax
      INTEGER    numlists, numperlist, numLevels
      INTEGER    numdiags
      INTEGER    nRegions, sizRegMsk, nStats
      INTEGER    diagSt_size
      PARAMETER( ndiagMax = 500 )
      PARAMETER( numlists = 10, numperlist = 50, numLevels=2*Nr )
      PARAMETER( numdiags = 40*Nr )
      PARAMETER( nRegions = 10 , sizRegMsk = 3 , nStats = 4 )
      PARAMETER( diagSt_size = 10*Nr )

CEH3 ;;; Local Variables: ***
CEH3 ;;; mode:fortran ***
CEH3 ;;; End: ***



________________________________
From: Jean-Michel Campin <jmc at ocean.mit.edu>
To: mitgcm-support at mitgcm.org
Sent: Thursday, July 30, 2009 5:23:11 PM
Subject: Re: [MITgcm-support] output using diagnostics package

Hi Li,

Do you see something in one of the STDERR.* ?
Not sure, but a copy of our DIAGNOSTICS_SIZE.h could help.

Not related to this problem, but just 2 suggestions:
1) You probably don't need to define a 3-D "regMask" array, and
could drop the 3rd dimension (since you are using 
> nSetRegMskFile=1,
2) And if you prefer, you could chose to put all those output in the 1rst file
>  stat_region(1,1)= 1, 2, 3 , 4,
since the list of variables + frequency is identical in all 4 output files.
You could also turn on MNC to get NetCDF file instead of ASCII output.

Cheers,
Jean-Michel

On Thu, Jul 30, 2009 at 01:04:51PM -0700, q li wrote:
> Hi Jean-Michel,
> 
> I can only output 2 stat files. If I remove stat_fields(1,3) and stat_fields(1,4) from data.diagnostics, it worked fine. But when I add them, an error appears:
> 
> forrtl: severe (104): incorrect STATUS= specifier value for connected file, unit 11, file ~/MITgcm/diagn/runEWH/statA3.0000000000.txt
> 
> I set 5 different points in the model domain in Matlab.
> 
> nx=2^12; ny=1; nz=300;
> regMask=zeros(nx,ny,nz);
> regMask(xA1,1,:)=1; regMask(xA2,1,:)=2; regMask(xA3,1,:)=3;
> regMask(xP1,1,:)=4; regMask(xP2,1,:)=5;
> 
> And here is my data.diagnostics:
> 
>  &DIAG_STATIS_PARMS
> #- regional mask: 3 lat. band: 1 : y <= -24 ; 2 : -24<y<24 ; 3 : 24 <= y
>  diagSt_regMaskFile='regMask.bin',
>  nSetRegMskFile=1,
>  set_regMask(1)= 1, 1,  1,  1,  1,  1, 
>  val_regMask(1)= 0.,1., 2., 3., 4., 5.,
> #---
>  stat_fields(1,1)= 'ETAN    ','UVEL    ','VVEL    ','WVEL    ', 'THETA   ',
>     stat_fname(1)= 'statA1',
>  stat_region(1,1)= 1,
>      stat_freq(1)= -60.,
>     stat_phase(1)= 0.,
>  
>  stat_fields(1,2)= 'ETAN    ','UVEL    ','VVEL    ','WVEL    ', 'THETA   ',
>     stat_fname(2)= 'statA2',
>  stat_region(1,2)= 2,
>      stat_freq(2)= -60.,
>     stat_phase(2)= 0.,
> 
>  stat_fields(1,3)= 'ETAN    ','UVEL    ','VVEL    ','WVEL    ', 'THETA   ',
>     stat_fname(3)= 'statA3',
>  stat_region(1,3)= 3,
>      stat_freq(3)= -60.,
>     stat_phase(3)= 0.,
> 
>  stat_fields(1,4)= 'ETAN    ','UVEL    ','VVEL    ','WVEL    ', 'THETA   ',
>     stat_fname(4)= 'statP1',
>  stat_region(1,4)= 4,
>      stat_freq(4)= -60.,
>     stat_phase(4)= 0.,
>  &
> 
> Do you have any idea what is happening?
> 
> Best,
> 
> Li
> 
> 
> 
> 
> 
> ________________________________
> From: Jean-Michel Campin <jmc at ocean.mit.edu>
> To: mitgcm-support at mitgcm.org
> Sent: Wednesday, July 29, 2009 4:34:32 PM
> Subject: Re: [MITgcm-support] output using diagnostics package
> 
> Hi Li,
> 
> Fortran Unit 11 is used to read parameter files (all the data*).
> Looks like the namelist termination (for the 1rst namelist: 
> DIAGNOSTICS_LIST) is missing in file "data.diagnostics".
> 
> > I don't quite understand three parameters in data.diagnostics: nSetRegMskFile, 
> > set_regMask and val_regMask. Could anyone help me out?
> You can find few emails (in Apr 2009) on the support list about 
> Regional statistics diag (regon-mask).
> And an example in MITgcm/verification/aim.5l_cs/input.thSI
> with matlab script (mk3regions_mask.m) to generate the region-mask file.
> 
> Cheers,
> Jean-Michel
> 
> On Wed, Jul 29, 2009 at 09:50:47AM -0700, q li wrote:
> > Experts,
> > 
> > I am trying to output only UVEL and THETA for the whole domain (2D model) every hour, and also UVEL and THETA for 4 locations every 1 minute in order to compare  to observations. Thank Jean-Michel for telling me the diagnostics package was designed for it. I got following error information from the server. I don't know why and I cannot find any help file for it either. Is anything wrong with my diagnostics.size file? I don't quite understand three parameters in data.diagnostics: nSetRegMskFile, set_regMask and val_regMask. Could anyone help me out?
> > 
> > Best,
> > 
> > Li
> > 
> > Error output from the server: (MPI run on 32 cpus)
> > 
> > ~/MITgcm/SCS/diagn/run> more *.err
> > forrtl: severe (24): end-of-file during read, unit 11, file /tmp/pbs.16613.a330/fortZROgSu, line 18, position 0
> > Image              PC                Routine            Line        Source             
> > mitgcmuv           4000000000439F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000437A60  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000391D10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FBA10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FA9A0  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000339400  Unknown               Unknown  Unknown
> > mitgcmuv           400000000003EC60  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002C3B10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002B0DA0  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002E3590  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000204F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003ED0  Unknown               Unknown  Unknown
> > libc.so.6.1        2000000003BB1C50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003CC0  Unknown               Unknown  Unknown
> > forrtl: severe (24): end-of-file during read, unit 11, file /tmp/pbs.16613.a330/fortC73lfs, line 18, position 0
> > Image              PC                Routine            Line        Source             
> > mitgcmuv           4000000000439F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000437A60  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000391D10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FBA10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FA9A0  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000339400  Unknown               Unknown  Unknown
> > mitgcmuv           400000000003EC60  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002C3B10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002B0DA0  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002E3590  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000204F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003ED0  Unknown               Unknown  Unknown
> > libc.so.6.1        2000000003BB1C50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003CC0  Unknown               Unknown  Unknown
> > forrtl: severe (24): end-of-file during read, unit 11, file /tmp/pbs.16613.a330/fortu2M8R0, line 18, position 0
> > Image              PC                Routine            Line        Source             
> > mitgcmuv           4000000000439F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000437A60  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000391D10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FBA10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FA9A0  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000339400  Unknown               Unknown  Unknown
> > mitgcmuv           400000000003EC60  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002C3B10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002B0DA0  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002E3590  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000204F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003ED0  Unknown               Unknown  Unknown
> > libc.so.6.1        2000000003BB1C50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003CC0  Unknown               Unknown  Unknown
> > forrtl: severe (24): end-of-file during read, unit 11, file /tmp/pbs.16613.a330/fortIhTnQJ, line 18, position 0
> > Image              PC                Routine            Line        Source             
> > mitgcmuv           4000000000439F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000437A60  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000391D10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FBA10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FA9A0  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000339400  Unknown               Unknown  Unknown
> > mitgcmuv           400000000003EC60  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002C3B10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002B0DA0  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002E3590  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000204F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003ED0  Unknown               Unknown  Unknown
> > libc.so.6.1        2000000003BB1C50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003CC0  Unknown               Unknown  Unknown
> > forrtl: severe (24): end-of-file during read, unit 11, file /tmp/pbs.16613.a330/fortyjeMpE, line 18, position 0
> > Image              PC                Routine            Line        Source             
> > mitgcmuv           4000000000439F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000437A60  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000391D10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FBA10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002FA9A0  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000339400  Unknown               Unknown  Unknown
> > mitgcmuv           400000000003EC60  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002C3B10  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002B0DA0  Unknown               Unknown  Unknown
> > mitgcmuv           40000000002E3590  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000204F50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003ED0  Unknown               Unknown  Unknown
> > libc.so.6.1        2000000003BB1C50  Unknown               Unknown  Unknown
> > mitgcmuv           4000000000003CC0  Unknown               Unknown  Unknown
> > MPI: MPI_COMM_WORLD rank 21 has terminated without calling MPI_Finalize()
> > MPI: aborting job
> > 
> > 
> >  
> > setup in data.dignostics:
> > 
> >   
> > (PID.TID 0000.0001)  DIAGNOSTICS_READPARMS: opening data.diagnostics
> > (PID.TID 0000.0001)  OPEN_COPY_DATA_FILE: opening file data.diagnostics
> > (PID.TID 0000.0001) // =======================================================
> > (PID.TID 0000.0001) // Parameter file "data.diagnostics"
> > (PID.TID 0000.0001) // =======================================================
> > (PID.TID 0000.0001) ># Diagnostic Package Choices
> > (PID.TID 0000.0001) >#-----------------
> > (PID.TID 0000.0001) ># for each output-stream:
> > (PID.TID 0000.0001) >#  filename(n) : prefix of the output file name (only 8.c long) for outp.stream n
> > (PID.TID 0000.0001) >#  frequency(n):< 0 : write snap-shot output every |frequency| seconds
> > (PID.TID 0000.0001) >#               > 0 : write time-average output every frequency seconds
> > (PID.TID 0000.0001) >#  timePhase(n)     : write at time = timePhase + multiple of |frequency|
> > (PID.TID 0000.0001) >#  averagingFreq(n) : frequency (in s) for periodic averaging interval
> > (PID.TID 0000.0001) >#  averagingPhase(n): phase     (in s) for periodic averaging interval
> > (PID.TID 0000.0001) >#  repeatCycle(n)   : number of averaging intervals in 1 cycle
> > (PID.TID 0000.0001) >#  levels(:,n) : list of levels to write to file (Notes: declared as REAL)
> > (PID.TID 0000.0001) >#                 when this entry is missing, select all common levels of this list
> > (PID.TID 0000.0001) >#  fields(:,n) : list of diagnostics fields (8.c) (see "available_diagnostics.log"
> > (PID.TID 0000.0001) >#                 file for the list of all available diag. in this particular config)
> > (PID.TID 0000.0001) >#-----------------
> > (PID.TID 0000.0001) > &DIAGNOSTICS_LIST
> > (PID.TID 0000.0001) ># diag_mnc     = .FALSE.,
> > (PID.TID 0000.0001) ># dumpAtLast   = .TRUE.,
> > (PID.TID 0000.0001) >   fields(1,1) = 'UVEL    ','THETA   ',
> > (PID.TID 0000.0001) >   filename(1) = 'UT',
> > (PID.TID 0000.0001) >   frequency(1) = -10800.0D+0,
> > (PID.TID 0000.0001) >
> > (PID.TID 0000.0001) >
> > (PID.TID 0000.0001) ># Parameter for Diagnostics of per level statistics:
> > (PID.TID 0000.0001) >#-----------------
> > (PID.TID 0000.0001) ># for each output-stream:
> > (PID.TID 0000.0001) >#  stat_fname(n) : prefix of the output file name (only 8.c long) for outp.stream n
> > (PID.TID 0000.0001) >#  stat_freq(n):< 0 : write snap-shot output every |stat_freq| seconds
> > (PID.TID 0000.0001) >#               > 0 : write time-average output every stat_freq seconds
> > (PID.TID 0000.0001) >#  stat_phase(n)    : write at time = stat_phase + multiple of |stat_freq|
> > (PID.TID 0000.0001) >#  stat_region(:,n) : list of "regions" (default: 1 region only=global)
> > (PID.TID 0000.0001) >#  stat_fields(:,n) : list of diagnostics fields (8.c) (see "available_diagnostics.log"
> > (PID.TID 0000.0001) >#                 file for the list of all available diag. in this particular config)
> > (PID.TID 0000.0001) >#-----------------
> > (PID.TID 0000.0001) > &DIAG_STATIS_PARMS
> > (PID.TID 0000.0001) > diagSt_regMaskFile='regMask.bin',
> > (PID.TID 0000.0001) > nSetRegMskFile=1,
> > (PID.TID 0000.0001) > set_regMask(1)= 1,  1,  1,
> > (PID.TID 0000.0001) > val_regMask(1)= 1., 2., 3.,
> > (PID.TID 0000.0001) >#---
> > (PID.TID 0000.0001) > stat_fields(1,1)= 'UVEL    ','THETA   ',
> > (PID.TID 0000.0001) >    stat_fname(1)= 'dynStDiag',
> > (PID.TID 0000.0001) >     stat_freq(1)= -600.,
> > (PID.TID 0000.0001) >
> > (PID.TID 0000.0001) > &
> > (PID.TID 0000.0001) >
> > (PID.TID 0000.0001) 
> > (PID.TID 0000.0001) S/R DIAGNOSTICS_READPARMS, read namelist "diagnostics_list": start
> > (PID.TID 0000.0001) S/R DIAGNOSTICS_READPARMS, read namelist "diagnostics_list": OK
> > (PID.TID 0000.0001) S/R DIAGNOSTICS_READPARMS, read namelist "DIAG_STATIS_PARMS": start
> > 
> > 
> > 
> >      
> > _______________________________________________
> > MITgcm-support mailing list
> > MITgcm-support at mitgcm.org
> > http://mitgcm.org/mailman/listinfo/mitgcm-support
> 
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support
> 
> 
> 
>      
> _______________________________________________
> MITgcm-support mailing list
> MITgcm-support at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-support

_______________________________________________
MITgcm-support mailing list
MITgcm-support at mitgcm.org
http://mitgcm.org/mailman/listinfo/mitgcm-support



      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mitgcm.org/pipermail/mitgcm-support/attachments/20090731/1f3de938/attachment.htm>


More information about the MITgcm-support mailing list