User Tools

Site Tools


bufr.pm:bufrread_help

This is an old revision of the document!


Usage:
      bufrdump.pl <bufr file(s)>
          [--filter <filter file>]
          [--param <parameter file> [--csv]]
          [--sort | --sort_on <parameter>[-]]
          [--transform <transformation file>]
          [--lon1 x1]
          [--lat1 y1]
          [--lon2 x2]
          [--lat2 x2]
          [--tablepath <path to BUFR tables>]
          [--help]

Options:
      --filter <filter file>
                      Decode observations meeting criteria in <filter file> only
      --param <parameter file> [--csv]
                      Print parameters in <parameter file> only, in same order
                      as they occur in <parameter file>. If --csv, the parameters
                      vill be printed using the CSV (comma separated values) format
      --sort          Sort the decoded observations on station identification;
                      first stations with wmonr, then stations with call sign,
                      then stations with buoy_id (others left out)
      --sort_on <parameter>[-] Sort the decoded observations on increasing
                      values of <parameter>, or decreasing values if a '-'
                      follows the parameter name. Observations not containing
                      the parameter at all will be printed lastly. E.g.
                      --sort_on TA- will sort on decreasing temperatures
      --transform <transformation file>
                      Do the transformations of parameter values listed in
                      <transformation file>
      --lon1 x1       Decode observations with longitude >= x1 only
      --lat1 y1       Decode observations with latitude >= y1 only
      --lon2 x2       Decode observations with longitude <= x2 only
      --lat2 y2       Decode observations with latitude <= y2 only
                      x1,y1,x2,y2 should be decimal degrees
      --tablepath <path to BUFR tables>
                      Set path to BUFR tables (overrides ENV{BUFR_TABLES})
      --help          Print this Usage

    Options may be abbreviated, e.g. --h or -h for --help.

    To avoid having to use the "--tablepath" option, you are adviced to set
    the invironment variable BUFR_TABLES to the directory where your BUFR
    tables are located (unless the default path provided by bufrdump.pl
    works for you).

    The lines in <parameter file> should be name of the parameters you want
    to be printed. For example, if you want only station identification and
    temperature to be printed for a BUFR SYNOP file, the <parameter file>
    should look like this:

      wmonr
      call_sign
      TA

    If you want "parameter=value" to be printed also when value is missing
    in BUFR message, precede the parameter name with an exclamation mark
    (e.g. '!TA'). Missing values will then be displayed as -32767.

    If --csv is used in conjunction with --param, all values will be printed
    using the CSV format, with first line listing the parameters, and with
    missing fields printed as -32767 if the parameter is marked with '!' in
    parameter file. With the parameter file above, the listing may for
    example start like

      wmonr,call_sign,TA
      01001,,-1.5
      ,LF5U,9.0

    Using --filter will decode only those observations that meet at least
    one of the BUFR descriptor criteria and all of the parameter criteria in
    <filter file>, where the BUFR descriptor criteria should come first in
    filter file followed by a blank line, then comes the parameter criteria
    which should match <param> or <param> <operator> <value> where operator
    is one of =, !=, <, <=, > and >=. An example filter file is

      D: 001001 I2.2
      01
      D: 001001 I2.2 001002 I3.3
      03 895
      06 252
      D: 001011 A9
      LF5U

      type = Manned
      NN != 8
      TA >= 5
      TA < 9.5
      RR_24

    which decodes all observations with block number 01, two other specific
    wmo stations and one specific ship, being manned stations and having
    cloud cover different from 8 (but NN must be part of the message) and
    temperature between 5 and 9.5 degrees Celsius and containing
    precipitation for last 24 hours. Comment lines starting with # will be
    ignored.

    Another example: the simple filter file (starting with a blank line!)

      wmonr

    will print only those observations containing a wmonr (skipping ships).

    The --transform option is provided mainly to be able to use other units
    than what is default in bufrdump.pl. The transformation file should list
    the transformations wanted, one per line as

      <parameter> = <perl expression involving $x>

    where $x is original value of the parameter.

    For example, the following transformation file will display wind speed
    FF and wind gust FG in knots instead of m/s, rounded to one decimal, and
    cloud cover NN in % (instead of the default which is using WMO code
    table 2700, roughly counting octas):

      FF = sprintf("%.1f", $x*1.9438)
      FG = sprintf("%.1f", $x*1.9438)
      NN = int($x*12.5 + .5)

    If --transform is combined with --filter, the filter criteria should
    refer to the transformed values. E.g. if the above NN transform to % is
    to be applied for sky not all covered by clouds, you should use NN !=
    100 instead of NN != 8 in filter file.
bufr.pm/bufrread_help.1285056347.txt.gz · Last modified: (external edit)