This README file contains a description of the Special Sensor Microwave/Imager (SSM/I) Monthly and Pentad Precipitation data set, including information on the file structure, pertinent scientific references, tools for reading the data, and contact information for obtaining the data. This data set is one of the NOAA/NASA Pathfinder Program products. The data set currently includes precipitation estimates over both land and ocean derived from the SSM/I instrument flown aboard the Defense Meteorological Satellite Program (DMSP) F-8 platform. The precipitation rate is also referred to as the rain rate.
The distribution of this data set is being funded by NASA's Earth Science Enterprise program. The data are not copyrighted; however, we request that when you publish data or results using these data please acknowledge as follows:
The authors wish to thank the Distributed Active Archive Center (Code 610.2) at Goddard Space Flight Center, Greenbelt, MD, 20771, for distributing the data; and the science investigators Drs. Robert Adler and George Huffman, Code 912, NASA Goddard Space Flight Center, Greenbelt, Maryland 20771, and Mr. Michael Goodman, NASA Marshall Space Flight Center, Huntsville, Alabama 35806 for producing these data products. Goddard's contribution to these activities were sponsored by NASA's Mission to Planet Earth program.
Instantaneous global (over land and ocean) precipitation rates are calculated using the Goddard Scattering Algorithm, Version 2 documented in Adler et al. (1991, 1993, 1994). The 19 GHz horizontal and vertical, 22 GHz vertical, and 37 GHz horizontal antenna temperatures are interpolated to the higher resolution of the 85 GHz horizontal channel. These temperatures and the 85GHz horizontal temperatures are subjected to a discrimination process in which each pixel is tested for the presence of precipitation or no precipitation. At pixels with precipitation, the precipitation rates are calculated using a numerical model-based regression equation.
Valid daily Pathfinder precipitation rates were weighted to account for the changes in the overlap of the pixel scenes depending on the location within the scan. The weights are a function of latitude and are recalculated about every 36 degrees (.1 Orbit). The weighted values were binned into 1 degree longitude and latitude rectangles for either 5 days or a month, and an average precipitation rate for the bin was then calculated. Counts of the ambiguous and/or cold surface pixels were kept, and if the number of the values within the bin exceeded a threshold, the pentad or monthly value for that bin was set to -20. The thresholds are 40% for the pentads and 20% for the monthlies. For a pentad, if the number of ambiguous or cold surface pixels is less than 40%, the precipitation rate for the bin is a weighted average of valid pixel precipitation rates; otherwise the bin value is set to -20. Bins in which no valid pixels are located are set to -10.
The daily data were grouped into a 1 degree longitude by 1 degree latitude array. The pixel precipitation rates were weighted using a scheme supplied by the algorithm developer; The array is 360 x 180 where the first dimension is longitude and the second is latitude. Array location (1,1) contains data between 180 and 179 degrees west longitude, and 89 and 90 degrees north latitude. Array location (2, 2) contains data for the 1 degrees square bounded by 179-178 degrees west longitude and 88-89 degrees north latitude. Data for each bin is accumulated for either 5 days (pentad) or one month, as appropriate.
Each pentad or monthly file contains the precipitation rate grid in mm/day*100 (PRG), the sum of the squared of the precipitation rates (SSQ), the number of valid daily precipitation rates within the bin (NUM), and a file description. The monthly file is similar to the pentad file. See the section Data Format for a description of the file structure.
The first pentad begins with January 1 and includes data through January 5. Each succeeding pentad is generated using 5 day increments. During leap year, the pentad beginning on February 26 contains 6 days, including February 29; therefore, the other pentads are consistent with non-leap year pentads. The monthly files include all available data in the month.
Some of pentad or monthly precipitation rates were not generated because of instrument or data problems. In addition, some pentads were constructed without the full complement of days. The anomalous monthly and pentad cases are summarized below:
1987 DMSP F8 Satellite:
The pentad for July 30 through August 3, 1987 was not generated because Pathfinder daily precipitation rate information began on August 1, 1987.
the pentad for the period October 3-7,1987 (87276-87280) has 1 day of data missing.
The December 1987 monthly file was not generated because the SSM/I instrument was turned off on December 3, 1987 due to overheating.
Pentads starting on Dec 2, 1987 (day 336) through December 31, 1987 were not generated for the same reason.
1988 DMSP F8 Satellite:
Pentads for the periods January 1- January 5, January 6-January 10, January 11 - January 15, 1988 were not generated because the instrument was not turned on until January 13, 1988.
The January 1988 monthly file was not generated.
The following pentads contained less than 5 days of data:
May 6-10,1988 (88127-88131) has 3 days of data missing.
September 23-27, 1988 (88267-88271) has 1 day of data missing.
December 22-26, 1988 (88357-88361) has 2 days of data missing.
December 27-31, 1988 (88362-88366) has 1 day of data missing.
The physical file characteristics for the monthly and pentad Pathfinder precipitation files are as follows:
0.8 MB (uncompressed) 0.3 MB (compressed)
0.8 MB (uncompressed) 0.2 MB (compressed)
Hierarchical Data Format (HDF)
Hierarchical Data Format (HDF)
YY is the 2 digit year (i.e., 87 or 88)
MMM is the 3 character month designator
DDD is the first day of a particular pentad
It should be noted that the data are actually distributed to users as compressed files using the standard Unix "compress" command; thus, the suffix ".Z" will be appended to the names of all files.
Data Format The files were created on a Silicon Graphics VGX class computer with version 3.3, release 4 of the HDF library. All files have been compressed with the IRIX UNIX compress command. The file size for an uncompressed file is 0.8 megabytes.
NOTE: All discussions in this text are for row major applications written in c. If you are using the HDF FORTRAN interface to read the HDF objects, the arrays will be transposed. For example, array A(5,3) in an HDF c interface would become A(3,5) in an HDF FORTRAN interface. This will apply to all HDF data array discussions in this text.
Each pentad or monthly precipitation rate file has the following contents (HDF objects):
HDF Object Type
HDF Ref. Number
Pentad (or Monthly) Precipitation Rate
Scientific Data Set
Sum of Squared Precipitation Rate
Scientific Data Set
Count of Valid Values
Scientific Data Set
The following table shows the flags used in the pentad and monthly precipitation rate objects.Valid calculated values are scaled before being stored. That is, the pentad or monthly precipitation rates are multiplied by 100.0 and then stored as integers; so to retrieve a pentad or monthly precipitation rate, you must divide the stored number by 100.0.
FLAG 1 = No precipitation rate data was accumulated in the bin.
FLAG 2 = For pentads, if more than 40% of the valid pixel precipitation values
in the bin were associated with the cold surfaces and/or identified as ambiguous,
the bin value is set to the -20. For monthly grids, a 20% threshold is used.
Each of the above objects can be extracted from the HDF file using special tools which the DAAC provides with the data. See Sample Software for instructions on how to get the HDF library and to compile and create these extraction utilities. The following sections provide further details on each of the HDF precipitation rate objects.
Pentad (Monthly) Precipitation Rate Grid (PRG):
This HDF object contains the pentad or monthly precipitation rate grid. The grid values are a weighted average of valid precipitation rate values multiplied by 100 before storing to retain a precision of 0.01 mm/day. For example, 31.51 mm/day is stored as 3151. The minimum value is 0, and the maximum unscaled value is 2400. Flagged values, shown above, are stored in locations where the precipitation rate could not/should not be calculated.
The array size of the grid is 360 x 180. Each value is stored as a 4 byte integer. The HDF data type used to store the precipitation rate is DFNT_INT32. It will be necessary to use this type in any software written to access the data. The HDF reference number is 2.
Sum of the Squared Precipitation Rates (SSQ):
This object contains a grid of the sum of the squared precipitation rate values which are included in each bin of the grid. Daily valid precipitation rates within a bin for the specified number of days were squared and summed. These individual values are not weighted when squared and summed, unlike the computation of the precipitation values in the PRG object. However, as in the case of the PRG object, the reported value of the sum of the squared precipitation rates for each grid cell is scaled by 100 for improved precision.
The array size is 360 x 180. The data are stored as a 4-byte integers and HDF data type DFNT_INT32. The HDF reference number is 3.
Number of Pixels per Bin (NUM):
This object contains the number of precipitation rate pixels which have been grouped into each bin in the PRG object; only valid precipitation rate values ( i.e., no flag values) are counted. The daily precipitation rate pixels are counted in each bin for the specified number of days and stored in this object.
The array size is 360 x 180. The values are stored as 4-byte integers and HDF data type DFNT_INT32. The HDF reference number is 4.
HDF File Annotation:
This object is an ASCII description of the pentad or monthly PR grid file. The description can be read with the program supplied getfiledesc, after you compile it with the HDF library. The HDF object reference number is 5.
An example of a file description is:
SSM/I GSCAT2 Precipitation Rates
File ID = Precip.pen_87241_87245.hdf
This is a LEVEL 3 product.
This product is a 5-day composite grid,
including Julian day 87241
through Julian day 87245.
This grid includes 5 days of data.
The grid is a 1-degree by 1-degree
longitude/latitude grid; grid location
(1,1), in the upper left corner, is
located at 90 deg N latitude, 180 deg
longitude. The gridbox covers 1 degree
(90-89 N, 180-179 W) from that location.
SSM/I PATHFINDER Software Version Number 1.0
MSFC File Structure Version Number 1.0
HDF Version Number 3.3, Release 3
MSFC Tool Set Version Numbers:
This product was produced by
NASA Marshall Space Flight Center.
For more information on the
technical content please contact
Marshall Space Flight Center:
Earth Observing System - Distributed
Active Archive Center User Services;
Phone: 205-922-5932, or via e-mail
Please note that these files were generated and archived at MSFC. Recently the SSM/I Pathfinder precipitation data set was moved to the Goddard DAAC. The file description written into the HDF annotation for each file has not been updated for the new point of contact and User Services email address, since it is anticipated that this data set will be replaced with a new version produced at GSFC by Drs. Adler and Huffman.
Three C programs are included with this distribution. They are extractrg.f, getfiledesc.c, and read_bin.c. All three run on the Silicon Graphics but should port easily to other platforms. A makefile, named Make.pr_3, is included with the distribution. It can be used to compile the first two HDF read programs on a UNIX platform. You must have the HDF library (HDF3.3r3 or higher) installed on your system before attempting to run this makefile. Information and instructions on how to obtain this library can be found on the Goddard DAAC HDF Information Page.
After making changes to the directory paths and flags in Make.pr_3, use the following UNIX command to run the makefile program:
make -f Make.pr_3 all clean
This will compile both programs, delete the object modules, and produce the following two executables:
extractrg and getfiledesc
The executable program for read_bin.c (i.e., read_bin) can be obtained simply by using the following command:
cc read_bin.c -o read_bin
extractrg The program, extractrg.c, extracts an HDF object from the pentad or monthly file. It produces a new HDF file with the name of the HDF object selected. The format for using the utility is:
will produce a file call PRG_pen.88272. Run the program with no arguments, and it will list all of the options as shown below:
Sum of Squared Precipitation Rates
Number of Pixels in Bin
where SDS is Scientific Data Set and INT32 is a 32 bit integer. Use the 3-letter parameter code when selecting an object to extract. You may select several codes at once, separated by a space.
getfiledesc The getfiledesc program prints the text of the HDF annotation contained in the pentad or monthly file. Its usage is:
getfiledesc < Pentad or Monthly HDF filename >
The result should look like the example HDF file annotation dump presented earlier.
read_bin The read_bin program reads the contents of the flat binary files created using the extractrg utility. The result will be an ascii dump to the user's screen latitude by latitude. Usage is as follows:
read_bin < single parameter binary filename >
where the binary filename is, for example, PRG_pen.88272.
Adler, Robert F., H.-Y. M. Yeh, N. Prasad, W.-K. Tao and J. Simpson, 1991, Microwave Simulations of a Tropical Rainfall System with a Three-Dimensional Cloud Model, Journal of Applied Meteorology, vol. 30, pp. 924-953.
Adler, Robert F., A. J. Negri, P. R. Keehn, and I. M. Hakkarinen, 1993, Estimation of Monthly Rainfall over Japan and Surrounding Waters From A Combination of Low-orbit Microwave and Geosynchronous IR Data, Journal of Applied Meteorology, vol. 32, pp. 335-356.
Adler, Robert F., G. J. Huffman, and P. R. Keehn, 1994, Global Tropical Rain Estimates From Microwave-adjusted and Geosynchronous IR Data, Remote Sensing Reviews.