Actions

BOEWRT.DAT: Difference between revisions

From BAWiki

imported>Schade Peter
mNo edit summary
imported>Schade Peter
m (beta version of new boewrt.dat before Guntram's comments)
Line 9: Line 9:
The file has a header where meta data is identified by its position in the file, the first data line e.g. contains the node number. This is the classic boewrt.dat that can be processed by classical methods of BAW's io library. Since May 2014 the new boewrt.dat header can contain key-value pairs with additional meta data, the key Fill_Value is for example followed by a value in real format. The additional meta information is only evaluated by methods of BAW's io_dataset software package.
The file has a header where meta data is identified by its position in the file, the first data line e.g. contains the node number. This is the classic boewrt.dat that can be processed by classical methods of BAW's io library. Since May 2014 the new boewrt.dat header can contain key-value pairs with additional meta data, the key Fill_Value is for example followed by a value in real format. The additional meta information is only evaluated by methods of BAW's io_dataset software package.


Programs using the io and the io_dataset library can read the boewrt.dat files in the classical as well as the new version. The data part is for both the same and rather flexible; each of the ASCII time formats used by the BAW is allowed. But the date and time format with two digit year should not be used any longer. A ";" should be used to separate date and time from the values of the quantities. <br/>
Programs using the io and the io_dataset library can read the classical as well as the new version of boewrt.dat. The data part is for both the same and rather flexible; each of the ASCII time formats used by the BAW is allowed. But the date and time format with two digit year should not be used any longer. A ";" should be used to separate date and time from the values of the quantities. <br/>


But the libraries interpret the meta information in a different way. <br/>  
But the libraries interpret the meta information in a different way. <br/>  


===Io library preferrably for classic boewrt.dat===
===Io library preferably for classic boewrt.dat with support of environment variables===
This library can evaluate environment variables. If the environment variable $BAWCRS is set to a valid value (EPSG code), the station coordinate will be transformed to that system during the reading process on the fly. If the file CRS is not valid, the coordinate is used "as is". The user should set $BAWCRS when using the software listed below as classic programs.<br />
This library can interpret environment variables. If the environment variable $BAWCRS is set to a valid value (EPSG code), the station coordinate will be transformed to that system during the reading process on the fly. If the file CRS is not valid, the coordinate is used "as is". The user should set $BAWCRS when using the software listed below as classic programs.<br />


If the two digit year is used, the century after $BAWCENTURY (inclusive) will be assumed. You should specify $BAWCENTURY inside your environment (DEFAULT: 1900). <br />
If the two digit year is used, the century after $BAWCENTURY (inclusive) will be assumed. You should specify $BAWCENTURY inside your environment (DEFAULT: 1900). <br />
The time zone is used only, when the used begin or end date have a defined time zone.<br />For this case MEZ is assumed for the file, when the file contains no time zone!<br />
The time zone is used only, when the used begin or end date have a defined time zone.<br />For this case MEZ is assumed for the file, when the file contains no time zone!<br />


Files of type boewrt.dat may contain three Special comments at the top, which contain Minimum and Maximum time step and the FORTRAN Format of the data records. These comments are used to accelerate the reading procedure, when data are in ascending order in time and the records are uniformly formatted. On failure of reading a file, these comments should be erased. Files manipulated by an Editor should never contain these comments!<br />
===Io_dataset library preferably for new boewrt.dat===
 
If the new boewrt.dat gets accessed by the io_dataset software the header has to contain more mandatory meta information, i.e. time zone, CRS and fill value, s. file-contents. The environment variables are not interpreted by io_dataset . The metadata is packed into objects of type dimension (dim), variable (var) and attribute (att) as common for netcdf files. From outside the package the data is accessed in a generic way, meaning the same interfaces are used for different file formats.
===Io_dataset library preferrably for classic boewrt.dat===
|filecontents=
|filecontents=
of the classic and the new boewrt.dat format:
Content of the classic and the new boewrt.dat format:
# nodenumber and (optional) timezone and coordinate reference System (CRS). This record has to be written FORMATTED with FORTRAN-Format "(I10,1X,A4,1X,A5)". Preferably you should use known abbreviations for the time zones ("CET", "CEST", "UTC"). For the coordinate reference system of the station coordinate the EPSG codes used by BAW (see at [[GEOTRANSFORMER]] for example) should be used.
# node number, time zone and coordinate reference System (CRS). This record has to be written FORMATTED with FORTRAN-Format "(I10,1X,A4,1X,A5)". Preferably you should use known abbreviations for the time zones ("CET", "CEST", "UTC"). For the coordinate reference system of the station coordinate the EPSG codes used by BAW (see [[GEOTRANSFORMER]] for example) should be used. Certain abbrevations as "GK3B" or "SPHW" are valid as well. Time zone and CRS are mandatory for the new boewrt.dat version.
# name of the Location (written with FORTRAN-Format "(A)").
# name of the location (written in FORTRAN format "(A)").
# coordinates (x,y,z) of the Station position (unformatted with separating blanks!)
# coordinates (x,y and optionally z) of the station position, as a default z values are depths with positiv values in the downward direction.(unformatted with separating blanks!)
# number and type-codes for the physical quantities stored in the file (FORTRAN-Format "(I10,nI8)".
# number and type-codes for the physical quantities stored in the file (FORTRAN format "(I10,nI8)".
# date, time and data for each time-step stored. Preferably the date and time should be separated from the physical values by a ";"-character.<br/>
# date, time and data for each time-step stored. Preferably the date and time should be separated from the physical values by a ";"-character.<br/>
Content only of the classic boewrt.dat:
# minimum and maximum time step: on failure of reading a file, these comments should be erased. Files manipulated by an editor should never contain these comments!
# FORTRAN format specifications of the lines in the data part. The FORTRAN format is used to accelerate the reading procedure of uniformly formatted records. On failure of reading a file it should be erased. Files manipulated by an editor should never contain the format.<br/>


content of the new boewrt.dat format, the keywords refer to NODC's standard attributes and guidance tables ( http://www.nodc.noaa.gov/data/formats/netcdf/#guidancetable )
Content of the new boewrt.dat format, the keywords refer to NODC's standard attributes and guidance tables ( http://www.nodc.noaa.gov/data/formats/netcdf/#guidancetable )
# fill value: a real number defining invalid values of quantities (mandatory)
# fill value: a real number defining invalid values of quantities (mandatory)
# instrument name (optional)
# instrument name (optional)
Line 38: Line 40:
# valid range: defining minimal and maximal limits for values of quantities identified by BAW' icode number, e.g. 3 for waterlevel (optional)
# valid range: defining minimal and maximal limits for values of quantities identified by BAW' icode number, e.g. 3 for waterlevel (optional)
# measure comment: commenting on the quantities (optional)
# measure comment: commenting on the quantities (optional)
# line comment: commenting on the values of one data line as in this example:<br/>
# line comment: optionally commenting on the values of one data line as in subsequent example, where "!" separates the quantities from the line comment "2_QMag 2_QDir":<br/>
29.02.2004 12:00:31;    0.066  122.010    !2_QMag 2_QDir<br/>
          29.02.2004 12:00:31;    0.066  122.010    !2_QMag 2_QDir<br/>
whith the line comment "2_QMag 2_QDir". It is a time dependant variable containing strings.
|nutzerprogramme=
|nutzerprogramme=
classic: [[EVENTFILTER]], [[EXCELENZ]], [[EXKNO]], [[FD2MET]], [[FRQWF]], [[GEOTRANSFORMER]], [[GVIEW2D]], [[HVIEW2D]], [[MESKOR]], [[ROSE]], [[TIDKEN]], [[TSCALC]], [[UNTRIM2007MONITOR]], [[UTRRND]], [[VVIEW2D]], [[XTRDATA]], [[ZEITRIO]]<br>
classic: [[EVENTFILTER]], [[EXCELENZ]], [[EXKNO]], [[FD2MET]], [[FRQWF]], [[GEOTRANSFORMER]], [[GVIEW2D]], [[HVIEW2D]], [[MESKOR]], [[ROSE]], [[TIDKEN]], [[TSCALC]], [[UNTRIM2007MONITOR]], [[UTRRND]], [[VVIEW2D]], [[XTRDATA]], [[ZEITRIO]]<br>
Line 49: Line 50:
|fileextension=.dat
|fileextension=.dat
|writemodules=classic: $PROGHOME/fortran/lib/io/*/mod_boewrt_io.f90:write_boewrt_info; <br/>
|writemodules=classic: $PROGHOME/fortran/lib/io/*/mod_boewrt_io.f90:write_boewrt_info; <br/>
              new: -           
new: -           
|readmodules=classic: $PROGHOME/fortran/lib/io/*/mod_boewrt_io.f90:read_boewrt_info; <br/>
|readmodules=classic: $PROGHOME/fortran/lib/io/*/mod_boewrt_io.f90:read_boewrt_info; <br/>
              new: $PROGHOME/fortran/lib/io/*/mod_io_dataset_ui.f90 for filetype boewrt
new: $PROGHOME/fortran/lib/io_dataset/*/mod_io_dataset_ui.f90, mod_m_dataset_boewrt_info.f90 and mod_m_dataset_boewrt.f90.
|contact_original=[mailto:ingrid.uliczka@baw.de I. Uliczka]
|contact_original=[mailto:ingrid.uliczka@baw.de I. Uliczka]
|contact_maintenance=[mailto:ingrid.uliczka@baw.de I. Uliczka], [mailto:guntram.seiss@baw.de G. Seiß]; [mailto:peter.schade@baw.de P. Schade]
|contact_maintenance=[mailto:ingrid.uliczka@baw.de I. Uliczka], [mailto:guntram.seiss@baw.de G. Seiß]; [mailto:peter.schade@baw.de P. Schade]
|examplefile= classic: $PROGHOME/examples/zeitrio/boewrt.new.dat<br />
|examplefile= classic: $PROGHOME/examples/zeitrio/boewrt.new.dat and $PROGHOME/examples/zeitrio/boewrt.dat<br/>  
$PROGHOME/examples/zeitrio/boewrt.dat<br/>  
new: $PROGHOME/examples/dataconvert/boewrt.optionalheader.dat and
            new: $PROGHOME/examples/dataconvert/boewrt.optionalheader.dat;<br/>
$PROGHOME/examples/dataconvert/boewrt.linecomments.dat<br/>  
$PROGHOME/examples/dataconvert/boewrt.linecomments.dat<br/>  
}}
}}

Revision as of 14:06, 6 May 2014

Basic Information

File-Type

boewrt.dat

File-Form

FORMATTED

Version

May 2014, classic version September 2001

Description-Date

May 2014

Significance of the File

contains measured or calculated time-series data in ASCII for the usage in various programs.

General remarks

The file has a header where meta data is identified by its position in the file, the first data line e.g. contains the node number. This is the classic boewrt.dat that can be processed by classical methods of BAW's io library. Since May 2014 the new boewrt.dat header can contain key-value pairs with additional meta data, the key Fill_Value is for example followed by a value in real format. The additional meta information is only evaluated by methods of BAW's io_dataset software package.

Programs using the io and the io_dataset library can read the classical as well as the new version of boewrt.dat. The data part is for both the same and rather flexible; each of the ASCII time formats used by the BAW is allowed. But the date and time format with two digit year should not be used any longer. A ";" should be used to separate date and time from the values of the quantities.

But the libraries interpret the meta information in a different way.

Io library preferably for classic boewrt.dat with support of environment variables

This library can interpret environment variables. If the environment variable $BAWCRS is set to a valid value (EPSG code), the station coordinate will be transformed to that system during the reading process on the fly. If the file CRS is not valid, the coordinate is used "as is". The user should set $BAWCRS when using the software listed below as classic programs.

If the two digit year is used, the century after $BAWCENTURY (inclusive) will be assumed. You should specify $BAWCENTURY inside your environment (DEFAULT: 1900).
The time zone is used only, when the used begin or end date have a defined time zone.
For this case MEZ is assumed for the file, when the file contains no time zone!

Io_dataset library preferably for new boewrt.dat

If the new boewrt.dat gets accessed by the io_dataset software the header has to contain more mandatory meta information, i.e. time zone, CRS and fill value, s. file-contents. The environment variables are not interpreted by io_dataset . The metadata is packed into objects of type dimension (dim), variable (var) and attribute (att) as common for netcdf files. From outside the package the data is accessed in a generic way, meaning the same interfaces are used for different file formats.

File-Contents (in Catchwords)

Content of the classic and the new boewrt.dat format:

  1. node number, time zone and coordinate reference System (CRS). This record has to be written FORMATTED with FORTRAN-Format "(I10,1X,A4,1X,A5)". Preferably you should use known abbreviations for the time zones ("CET", "CEST", "UTC"). For the coordinate reference system of the station coordinate the EPSG codes used by BAW (see GEOTRANSFORMER for example) should be used. Certain abbrevations as "GK3B" or "SPHW" are valid as well. Time zone and CRS are mandatory for the new boewrt.dat version.
  2. name of the location (written in FORTRAN format "(A)").
  3. coordinates (x,y and optionally z) of the station position, as a default z values are depths with positiv values in the downward direction.(unformatted with separating blanks!)
  4. number and type-codes for the physical quantities stored in the file (FORTRAN format "(I10,nI8)".
  5. date, time and data for each time-step stored. Preferably the date and time should be separated from the physical values by a ";"-character.

Content only of the classic boewrt.dat:

  1. minimum and maximum time step: on failure of reading a file, these comments should be erased. Files manipulated by an editor should never contain these comments!
  2. FORTRAN format specifications of the lines in the data part. The FORTRAN format is used to accelerate the reading procedure of uniformly formatted records. On failure of reading a file it should be erased. Files manipulated by an editor should never contain the format.

Content of the new boewrt.dat format, the keywords refer to NODC's standard attributes and guidance tables ( http://www.nodc.noaa.gov/data/formats/netcdf/#guidancetable )

  1. fill value: a real number defining invalid values of quantities (mandatory)
  2. instrument name (optional)
  3. instrument comment: commenting on the instrument given by instrument name (optional)
  4. platform name: name of the geophysical platform hosting the instrument (optional)
  5. platform comment: commenting on the platform given by platform name (optional)
  6. valid range: defining minimal and maximal limits for values of quantities identified by BAW' icode number, e.g. 3 for waterlevel (optional)
  7. measure comment: commenting on the quantities (optional)
  8. line comment: optionally commenting on the values of one data line as in subsequent example, where "!" separates the quantities from the line comment "2_QMag 2_QDir":
         29.02.2004 12:00:31;    0.066  122.010     !2_QMag 2_QDir

Programs using this Type of File

classic: EVENTFILTER, EXCELENZ, EXKNO, FD2MET, FRQWF, GEOTRANSFORMER, GVIEW2D, HVIEW2D, MESKOR, ROSE, TIDKEN, TSCALC, UNTRIM2007MONITOR, UTRRND, VVIEW2D, XTRDATA, ZEITRIO
new: DATACONVERT

Example-File

classic: $PROGHOME/examples/zeitrio/boewrt.new.dat and $PROGHOME/examples/zeitrio/boewrt.dat
new: $PROGHOME/examples/dataconvert/boewrt.optionalheader.dat and $PROGHOME/examples/dataconvert/boewrt.linecomments.dat


back to: File Descriptions


Overview