[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
19991026: Fkey menu GRID items and XCD decoding of GRIDded data (cont.)
- Subject: 19991026: Fkey menu GRID items and XCD decoding of GRIDded data (cont.)
- Date: Wed, 27 Oct 1999 13:39:49 -0600
>From: Myron Kowalski <address@hidden>
>Organization: Moravian College
>Keywords: 199910262043.OAA26544 McIDAS Fkey
Myron,
>I ran
>sh ./uwgrid.sh NG
>sh ./uwgrid.sh NF
>
>and two grid file were created
>-rw-rw-r-- 1 mcidas unidata 2444 Oct 27 14:27 GRID0001
>-rw-rw-r-- 1 mcidas unidata 2444 Oct 27 14:14 GRID0101
>
>I got the new UNIMENU.DEF file, but the F3 still gives me
>String not found: ?MODEL1
Did you:
o exit the menu
o update the strings in the string table as I indicated before:
TENTER UNIMENU.DEF
o restart the menu
I am guessing that you might have updated the strings but the menu
was still running. If this is the case, it had already read a
number of the strings that it needed on startup, so you needed to
exit and restart it.
>and the uwgrid.log doesn't look good for both runs.
>
>Starting uwgrid.sh NG at 1999300/182714
>PRODUCT CODE=NG 1999300 182714
>GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB
>NUM=ALL FHOU
>R=0 12 24 36 48 LEV=1000 850 700 500 250 PARAM=Z T U V
>Program terminated, segmentation violation
>GRDCOPY failed, RC=1
>GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB
>NUM=ALL FHOU
>R=12 24 36 LEV=SFC PARAM=PCP
>Program terminated, segmentation violation
>GRDCOPY failed, RC=1
>... etc.
The segmentation violation smacks of a Sun SC5.0 Fortran bug that we
have reported to Sun. To verify this, I:
o logged onto catwoman
o cd mcidas7.6/src
o f77 -c mcgget.for
ar r libmcida.a mcgget.o
make grdcopy.k grddisp.k
o retried running of uwgrid.sh:
cd ~/workdata
sh ./uwgrid.sh NG
more uwgrid.log
Starting uwgrid.sh NG at 1999300/192410
PRODUCT CODE=NG 1999300 192410
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=0 12 24 36 48 LEV=1000 850 700 500 250 PARAM=Z T U V
Total grids copied=100
GRDCOPY - done
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=12 24 36 LEV=SFC PARAM=PCP
Total grids copied=3
GRDCOPY - done
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=0 12 24 36 48 LEV=MSL PARAM=P
Total grids copied=5
GRDCOPY - done
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=6 12 24 36 LEV=700 PARAM=W
Total grids copied=4
GRDCOPY - done
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=0 12 24 36 48 LEV=500 PARAM=LI
Total grids copied=5
GRDCOPY - done
GRDCOPY RTGRIDS/NGM MYDATA/GRIDS.9999 DAY=1999300 TIME=12 GPRO=LAMB NUM=ALL FHOU
R=0 6 12 24 LEV=850 PARAM=RH
Total grids copied=4
GRDCOPY - done
...
sh ./uwgrid.sh NF
...
So, you were running into the Sun SC5.0 Fortran bug. The routines that I
have found that don't work because of this bug are: grddisp.k, grdcopy.k
(both related to the compiling of mcgget.for) and ptlist.k (related
to the compiling of ptlist.pgm). I remade all of these routines with
optimization turned off. The procedure for gridisp.k and grdcopy.k I
showed above. The procedure for ptlist.k is:
cd mcidas7.6/src
./mccomp -vendor -I. -I../netcdf/libsrc -c ptlist.pgm
./mccomp -s -vendor -o ptlist.k main.o ptlist.o -L. -lmcidas
The running of uwgrid.sh verified that the new copy of grdcopy.k is OK.
I verified that the new copy of ptlist.k was OK as follows:
cd ~/workdata
ptlist.k RTPTSRC/SFCHOURLY
Row : 1 Col : 1
TYPE = 0 | DAY = 1999300 CYD |
TIME = 0 HMS | NREC = 2428 |
ID = NZCM | LAT = -77.8666 DEG |
LON = -166.9666 DEG | ZS = 8 M |
ST = _missing_ | CO = US |
MOD = 0 | HMS = 235500 HMS |
CIGC = _missing_ | CC1 = 0 |
CC2 = _missing_ | CIGH = _missing_ |
ZCL1 = _missing_ | ZCL2 = _missing_ |
VIS = 7.0 MI | WX1 = _missing_ |
WX2 = _missing_ | T = 254.16 K |
TD = 245.16 K | DIR = 320 DEG |
SPD = 1.0 MPS | GUS = _missing_ |
PSL = 973.58 MB | PCP = _missing_ |
SNO = _missing_ | PRE = _missing_ |
P24 = _missing_ | WXC1 = _missing_ |
WXC2 = _missing_ | WXC3 = _missing_ |
WXC4 = _missing_ |
---------------------------------------------------------------------------
Number of matches found = 1
ptlist.k: Done
If you experience other routines that give segmentation violations, it
is likely that the culprit is the SC5.0 Fortran compiler. At this point,
I would edit the McIDAS makefile and remove the optimization flag:
cd mcidas7.6
<edit makefile and change>
DEBUG = -O
to
DEBUG =
I would then rebuild all of McIDAS:
make clobber
make all
make install.bin
Let's hope that Sun comes out with a bug fix for their Fortran compiler
soon!
Tom
--
+-----------------------------------------------------------------------------+
* Tom Yoksas UCAR Unidata Program *
* (303) 497-8642 (last resort) P.O. Box 3000 *
* address@hidden Boulder, CO 80307 *
* Unidata WWW Service http://www.unidata.ucar.edu/*
+-----------------------------------------------------------------------------+