[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
20000504: utdec() error reading NCEP reanalysis data
- Subject: 20000504: utdec() error reading NCEP reanalysis data
- Date: Thu, 04 May 2000 08:43:15 -0600
Eunjoo,
>Date: Thu, 04 May 2000 12:30:00 +1000
>From: Eunjoo Jung <address@hidden>
>Organization: School of Mathematics UNSW
>To: Steve Emmerson <address@hidden>
>Subject: Re: 20000503: utdec() error reading NCEP reanalysis data
>Keywords: 200005030232.e432WhG20618
In the above message, you wrote:
> Thank you for your prompt reply.
> I modified "the readgeneral.f " to compile and link it.
> the modifications are
>
> 1)paths of "udunits.inc","netcdf.inc"
> 2)the expressions including like this " if(filename.eq.'') " --->
> if(filename.eq.' ')
> because it couldn't be compiled without these modifications
>
> the error happened in "utdec" routine.
> two arugtiments of utdec function are,
>
> timeunit : hours since 1-1-1 00:00:0.0
> unitptr : 1073932352
>
> the debugging results is,
> ---------------------------------------------------------------------
> signal Segmentation fault at >*[utClear, 0x12003c890] stl r31, 16(r16)
> (dbx) where
> > 0 utClear(0x3ff81a7a098, 0x14002fd00, 0x3ff81a4fbcc, 0x14002fd00,
> 0x12003d774) [0x12003c890]
> 1 (unknown)() [0x12003d7cc]
> 2 utScan(0x0, 0x8000000, 0x12003e310, 0x14002e870, 0x400069104002e840)
> [0x12003e1c4]
> 3 utdec(0x380ff00, 0x140010e20, 0x11fffed2c, 0x14002e870, 0x1b)
> [0x12003e30c]
> 4 udparse(0x1400068c4, 0x100000003, 0x100000003, 0x8, 0x120008540)
> ["read.f":617, 0x12000d2ac]
> 5 timeindex(0x1400490c8, 0x140057b08, 0x14000db80, 0x14002fd00, 0x3)
> ["read.f":287, 0x12000bed8]
> 6 read$main(0x100000000, 0x201e, 0x12000b2f0, 0x0, 0x1) ["read.f":43,
> 0x12000b48c]
> 7 main() ["for_main.c":203, 0x12000b304]
> (dbx)
> --------------------------------------------------------------------
A segmentation fault usually indicates an attempt to access an invalid
memory location. I would guess that one of the arguments to the utdec
routine is invalid. One possibility is that the "PTR unit" argument
wasn't set by a call to the utmake() routine. A more likely possibility
is that the primitive data type defined by the PTR macro isn't capacious
enough to hold a pointer.
The macro PTR is defined in the file lib/udunits.inc, which is installed
in the include/ installation-directory. On a Dec Alpha, it should be
defined as an "unsigned long". Verify that it is.
> I am using fortran77 under dec alpha OSF1.
> I will very appreciate if you give ma advice about that.
The UDUNITS package is known to work on Dec Alphas.
Regards,
Steve Emmerson <http://www.unidata.ucar.edu>