35 SUBROUTINE upftbv(LUNIT,NEMO,VAL,MXIB,IBIT,NIB)
44 CHARACTER*128 bort_str
52 CALL
status(lunit,lun,il,im)
55 CALL
nemtab(lun,nemo,idn,tab,n)
57 IF(tabb(n,lun)(71:74).NE.
'FLAG') goto 902
63 nbits =
valx(tabb(n,lun)(110:112))
66 IF(abs(r8val-r82i).LT.(0.005))
THEN
68 IF(nib.GT.mxib) goto 903
71 ELSEIF(r82i.LT.r8val)
THEN
73 IF(nib.GT.mxib) goto 903
80 900 CALL
bort(
'BUFRLIB: UPFTBV - INPUT BUFR FILE IS CLOSED, IT '//
81 .
'MUST BE OPEN FOR INPUT')
82 901
WRITE(bort_str,
'("BUFRLIB: UPFTBV - MNEMONIC ",A,'//
83 .
'" NOT FOUND IN TABLE B")') nemo
85 902
WRITE(bort_str,
'("BUFRLIB: UPFTBV - MNEMONIC ",A,'//
86 .
'" IS NOT A FLAG TABLE")') nemo
88 903 CALL
bort(
'BUFRLIB: UPFTBV - IBIT ARRAY OVERFLOW')
function valx(STR)
THIS FUNCTION DECODES A REAL NUMBER FROM A CHARACTER STRING.
This module contains array and variable declarations used to store DX BUFR tables internally for mult...
subroutine status(LUNIT, LUN, IL, IM)
This subroutine checks whether a specified Fortran logical unit number is currently connected to the ...
subroutine upftbv(LUNIT, NEMO, VAL, MXIB, IBIT, NIB)
Given a Table B mnemonic with flag table units and a corresponding numerical data value...
subroutine nemtab(LUN, NEMO, IDN, TAB, IRET)
THIS SUBROUTINE SEARCHES FOR MNEMONIC NEMO WITHIN THE INTERNAL TABLE B AND D ARRAYS HOLDING THE DICTI...
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...