UV dose and UV index data file structure

go to TEMIS Home Page

UV radiation
monitoring:

UV index
UV dose

Main data product pages: Erythemal UV index  |  Daily erythemal UV dose
 

HDF data file structure

The data of UV index and UV dose fields is stored in HDF-4 data files.
Simply said, such a file has the following structure:

There are several tools around on the web for viewing and treating HDF files, notably at the The HDF Group Home Page. Software for viewing and reading HDF-4 files is available at the HDF(4) tools page, where you can find a binary distributions for several operating systems (UNIX, Linux, Windows). See in particular the HDF tools by catergory overview, and the HDFview program.
The HDF file can also be read with IDL; see below.

The following table gives as an example the header of the HDF file of the erythemal UV dose of 5 Feb. 2004, computed from SCIAMACHY ozone data [image]. Data files of other data product may have different attributes and more datasets.

 

Global Attribute Value
Product Erythemal UV dose (kJ/m2)
Version 1.1
UV_field_date 2004, 2, 5, 0, 0, 0
Date_format year, month, day, hour, minute, second (local solar time)
Cloud_info Meteosat cloud cover fraction, 1-hourly observations
Authors R.J. van der A & J.H.G.M. van Geffen
Affiliation KNMI (Royal Netherlands Meteorological Institute)
E-mail avander@knmi.nl & geffen@knmi.nl
Data_created_by TM3-DAM (version 3.3) & temisuvdose (version 1.1)
Number_of_longitudes 720
Longitude_range -179.75, 179.75
Longitude_step 0.50
Number_of_latitudes 360
Latitude_range -89.75, 89.75
Latitude_step 0.50
Iuvfield UV dose field
Iuverror Error in UV dose due to error in ozone field
Units UV dose unit kJ/m2
Note UV dose = Iuvfield/100; Error = Iuverror/100
Product_code  * sdemdv

Data set

Rank --> dimensions
Iuvfield 2 --> 720 x 360
Iuverror 2 --> 720 x 360

*) This product code is for internal use, to ease post-processing.

 

Reading the HDF data file with IDL

The data file can also be read with IDL, for example with the routine uvhdfread.pro;
this particular routine has been tested at IDL versions 5.2, 5.4 and 5.5.
Once the data have been read, they can be plotted, exported to other formats, etc.
When running it with the erythemal UV dose of 5 Feb. 2004 [image], the result looks like this:

IDL> .run uvhdfread
% Compiled module: UVHDFREAD.
IDL> uvhdfread

>>> Give the name of the HDF file to read
: uvdem20040205.hdf

    Product: Erythemal UV dose (kJ/m2)
    No. of global attributes: 21
    No. of datasets: 2

      id  Global Attribute (first five)
     -----------------------------------
       0  Product
       1  Version
       2  UV_field_date
       3  Date_format
       4  Cloud_info

    Details of the UV_field_date attribute:

       UV_field_date is of type LONG; no. of values:  6
       UV_field_date values stored :  2004    2    5    0    0    0
       UV_field_date as a nice date:  5 February 2004

    Reading data set Iuvfield ...
    Reading data set Iuverror ...

>>> Give a "return" to continue
: 

    Part of the data as example:

       ilat  latitude    ilon  longitude   UV_value
      ----------------------------------------------
        268    44.25      388    14.25       0.770
        268    44.25      389    14.75       0.740
        268    44.25      390    15.25       0.810
        268    44.25      391    15.75       0.850
        269    44.75      388    14.25       0.670
        269    44.75      389    14.75       0.700
        269    44.75      390    15.25       0.800
        269    44.75      391    15.75       0.830
        270    45.25      388    14.25       0.720
        270    45.25      389    14.75       0.780
        270    45.25      390    15.25       0.790
        270    45.25      391    15.75       0.750

>>> Extract the UV value at a certain longitude, latitude coordinate
>>> Give the longitude, range: [-180:180] degrees
    use -999 to end
: 12.23
>>> Give the latitude, range: [-90:90] degrees
: 41.80
    Given coordinates fall in the grid cell with centre:
      longitude =  12.25
      latitude  =  41.75
    The UV value for this cell is:  0.990

>>> Extract the UV value at a certain longitude, latitude coordinate
>>> Give the longitude, range: [-180:180] degrees
    use -999 to end
: 5.18
>>> Give the latitude, range: [-90:90] degrees
: 52.10
    Given coordinates fall in the grid cell with centre:
      longitude =   5.25
      latitude  =  52.25
    The UV value for this cell is:  0.210

>>> Extract the UV value at a certain longitude, latitude coordinate
>>> Give the longitude, range: [-180:180] degrees
    use -999 to end
: 0
>>> Give the latitude, range: [-90:90] degrees
: 0
    Given coordinates fall in the grid cell with centre:
      longitude =  -0.25
      latitude  =  -0.25
    The UV value for this cell is -1, meaning that
    there is no data available for this grid cell

>>> Extract the UV value at a certain longitude, latitude coordinate
>>> Give the longitude, range: [-180:180] degrees
    use -999 to end
: -999

IDL>

 


last modified: 09 July 2015
data product contact: Jos van Geffen & Ronald van der A
Copyright © KNMI / TEMIS