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

[McIDAS #YBA-424649]: mcidas question



Hi Randy,

re: REMAP2-created AREA files on Solaris 5.11 and CentOS 5.5 x86_64
> sure. here they are.
> note, these are really small 1km all 5 bands, remap2 files near Hawaii.

Thanks.

I think that there is a good clue in these files that will help you figure
out where the execution of the code on the different OSes differs.

In order to compare the AREA files you sent, I did the following:

AREA9107_Solaris  -> $MCDATA/AREA9107
AREA9107_CentosOS -> $MCDATA/AREA9108

Next, I listed out the header values in the two AREA files using LWU:

First the AREA created on Solaris:

LWU LIST AREA9107 0 100
       0.          0           4 HEX:        0        4 ASCII:
       2.        184      112144 HEX:       B8    1B610 ASCII:
       4.      20000           1 HEX:     4E20        1 ASCII:  N
       6.          1           0 HEX:        1        0 ASCII:
       8.        334         112 HEX:      14E       70 ASCII: N    p
      10.          2           1 HEX:        2        1 ASCII:
      12.          1           5 HEX:        1        5 ASCII:
      14.          8           0 HEX:        8        0 ASCII:
      16.     112144      175351 HEX:    1B610    2ACF7 ASCII:
      18.         47           0 HEX:       2F        0 ASCII: /
      20.          0           0 HEX:        0        0 ASCII:
      22.          0           0 HEX:        0        0 ASCII:
      24. 1193301074     5390678 HEX: 47205452   524156 ASCII: RT G VAR
      26.          0           0 HEX:        0        0 ASCII:
      28.          0           0 HEX:        0        0 ASCII:
      30.          0           0 HEX:        0        0 ASCII:
      32.       9100        3328 HEX:     238C      D00 ASCII:  #
      34.        256           0 HEX:      100        0 ASCII:
      36.          0           0 HEX:        0        0 ASCII:
      38.          0           0 HEX:        0        0 ASCII:
      40.          0           0 HEX:        0        0 ASCII:
      42.          0           0 HEX:        0        0 ASCII:
      44.          0      112144 HEX:        0    1B610 ASCII:
      46.      20020         311 HEX:     4E34      137 ASCII: 4N   7
      48.          0           0 HEX:        0        0 ASCII:
      50.          8  1380013639 HEX:        8 52415647 ASCII:      GVAR
      52.  542589266           2 HEX: 20574152        2 ASCII: RAW
      54.          0           0 HEX:        0        0 ASCII:
      56. 1380013639   538976288 HEX: 52415647 20202020 ASCII: GVAR
      58.          1           0 HEX:        1        0 ASCII:
      60.          0           0 HEX:        0        0 ASCII:
      62.       2816           2 HEX:      B00        2 ASCII:
      64. 1413694802         167 HEX: 54434552       A7 ASCII: RECT
      66.     225060          56 HEX:    36F24       38 ASCII: $o   8
      68.    1565050          90 HEX:   17E17A       5A ASCII: z    Z
      70.         90     6378388 HEX:       5A   615394 ASCII: Z     Sa
      72.      81999           0 HEX:    1404F        0 ASCII: O@
      74.          0           0 HEX:        0        0 ASCII:
      76. 1948283753  1931505519 HEX: 74207369 73206F6F ASCII: is t oo s
      78. 1819042157           0 HEX: 6C6C616D        0 ASCII: mall
      80.          0           0 HEX:        0        0 ASCII:
      82.          0           0 HEX:        0        0 ASCII:
      84.          1           1 HEX:        1        1 ASCII:
      86.        334         112 HEX:      14E       70 ASCII: N    p
      88.          0           0 HEX:        0        0 ASCII:
      90.          0           0 HEX:        0        0 ASCII:
      92.          0           0 HEX:        0        0 ASCII:
      94.          0           0 HEX:        0        0 ASCII:
      96. 1948283753  1646292847 HEX: 74207369 62206F6F ASCII: is t oo b
      98.      26473           0 HEX:     6769        0 ASCII: ig
     100.          0           0 HEX:        0        0 ASCII:
 --END OF LISTING

Next, the AREA created on CentOS:

LWU LIST AREA9108 0 100
       0.          0           4 HEX:        0        4 ASCII:
       2.        184      112144 HEX:       B8    1B610 ASCII:
       4.      20000           1 HEX:     4E20        1 ASCII:  N
       6.          1           0 HEX:        1        0 ASCII:
       8.        334         112 HEX:      14E       70 ASCII: N    p
      10.          2           1 HEX:        2        1 ASCII:
      12.          1           5 HEX:        1        5 ASCII:
      14.          8           0 HEX:        8        0 ASCII:
      16.     112144      174449 HEX:    1B610    2A971 ASCII:      q
      18.         47           0 HEX:       2F        0 ASCII: /
      20.          0           0 HEX:        0        0 ASCII:
      22.          0           0 HEX:        0        0 ASCII:
      24. 1193301074     5390678 HEX: 47205452   524156 ASCII: RT G VAR
      26.          0           0 HEX:        0        0 ASCII:
      28.          0           0 HEX:        0        0 ASCII:
      30.          0           0 HEX:        0        0 ASCII:
      32.       9100        3328 HEX:     238C      D00 ASCII:  #
      34.        256           0 HEX:      100        0 ASCII:
      36.          0           0 HEX:        0        0 ASCII:
      38.          0           0 HEX:        0        0 ASCII:
      40.          0           0 HEX:        0        0 ASCII:
      42.          0           0 HEX:        0        0 ASCII:
      44.          0      112144 HEX:        0    1B610 ASCII:
      46.      20020         311 HEX:     4E34      137 ASCII: 4N   7
      48.          0           0 HEX:        0        0 ASCII:
      50.          8  1380013639 HEX:        8 52415647 ASCII:      GVAR
      52.  542589266           2 HEX: 20574152        2 ASCII: RAW
      54.          0           0 HEX:        0        0 ASCII:
      56. 1380013639   538976288 HEX: 52415647 20202020 ASCII: GVAR
      58.          1           0 HEX:        1        0 ASCII:
      60.          0           0 HEX:        0        0 ASCII:
      62.       2816           2 HEX:      B00        2 ASCII:
      64. 1413694802         167 HEX: 54434552       A7 ASCII: RECT
      66.     225060          56 HEX:    36F24       38 ASCII: $o   8
      68.    1565050          90 HEX:   17E17A       5A ASCII: z    Z
      70.         90     6378388 HEX:       5A   615394 ASCII: Z     Sa
      72.      81999           0 HEX:    1404F        0 ASCII: O@
      74.          0           0 HEX:        0        0 ASCII:
      76.          0           0 HEX:        0        0 ASCII:
      78.          0           0 HEX:        0        0 ASCII:
      80.          0           0 HEX:        0        0 ASCII:
      82.          0           0 HEX:        0        0 ASCII:
      84.          1           1 HEX:        1        1 ASCII:
      86.        334         112 HEX:      14E       70 ASCII: N    p
      88.          0           0 HEX:        0        0 ASCII:
      90.          0           0 HEX:        0        0 ASCII:
      92.          0           0 HEX:        0        0 ASCII:
      94.          0           0 HEX:        0        0 ASCII:
      96.          0           0 HEX:        0        0 ASCII:
      98.          0           0 HEX:        0        0 ASCII:
     100.          0           0 HEX:        0        0 ASCII:
 --END OF LISTING

Notice that the listings are identical EXCEPT for words 76-78 and
96-98, inclusive.  Something in your code is writing "is too small"
and "is too big" into the AREA file header created on Solaris.

I did a 'grep' for "is too small" in all C files in the Unidata
McIDAS-X distribution, and I found three occurrences; I am
guessing that the operative ones are in argerror.c and
m0navget.c:

argerror.c:

/* Define messages for standard arg-fetching error reasons,
   corresponding to the following nnnX statuses:
   nnn[1]       nnn[2]      nnn[3]       nnn[4]  nnn[5]
   ARG_INVALID, ARG_INVDEC, ARG_ILLEGAL, ARG_LT, ARG_GT                       */

   char    why[10][80]  = {
      "",                                                                /* 0 */
      "has invalid xxxxxxx form",                                        /* 1 */
      "can't have a fraction",                                           /* 2 */
      "exceeds system limits",                                           /* 3 */
      "is too small",                                                    /* 4 */
      "is too big",                                                      /* 5 */
      "",                                                                /* 6 */
      "",                                                                /* 7 */
      "",                                                                /* 8 */
      ""                                                                 /* 9 */
   };

m0navget.c:

        istat  = M0swbytnav( mxwds, navblock );
        if( istat < 0 ) {
                Mcdprintf("M0ReadNavBlock() internal error:\n");
                Mcdprintf("Passed %d words to M0swbytnav(), and\n", mxwds);
                Mcdprintf("it says that this is too small.\n");
                Mcdprintf("Programmer must enlarge buffer in caller of "
                  "M0ReadNavBlock() or m0nvblk()\n");
                return BAD_NAVBLOCK_LEN;
        }

Here is how I would proceed:

- rerun the REMAP2 invocation on both OSes, but this time specify the DEV=CCC
  keyword so that debug messages will be printed (Mcdprintf is a debug print
  statement)

  This may (or may not) give you enough clues to track down the
  discrepancy.

Comment:

- it is VERY interesting that if you change the "is too small" and
  "is too big" values in the AREA header values   created under Solaris,
  the IMGLIST listing becomes identical to that for the AREA created under
  CentOS:

  LWU COPY AREA9107 AREA9106

  LWU POKE AREA9106 0 76
   Value was:   1948283753 HEX:     74207369 ASCII: is t
 
  LWU POKE AREA9106 0 77
   Value was:   1931505519 HEX:     73206F6F ASCII: oo s
 
  LWU POKE AREA9106 0 78
   Value was:   1819042157 HEX:     6C6C616D ASCII: mall
 
  LWU POKE AREA9106 0 96
   Value was:   1948283753 HEX:     74207369 ASCII: is t
 
  LWU POKE AREA9106 0 97
   Value was:   1646292847 HEX:     62206F6F ASCII: oo b
 
  LWU POKE AREA9106 0 98
   Value was:        26473 HEX:         6769 ASCII: ig

  IMGLIST MYDATA/IMAGES.9106 FORM=ALL
  Image file directory listing for:MYDATA/IMAGES
   Pos Satellite/         Date       Time      Center      Res (km)   Image_Size
       sensor                                 Lat  Lon    Lat   Lon
   --- -------------  ------------  --------  ---- ----  ----- ----- 
------------
  9106  G-15 IMG      23 MAY 12144  02:00:00    22  156
     Band: 1    0.62 um VIS Cloud and Surface Features    1.00  0.92   334 x  
112
     Band: 2    3.9 um IR Low Cloud/Fog,Fire Detection    1.00  0.92   334 x  
112
     Band: 3    6.5 um IR Mid-level Water Vapor           1.00  0.92   334 x  
112
     Band: 4    10.7 um IR Surface/Cloud-top Temp         1.00  0.92   334 x  
112
     Band: 6    13.3 um IR CO2, Cloud Heights             1.00  0.92   334 x  
112
       proj:    0 created: 2012144 175351  memo: RT GVAR
       type:GVAR     cal type:RAW
       offsets:  data=    3328 navigation=  256 calibration= 2816 auxiliary=    0
       doc length:   0   cal length:   0   lev length:   8 PREFIX=   8
       valcod:          0 zcor:  0 avg-smp: N
       start yyddd: 2012144  start time: 20020  start scan:  311
       lcor:    1  ecor:     1  bytes per pixel: 2  ss:184
       Resolution Factors (base=1):   Line=    1.0   Element=    1.0
  IMGLIST: done

Please let me know what you find...

Cheers,

Tom
--
****************************************************************************
Unidata User Support                                    UCAR Unidata Program
(303) 497-8642                                                 P.O. Box 3000
address@hidden                                   Boulder, CO 80307
----------------------------------------------------------------------------
Unidata HomePage                       http://www.unidata.ucar.edu
****************************************************************************


Ticket Details
===================
Ticket ID: YBA-424649
Department: Support McIDAS
Priority: Normal
Status: Closed