This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Ben, >Date: Tue, 24 Feb 2004 11:25:32 -0600 >From: Ben Howell <address@hidden> >Organization: University of Wisconsin, Madison/SSEC >To: Steve Emmerson <address@hidden> >Subject: Re: 20040224: Hyperslab I/O of Varying Size: use of IMAP argument > Keywords: 200402181846.i1IIkk2N001457 The above message contained the following: > I think you have pointed out the real problem, i.e. the definition of > "slat". > I think that I need to use "nf_get_varm_real" to read the 2-dimensional > array > "dlat"(1200 x 600) instead of the "call ncvgt(...)". > > Here's what I tried, but "nf_get_varm_real" returned a bad status and > the program stopped: > START(1)=1 > COUNT(1)=NLONS ! NLONS=600 > START(2)=1 > COUNT(2)=NLATS ! NLATS=250 > IMAP(1)=MAXELEMS ! MAXELEMS=1200 > > C ... 24FEB04, as suggested by Steve Emmerson(Unidata): > IMAP(2)=1 ! element count between 2nd index increments > > C ... 23FEB04: > IRET=NF_GET_VARM_REAL(IDCDF,IDLAT,START,COUNT, > * STRIDE,IMAP,DLAT) > > ccccc call NCVGT(IDCDF, idlat, start, count, dlat, IRET) > if(IRET.ne.0)stop 'Error getting dlat' I need to back-up. Looking over your code is just confusing me. Please send me the output from an "ncdump -h" of the netCDF from which your program reads the "slat" values. Regards, Steve Emmerson