NCEPLIBS-bufr  11.6.0
 All Data Structures Files Functions Variables Pages
ufbrp.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine ufbrp (LUN, USR, I1, I2, IO, IRET)
 THIS SUBROUTINE WRITES OR READS SPECIFIED VALUES TO OR FROM THE CURRENT BUFR DATA SUBSET WITHIN INTERNAL ARRAYS, WITH THE DIRECTION OF THE DATA TRANSFER DETERMINED BY THE CONTEXT OF IO (I.E., IF IO INDICATES LUN POINTS TO A BUFR FILE THAT IS OPEN FOR INPUT, THEN DATA VALUES ARE READ FROM THE INTERNAL DATA SUBSET; OTHERWISE, DATA VALUES ARE WRITTEN TO THE INTERNAL DATA SUBSET). More...
 

Detailed Description

Author
WOOLLEN
Date
1994-01-06

Definition in file ufbrp.f.

Function/Subroutine Documentation

subroutine ufbrp (   LUN,
real*8, dimension(i1,i2)  USR,
  I1,
  I2,
  IO,
  IRET 
)

THIS SUBROUTINE WRITES OR READS SPECIFIED VALUES TO OR FROM THE CURRENT BUFR DATA SUBSET WITHIN INTERNAL ARRAYS, WITH THE DIRECTION OF THE DATA TRANSFER DETERMINED BY THE CONTEXT OF IO (I.E., IF IO INDICATES LUN POINTS TO A BUFR FILE THAT IS OPEN FOR INPUT, THEN DATA VALUES ARE READ FROM THE INTERNAL DATA SUBSET; OTHERWISE, DATA VALUES ARE WRITTEN TO THE INTERNAL DATA SUBSET).

THE DATA VALUES CORRESPOND TO INTERNAL ARRAYS REPRESENTING PARSED STRINGS OF MNEMONICS WHICH ARE EITHER: 1) PART OF A REGULAR (I.E., NON-DELAYED) REPLICATION SEQUENCE OR 2) REPLICATED BY BEING DIRECTLY LISTED MORE THAN ONCE WITHIN AN OVERALL SUBSET DEFINITION

THIS SUBROUTINE SHOULD NEVER BE CALLED BY ANY APPLICATION PROGRAM; INSTEAD, APPLICATION PROGRAMS SHOULD ALWAYS CALL BUFR ARCHIVE LIBRARY SUBROUTINE UFBREP.

PROGRAM HISTORY LOG: 1994-01-06 J. WOOLLEN – ORIGINAL AUTHOR 1998-07-08 J. WOOLLEN – IMPROVED MACHINE PORTABILITY 1999-11-18 J. WOOLLEN – THE NUMBER OF BUFR FILES WHICH CAN BE OPENED AT ONE TIME INCREASED FROM 10 TO 32 (NECESSARY IN ORDER TO PROCESS MULTIPLE BUFR FILES UNDER THE MPI) 2003-11-04 S. BENDER – ADDED REMARKS/BUFRLIB ROUTINE INTERDEPENDENCIES 2003-11-04 D. KEYSER – MAXJL (MAXIMUM NUMBER OF JUMP/LINK ENTRIES) INCREASED FROM 15000 TO 16000 (WAS IN VERIFICATION VERSION); UNIFIED/PORTABLE FOR WRF; ADDED DOCUMENTATION (INCLUDING HISTORY) 2009-03-31 J. WOOLLEN – ADD DOCUMENTATION 2014-12-10 J. ATOR – USE MODULES INSTEAD OF COMMON BLOCKS

USAGE: CALL UFBRP (LUN, USR, I1, I2, IO, IRET) INPUT ARGUMENT LIST: LUN - INTEGER: I/O STREAM INDEX INTO INTERNAL MEMORY ARRAYS USR - ONLY IF BUFR FILE OPEN FOR OUTPUT: REAL*8: (I1,I2) STARTING ADDRESS OF DATA VALUES WRITTEN TO DATA SUBSET I1 - INTEGER: LENGTH OF FIRST DIMENSION OF USR I2 - INTEGER: LENGTH OF SECOND DIMENSION OF USR IO - INTEGER: STATUS INDICATOR FOR BUFR FILE ASSOCIATED WITH LUN: 0 = input file 1 = output file

OUTPUT ARGUMENT LIST: USR - ONLY IF BUFR FILE OPEN FOR INPUT: REAL*8: (I1,I2) STARTING ADDRESS OF DATA VALUES READ FROM DATA SUBSET IRET - INTEGER:

  • IF BUFR FILE OPEN FOR INPUT: NUMBER OF "LEVELS" OF DATA VALUES READ FROM DATA SUBSET (MUST BE NO LARGER THAN I2)
  • IF BUFR FILE OPEN FOR OUTPUT: NUMBER OF "LEVELS" OF DATA VALUES WRITTEN TO DATA SUBSET (SHOULD BE SAME AS I2)

REMARKS: THIS ROUTINE CALLS: INVTAG THIS ROUTINE IS CALLED BY: UFBREP Normally not called by any application programs (they should call UFBREP).

Definition at line 69 of file ufbrp.f.

References invtag().

Referenced by ufbrep().