Multi-level Station Data

Brian Reen snincr at YAHOO.COM
Mon Aug 29 13:55:43 EDT 2005


Mahakur,
Thank you for your response but in this case I am
working with (in contrast to the simple test code I
posted earlier) a dataset in which the vertical levels
vary depending upon the station.  Because of this I
cannot use the ZDEF line in the .ctl (which is
consistent with the lack of a ZDEF line in the .ctl
seen in the documentation for multiple-level station
data).

I did try to use your example in my test code (that I
included in my original message) but got the same
results when I attempted to print the station names as
with my original test code.  I'm not very familiar
with station data so, as mentioned in an earlier
email, I have used a sequence of commands I believe I
found on this list to test whether multiple-level
station data exists.  Perhaps I am not using the
correct procedure to determine whether multiple-level
station data exists.  I issued the commands, 'set
gxout stat', 'set stnprint on', and 'd a' (where 'a'
is the variable name), and find that as with my
original tests, the names of the variables are not
output.

Thanks,
Brian Reen

--- "M. Mahakur" <mmahakur at MAIL.TROPMET.RES.IN> wrote:

> Hello Random:
>
> Once I had plotted the station data having several
> (21) pressure levels
> (plevel) using GrADS. Below is a part of the FORTRAN
> code, which works.
>
>        nlevel=1
>         nflag=0
>         time=0.0
>         plevel=levs(jlev)
>         do k=1,ns             ! No. of Stations
>
> write(99)stn_name,slt(k),sln(k),time,nlevel,nflag
>            write(99)plevel,var(1),var(2),...
>         end do
>
>
>
>        nlevel=0
>
> write(99)stn_name,slt(ns),sln(ns),time,nlevel,nflag
>
> And in the ctl :
>
> zdef 21 levels 1000 950 900 850 800 750 700 650 600
> 550 500 450 400 350
> 300 250 200 175 150 125 100
>
> Hope it will serve your purpose. I also did not
> found online
> documentations or in the listerv at that time.
>
> With Regards,
>
> Mahakur
>
> Random Person wrote:
>
> >GrADS Users,
> >I cannot seem to figure out how to properly use
> >multi-level station data in GrADS.  I've read all I
> >can find in the listserv archive and have not yet
> >found something that seems to solve my problem.
> I'm
> >able to create single-level station files and
> interact
> >with them in GrADS.  I can also create station
> files
> >with both single-level and multi-level variables
> and
> >interact with any of the single-level variables but
> I
> >cannot interact with the multi-level variables. I'm
> >not sure if my problem is that I'm not properly
> >interacting with the multi-level variables or if
> I'm
> >not properly writing the multi-level variables to
> the
> >data file in the first place.
> >
> >Based on an example I found in the listserv
> archive,
> >to test if the multi-level variables are recognized
> by
> >GrADS I issue the following commands:
> >set gxout stat
> >set stnprint on
> >d a
> >where 'a' is the name of the multilevel variable.
> >This results in the following output:
> >
> >Data Type = station
> >Dimensions = 0 1
> >I Dimension = 0 to 360
> >J Dimension = -90 to 90
> >Stn count = 0
> >Undef value = -999
> >Undef count = 0  Valid count = 0
> >Min, Max = -999 -999
> >Cmin, cmax, cint = -1004 -994 1
> >Stats[sum,sumsqr,root(sumsqr),n]:     0 0 0 0
> >Stats[(sum,sumsqr,root(sumsqr))/n)]:     0 0 0
> >Stats[(sum,sumsqr,root(sumsqr))/(n-1))]: 0 0 0
> >Stats[(sigma,var)(n)]:     0 0
> >Stats[(sigma,var)(n-1)]:   0 0
> >Printing station values:  #obs = 1
> >OB    ID       LON      LAT      LEV      VAL
> >
> >I assume this means that it cannot 'see' the
> >multi-level data since when I issue
> >a similar set a commands for a single-level
> variable
> >it lists output that ends with the ob ID's, lon,
> lat,
> >level, and value.  Assuming that this is a valid
> >way to test that a multi-level variable is 'seen'
> by
> >GrADS, it would seem that I have not correctly
> created
> >the data file or ctl file.
> >
> >The version of GrADS I'm using is v1.9b4 (the
> >Intel/LinuxRHE3 binaries).
> >
> >I created the data file with the following Fortran
> 90
> >code:
> >*******************************************
> >PROGRAM TESTCASE
> >   IMPLICIT NONE
> >   integer :: outunit = 12 !Output file unit
> >   character(len=8) :: stationid !Station
> identifier
> >for grads file
> >   real :: lat,lon !Latitude, longitude
> >   real :: timeshift !Time shift of this ob
> >   integer :: nlev !Number of vertical layers (+1
> if
> >flag==1)
> >   integer :: flag !Is there sfc-only data
> >   real :: height !Height of ob
> >   real :: ob !Observed value
> >
> >
> >   !Open the output file
> >
>
>open(outunit,file='testcase.dat',status='replace',action='write',&
> >    form='unformatted',access='sequential')
> >
> >   write(stationid,'I8'),1
> >   lat = 45.0
> >   lon = 35.0
> >   timeshift = 0.0
> >   nlev = 2
> >   flag = 0
> >
> >   !Write header
> >
>
>write(outunit),stationid,lat,lon,timeshift,nlev,flag
> >
> >
> >   !Write data for first layer
> >   height = 15.0
> >   ob = 12.0
> >   write(outunit),height,ob
> >
> >   !Write data for second layer
> >   height = 25.0
> >   ob = 22.0
> >   write(outunit),height,ob
> >
> >   !Write time terminator
> >   write(outunit),'TIMETERM',0.0,0.0,0.0,0,0
> >
> >   close(outunit)
> >
> >END PROGRAM TESTCASE
> >*******************************************
> >
> >My ctl file is as follows:
> >*******************************************
> >DSET   ^testcase.dat
> >DTYPE  station
> >STNMAP testcase.map
> >UNDEF  -999.0
> >TITLE  Test Data
> >OPTIONS sequential
> >TDEF    1 linear 00:00Z01may2002 01mn
> >VARS    1
> >a 1 99 no description
> >ENDVARS
> >*******************************************
> >
> >For simplicity, this test case is basically a
> single
> >variable at a single time with two levels.
> >Running stnmap I get the following result:
> >*******************************************
> >  Name of binary data set: testcase.dat
> >  Number of times in the data set: 1
> >  Number of surface variables: 0
> >  Number of level dependent variables: 1
> >
> >Starting scan of station data binary file.
> >Binary data file open: testcase.dat
> >Processing time = 1
> >  ID,LON,LAT,T,NLEV,FLAG:        1 35 45 0 2 0
> SIZE =
> >44
> >  ID,LON,LAT,T,NLEV,FLAG: TIMETERM 0 0 0 0 0  SIZE
> =
> >28
> >     Time = 1 has stn count = 1
> >  Max reports per time:  1 reports at t = 1
> >  Max data elements in largest report: 4
> >
> >Version 2 Station map file created: testcase.map
> >
> >stnmap: WARNING!!  This stnmap file can only be
> >accessed by GrADS Version 1.9b4
>
=== message truncated ===




____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs



More information about the gradsusr mailing list