NCEPLIBS-bufr  11.7.0
 All Data Structures Files Functions Variables Pages
pkvs01.f File Reference

Specify a value to be included in Section 0 or Section 1 when writing BUFR messages. More...

Go to the source code of this file.

Functions/Subroutines

subroutine pkvs01 (S01MNEM, IVAL)
 This subroutine is used to specify a value to be written into a specified location within Section 0 or Section 1 of all BUFR messages output by future calls to other message-writing subroutines and subset-writing subroutines. More...
 

Detailed Description

Specify a value to be included in Section 0 or Section 1 when writing BUFR messages.

Definition in file pkvs01.f.

Function/Subroutine Documentation

subroutine pkvs01 ( character*(*)  S01MNEM,
  IVAL 
)

This subroutine is used to specify a value to be written into a specified location within Section 0 or Section 1 of all BUFR messages output by future calls to other message-writing subroutines and subset-writing subroutines.

This subroutine is similar to subroutine pkbs1(), except that pkbs1() operates on a single BUFR message passed in via a memory array. Alternatively, whenever this subroutine is called, the specified IVAL will be written into all BUFR messages output by all future calls to other message-writing subroutines and subset-writing subroutines, for all Fortran logical units that are open for output within the application program, unless a subsequent call is made to this subroutine with the same value of S01MNEM in order to reset the corresponding IVAL again. Otherwise, if this subroutine is never called for a particular value of S01MNEM, then a default value is used for the corresponding IVAL, as set within subroutine msgini(), cmsgini() or dxmini().

Authors
J. Ator
Date
2005-11-29
Parameters
[in]IVAL– integer: Value to be stored
[in]S01MNEM– character*(*): Location where IVAL is to be stored within Section 0 or Section 1 of all future output BUFR messages
  • 'BEN' = BUFR edition number
  • 'BMT' = BUFR master table
  • 'OGCE' = Originating center
  • 'GSES' = Originating subcenter
  • 'USN' = Update sequence number
  • 'MTYP' = Data category
  • 'MSBTI' = Data subcategory (international)
  • 'MSBT' = Data subcategory (local)
  • 'MTV' = Version number of master table
  • 'MTVL' = Version number of local tables
  • 'YCEN' = Year of century (1-100)
  • 'CENT' = Century (e.g., 20 for years 1901-2000, 21 for years 2001-2100)
  • 'YEAR' = Year (4-digit)
  • 'MNTH' = Month
  • 'DAYS' = Day
  • 'HOUR' = Hour
  • 'MINU' = Minute
  • 'SECO' = Second
Remarks
  • A separate call to this subroutine must be made for each value of S01MNEM that is to be set within Section 0 or Section 1 of all future output BUFR messages.
  • A call to this subroutine with S01MNEM = 'BEN' and IVAL = 4 will force all future output BUFR messages to be encoded using BUFR edition 4; otherwise, messages will be encoded using BUFR edition 3 by default.
  • Values corresponding to S01MNEM = 'YCEN' or 'CENT' can only be stored within BUFR messages encoded using BUFR edition 3.
  • Values corresponding to S01MNEM = 'YEAR', 'SECO' or 'MSBTI' can only be stored within BUFR messages encoded using BUFR edition 4.

Program history log:

Date Programmer Comments
2005-11-29 J. Ator Original author
2006-04-14 D. Keyser Updated docblock
2015-03-03 J. Ator Use module MODA_S01CM

Definition at line 72 of file pkvs01.f.

References bort(), and openbf().