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.
>From: Eirh-Yu Hsie <address@hidden> >Organization: Aeronomy Laboratory/NOAA/DOC >Keywords: 200204052006.g35K6ca26173 McIDAS-XCD DMSFC Hsie, >The surfece decoder DMSFC in my new server (rainbow.al.noaa.gov, RedHat >Linux 7.2 system) is not working properly. It fires up and dies >immediately. I need your help to take a look at it. I logged onto rainbow yesterday afternoon and examined where dmsfc.k was failing. As a side comment, and mainly for the email archives, you do this by: <login as 'mcidas'> cd workdata <- linux/workdata in your case mcenv <- start a mini-McIDAS session ucu.k POKE 142 0 <- allows McIDAS routines to produce core files dmsfc.k <- failed and dumped core exit <- exit the mini-McIDAS session cd ~/mcidas7.8/src gdb dmsfc.k ~/workdata/core <- ~/linux/workdata/core in your case This won't tell one much unless dmsfc.k was compiled with the debug flag, -g, set (DEBUG=-g in makefile) and stripping turned off (STRIP= in makefile). Once I did this, I found that the routine was getting a floating point exception in a 'mod' call: "m0dcdsfc.for" line 4259: speed = float(mod(value,spdmod)) dir = value / spdmod It seems that spdmod was zero, and mod was failing. Since this doesn't seem to happen with code built with gcc/f2c, I have to wonder about the code generated with g77. Even if the mod routine didn't dump core, the next line would cause a floating point exception (divide by zero). I modified the code to: if ( spdmod .ne. 0 ) then ! <<<<< UPC mod 20030405 >>>>> speed = float(mod(value,spdmod)) dir = value / spdmod else goto 100 endif and rebuilt and reinstalled dmsfc.k. Since it started running correctly immediately after doing this, I am satisfied that the fix was the right approach. (Again, most of these comments are designed for the inquiry tracking system.) Tom