[Gdal-dev] Reading GPCP rainfall data?

Frank Warmerdam warmerdam at pobox.com
Tue Jul 11 13:25:06 EDT 2006


Markus Neteler wrote:
> Hi,
> 
> I would be very interested to read these data sets
> 
>  Global Daily Merged Precipitation Analyses of the GPCP 
>  http://precip.gsfc.nasa.gov/
>  (see Daily Data at page bottom)
> 
> The Format is:
> http://precip.gsfc.nasa.gov/gpcp_daily_comb.html
> (at bottom)
> "The data set archive consists of unformatted REAL*4 binary files with ASCII headers. Each file holds 28-31 daily fields. Each file occupies about 8 MB. The grid on which each field of values is presented is a 1°x1° latitude--longitude (Cylindrical Equal Distance) global array of points. It is size 360x180, with X (longitude) incrementing most rapidly West to East from the Prime Meridian, and then Y (latitude) incrementing North to South. Whole- and half-degree values are at grid edges:
> 
> First point center = (89.5°N,0.5°E)
> Second point center = (89.5°N,1.5°E)
> Last point center = (89.5°S,0.5°W)
> 
> Missing values are denoted by the value -99999., and the units are mm/day. 
> "
> 
> Does anyone has experience? Or (cough) a script based on GDAL?

Markus,

I have attached a VRT that would reference one of these files.   You could
likely produce these from a template with filename substitution in a script
pretty easily.

Best regards,
-- 
---------------------------------------+--------------------------------------
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | President OSGF, http://osgeo.org

-------------- next part --------------
<VRTDataset rasterXSize="360" rasterYSize="180">
  <Geotransform>0,1,0,90, 0,-1</Geotransform>
  <SRS>WGS84</SRS>
  <VRTRasterBand dataType="Float32" band="1" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>1440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="2" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>260640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="3" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>519840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="4" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>779040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="5" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>1038240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="6" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>1297440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="7" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>1556640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="8" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>1815840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="9" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>2075040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="10" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>2334240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="11" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>2593440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="12" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>2852640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="13" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>3111840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="14" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>3371040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="15" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>3630240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="16" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>3889440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="17" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>4148640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="18" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>4407840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="19" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>4667040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="20" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>4926240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="21" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>5185440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="22" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>5444640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="23" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>5703840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="24" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>5963040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="25" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>6222240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="26" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>6481440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="27" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>6740640</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="28" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>6999840</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="29" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>7259040</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="30" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>7518240</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
  <VRTRasterBand dataType="Float32" band="31" subClass="VRTRawRasterBand">
    <SourceFilename relativeToVRT="1">gpcp_1dd_p1d.199610</SourceFilename>
    <ByteOrder>MSB</ByteOrder>
    <ImageOffset>7777440</ImageOffset>
    <PixelOffset>4</PixelOffset>
    <LineOffset>1440</LineOffset>
  </VRTRasterBand>
</VRTDataset>


More information about the Gdal-dev mailing list