The RMIB SEVIRI Archive

This page gives some practical information about the SEVIRI data received and archived at RMIB: data availability and how to read the XPIF format.

History

The reception and archive of SEVIRI data for MSG-1 started 28 of July 2003 (the 1st Sept. 2003 for the SEVIRI header and trailer). There was a lot of missing segments in the images up to 15 Nov. 2003 when the missing segments problem has been fixed. The 28 Oct.2003 was implemented a detection of missing segments and this information is available on the status pages (see after). Beginning of February 2004 the MSG-1 satellite entered operational phase.

Technical Note

The following technical note fully describes the MSG data reception, processing and archiving at RMIB:
   ftp://gerb.oma.be/Documents/msg_chain.pdf

Reception and Archiving Status

The current status of the near real time processing and distribution on our main server "stratus" is given on:
   http://gerb.oma.be/seviri/Status/timeliness.html
The daily status of the SEVIRI archive on the file server "tsunami" is available in:
   http://gerb.oma.be/seviri/Status/
   http://gerb.oma.be/seviri/Status/today.html
Monthly summaries of the archive are available at:
   http://gerb.oma.be/seviri/MonthlyStatus/monthlystat.html
Reports on SEVIRI data reception at:
   http://gerb.oma.be/seviri/Reports/report_seviri.html
   http://gerb.oma.be/seviri/Reports/bad_navigation.html
The not-empty EUMETSAT administration messages (ADMIN) and weekly scheduled interruptions are archived at:
  http://gerb.oma.be/seviri/NewsMsg_MET8/maillist.html
  http://gerb.oma.be/seviri/NewsMsg_WEEKLY/maillist.html
 
In case of problem it may be interesting to have a look at the following YAHOO Group of users of MSG data:
  http://groups.yahoo.com/group/MSG-1/messages/

Belgian area archive

To support the use of SEVIRI data by Belgian users, it has been decided to extract and separetely archive the SEVIRI data over a rectangular area surrounding the country. This data is stored on our file server 'tsunami' and is then easier to exploit. More details at:
   http://gerb.oma.be/seviri/Seviri_BEL/seviri_bel.html

Reading the XPIF format

The XPIF format is fully described in the following VCS document:
  http://rst.vcs.de/Downloads/RST-SW-REF-XPIF-1.5.pdf
Nevertheless, to read standard 3 km SEVIRI data (all except the HRV) you can simply skip the XPIF header which is 50944 bytes long and then you can read the 3712 lines of 3712 pixels of short integer data (2 bytes). If you use BIG_ENDIAN computer (like Silicon Graphics) you will have to byteswap the data (see hereafter a simple C program that performs the byteswapping). If you use standard PC no byteswapping is needed.

Getting the calibration in the XPIF file

The gain and the offset are available in the XPIF header as double precision floating point data (8 bytes) starting at bytes 214 and 222, respectively. As for the data you will have to byteswap this data is you use a BIG ENDIAN computer. The narrowband radiance L in [mW/mē/sr/(cm-1)] is obtained as:
   L = gain * DC + offset
After conversion of this radiance in [W/mē/sr] (see annex), the brightness temperature for the thermal channels can be accurately estimated using the exponential fits provided page 14 of the following document
   ftp://gerb.oma.be/Documents/imager_dictionary.pdf

SEVIRI Data Geolocation

Thanks to the EUMETSAT rectification, the geolocation of the SEVIRI data is fixed. Images of the geodetic latitude and of the longitude [in degrees] are available in HDF5 files on our FTP site:
   ftp://gerb.oma.be/seviri/Geolocation
An overlay image, showing the country borders, is available in the file:
  ftp://gerb.oma.be/seviri/Overlay/SEVIRI_OVERLAY.pgm

Annex: Byte Swapping

void byte_swap_16(unsigned short int *buf, size_t num)
{
   while (num--) {
     *buf = ((*buf & 0x00ffU) << 8) | ((*buf & 0xff00U) >> 8);
     buf++;
     }
    
}

void byte_swap_64(unsigned long int *buf, size_t num)
{

   while (num--) {
     *buf = ((*buf & 0x00000000000000ffULL) << 56) |
            ((*buf & 0x000000000000ff00ULL) << 40) |
            ((*buf & 0x0000000000ff0000ULL) << 24) |
            ((*buf & 0x00000000ff000000ULL) << 8)  |
            ((*buf & 0x000000ff00000000ULL) >> 8)  |
            ((*buf & 0x0000ff0000000000ULL) >> 24) |
            ((*buf & 0x00ff000000000000ULL) >> 40) |
            ((*buf & 0xff00000000000000ULL) >> 56);
     buf++;
    }
}/PRE>


Annex: Integral of the SEVIRI filters

The spectral integration of the SEVIRI filters is given hereafter. This data allows to convert from [mW/mē/sr/(cm-1)] to [W/mē/sr].
 HRV       8932.190025  [cm-1]
 VIS 0.6   1824.616604  [cm-1]
 VIS 0.8    876.101219  [cm-1]
 IR  1.6    471.311575  [cm-1]
 IR  3.9    365.631468  [cm-1]
 WV  6.2    214.572920  [cm-1]
 WV  7.3     88.624939  [cm-1]
 IR  8.7     45.604889  [cm-1] 
 IR  9.7     26.629038  [cm-1]
 IR 10.8     83.985849  [cm-1]
 IR 12.0     65.836404  [cm-1]
 IR 13.4     70.458815  [cm-1]    
More details and the values for MSG-2 are given in the page 11 of the document:
   ftp://gerb.oma.be/Documents/imager_dictionary.pdf


Go to the GERB home page