NCEPLIBS-bufr  12.0.0
upftbv.f File Reference

Determine the bit settings equivalent to a numerical flag table value. More...

Go to the source code of this file.

Functions/Subroutines

recursive subroutine upftbv (LUNIT, NEMO, VAL, MXIB, IBIT, NIB)
 Given a Table B mnemonic with flag table units and a corresponding numerical data value, this subroutine determines the bit settings equivalent to that numerical value. More...
 

Detailed Description

Determine the bit settings equivalent to a numerical flag table value.

Author
J. Ator
Date
2005-11-29

Definition in file upftbv.f.

Function/Subroutine Documentation

◆ upftbv()

recursive subroutine upftbv (   LUNIT,
character*(*)  NEMO,
real*8  VAL,
  MXIB,
integer, dimension(*)  IBIT,
integer, dimension(*)  NIB 
)

Given a Table B mnemonic with flag table units and a corresponding numerical data value, this subroutine determines the bit settings equivalent to that numerical value.

This subroutine is the logical inverse of function pkftbv().

According to the WMO standard, bits within a bit field are numbered from left to right, so bit #1 is always the high-order (i.e. most significant) bit in any bit field.

Parameters
[in]LUNIT- integer: Fortran logical unit number for BUFR file.
[in]NEMO- character*(*): Table B mnemonic with flag table units.
[in]VAL- real*8: Value corresponding to NEMO.
[in]MXIB- integer: Dimensioned size (in integers) of IBIT in the calling program; used by the subroutine to ensure that it doesn't overflow the IBIT array.
[out]IBIT- integer: Bit numbers which were set to "On" (i.e. set to "1") in VAL.
[out]NIB- integer: Number of bit numbers returned in IBIT.
Author
J. Ator
Date
2005-11-29

Definition at line 27 of file upftbv.f.

References bort(), modv_im8b::im8b, nemtab(), status(), strnum(), moda_tababd::tabb, x48(), and x84().

Referenced by ufbdmp(), and ufdump().