[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20000504: utdec() error reading NCEP reanalysis data


>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.

Steve Emmerson   <http://www.unidata.ucar.edu>

NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.