NCEPLIBS-bufr  11.5.0
 All Data Structures Files Functions Variables Pages
rdmtbd.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine rdmtbd (LUNSTD, LUNLTD, MXMTBD, MXELEM, IMT, IMTV, IOGCE, ILTV, NMTBD, IMFXYN, CMMNEM, CMDSC, CMSEQ, NMELEM, IEFXYN, CEELEM)
 THIS SUBROUTINE READS MASTER TABLE D INFORMATION FROM TWO SEPARATE (I.E. More...
 

Detailed Description

Author
ATOR
Date
2007-01-19

Definition in file rdmtbd.f.

Function/Subroutine Documentation

subroutine rdmtbd (   LUNSTD,
  LUNLTD,
  MXMTBD,
  MXELEM,
  IMT,
  IMTV,
  IOGCE,
  ILTV,
  NMTBD,
integer, dimension(*)  IMFXYN,
character, dimension(8,*)  CMMNEM,
character*4, dimension(*)  CMDSC,
character, dimension(120,*)  CMSEQ,
integer, dimension(*)  NMELEM,
integer, dimension(mxmtbd,mxelem)  IEFXYN,
character*120, dimension(mxmtbd,mxelem)  CEELEM 
)

THIS SUBROUTINE READS MASTER TABLE D INFORMATION FROM TWO SEPARATE (I.E.

ONE STANDARD AND ONE LOCAL) ASCII FILES AND THEN MERGES IT INTO A UNIFIED SET OF MASTER TABLE D ARRAYS FOR OUTPUT. EACH OF THE TWO INPUT FILES MUST ALREADY BE INDIVIDUALLY SORTED IN ASCENDING ORDER WITH RESPECT TO THE FXY NUMBERS.

PROGRAM HISTORY LOG: 2007-01-19 J. ATOR – ORIGINAL AUTHOR 2021-01-08 J. ATOR – MODIFIED MSTABS ARRAY DECLARATIONS FOR GNUv10 PORTABILITY

USAGE: CALL RDMTBD ( LUNSTD, LUNLTD, MXMTBD, MXELEM, IMT, IMTV, IOGCE, ILTV, NMTBD, IMFXYN, CMMNEM, CMDSC, CMSEQ, NMELEM, IEFXYN, CEELEM ) INPUT ARGUMENT LIST: LUNSTD - INTEGER: FORTRAN LOGICAL UNIT NUMBER OF ASCII FILE CONTAINING STANDARD TABLE D INFORMATION LUNLTD - INTEGER: FORTRAN LOGICAL UNIT NUMBER OF ASCII FILE CONTAINING LOCAL TABLE D INFORMATION MXMTBD - INTEGER: MAXIMUM NUMBER OF ENTRIES TO BE STORED IN MERGED MASTER TABLE D ARRAYS; THIS SHOULD BE THE SAME NUMBER AS WAS USED TO DIMENSION THE OUTPUT ARRAYS IN THE CALLING PROGRAM, AND IT IS USED BY THIS SUBROUTINE TO ENSURE THAT IT DOESN'T OVERFLOW THESE ARRAYS MXELEM - INTEGER: MAXIMUM NUMBER OF ELEMENTS TO BE STORED PER ENTRY WITHIN THE MERGED MASTER TABLE D ARRAYS; THIS SHOULD BE THE SAME NUMBER AS WAS USED TO DIMENSION THE OUTPUT ARRAYS IN THE CALLING PROGRAM, AND IT IS USED BY THIS SUBROUTINE TO ENSURE THAT IT DOESN'T OVERFLOW THESE ARRAYS

OUTPUT ARGUMENT LIST: IMT - INTEGER: MASTER TABLE, READ FROM EACH ASCII FILE (NOTE: THESE VALUES MUST BE THE SAME IN EACH FILE!) IMTV - INTEGER: VERSION NUMBER OF MASTER TABLE, READ FROM STANDARD ASCII FILE IOGCE - INTEGER: ORIGINATING CENTER, READ FROM LOCAL ASCII FILE ILTV - INTEGER: VERSION NUMBER OF LOCAL TABLE, READ FROM LOCAL ASCII FILE NMTBD - INTEGER: NUMBER OF ENTRIES IN MERGED MASTER TABLE D ARRAYS IMFXYN(*)- INTEGER: MERGED ARRAY CONTAINING BIT-WISE REPRESENTATIONS OF FXY NUMBERS (I.E. SEQUENCE DESCRIPTORS) CMMNEM(*)- CHARACTER*8: MERGED ARRAY CONTAINING MNEMONICS CMDSC(*) - CHARACTER*4: MERGED ARRAY CONTAINING DESCRIPTOR CODES CMSEQ(*) - CHARACTER*120: MERGED ARRAY CONTAINING SEQUENCE NAMES NMELEM(*)- INTEGER: MERGED ARRAY CONTAINING NUMBER OF ELEMENTS STORED FOR EACH ENTRY IEFXYN(*,*)- INTEGER: MERGED ARRAY CONTAINING BIT-WISE REPRESENTATIONS OF ELEMENT FXY NUMBERS CEELEM(*,*)- CHARACTER*120: MERGED ARRAY CONTAINING ELEMENT NAMES

REMARKS: THIS ROUTINE CALLS: ADN30 BORT GETNTBE GETTBH SNTBDE WRDLEN THIS ROUTINE IS CALLED BY: IREADMT Not normally called by any application programs but it could be.

Definition at line 65 of file rdmtbd.f.

References adn30(), bort(), getntbe(), gettbh(), sntbde(), and wrdlen().

Referenced by ireadmt().