55 SUBROUTINE dxmini(LUN,MBAY,MBYT,MB4,MBA,MBB,MBD)
59 COMMON /dxtab / maxdx,idxv,nxstr(10),ldxa(10),ldxb(10),ldxd(10),
62 CHARACTER*128 bort_str
99 nby3 = 7 + nxstr(idxs) + 1
102 mbyt = nby0+nby1+nby2+nby3+nby4+nby5
104 IF(mod(nby3,2).NE.0) goto 900
109 CALL
pkc(
'BUFR' , 4 , mbay,mbit)
110 CALL
pkb( mbyt , 24 , mbay,mbit)
111 CALL
pkb( 3 , 8 , mbay,mbit)
116 CALL
pkb( nby1 , 24 , mbay,mbit)
117 CALL
pkb( 0 , 8 , mbay,mbit)
118 CALL
pkb( 3 , 8 , mbay,mbit)
119 CALL
pkb( 7 , 8 , mbay,mbit)
120 CALL
pkb( 0 , 8 , mbay,mbit)
121 CALL
pkb( 0 , 8 , mbay,mbit)
122 CALL
pkb( mtyp , 8 , mbay,mbit)
123 CALL
pkb( msbt , 8 , mbay,mbit)
124 CALL
pkb( 29 , 8 , mbay,mbit)
125 CALL
pkb( idxv , 8 , mbay,mbit)
126 CALL
pkb( iy , 8 , mbay,mbit)
127 CALL
pkb( im , 8 , mbay,mbit)
128 CALL
pkb( id , 8 , mbay,mbit)
129 CALL
pkb( ih , 8 , mbay,mbit)
130 CALL
pkb( 0 , 8 , mbay,mbit)
131 CALL
pkb( 0 , 8 , mbay,mbit)
136 CALL
pkb( nby3 , 24 , mbay,mbit)
137 CALL
pkb( 0 , 8 , mbay,mbit)
138 CALL
pkb( 1 , 16 , mbay,mbit)
139 CALL
pkb( 2**7 , 8 , mbay,mbit)
141 CALL
pkb(
iupm(dxstr(idxs)(i:i),8),8,mbay,mbit)
143 CALL
pkb( 0 , 8 , mbay,mbit)
149 CALL
pkb(nby4 , 24 , mbay,mbit)
150 CALL
pkb( 0 , 8 , mbay,mbit)
152 CALL
pkb( 0 , 8 , mbay,mbit)
154 CALL
pkb( 0 , 8 , mbay,mbit)
156 CALL
pkb( 0 , 8 , mbay,mbit)
158 IF(mbit/8+nby5.NE.mbyt) goto 901
165 . (
'BUFRLIB: DXMINI - LENGTH OF SECTION 3 IS NOT A MULTIPLE OF 2')
166 901
WRITE(bort_str,
'("BUFRLIB: DXMINI - NUMBER OF BYTES STORED FOR '//
167 .
'A MESSAGE (",I6,") IS NOT THE SAME AS FIRST CALCULATED, MBYT '//
168 .
'(",I6)') mbit/8+nby5,mbyt
subroutine pkc(CHR, NCHR, IBAY, IBIT)
This subroutine encodes a character string within a specified number of bits of an integer array...
function iupm(CBAY, NBITS)
THIS FUNCTION UNPACKS AND RETURNS A BINARY INTEGER WORD CONTAINED WITHIN NBITS BITS OF A CHARACTER ST...
This module declares and initializes the MXMSGL variable.
subroutine dxmini(LUN, MBAY, MBYT, MB4, MBA, MBB, MBD)
THIS SUBROUTINE INITIALIZES A BUFR TABLE (DICTIONARY) MESSAGE, WRITING ALL THE PRELIMINARY INFORMATIO...
subroutine bort(STR)
This subroutine calls subroutine errwrt() to log an error message, then calls subroutine bort_exit() ...
subroutine pkb(NVAL, NBITS, IBAY, IBIT)
This subroutine encodes an integer value within a specified number of bits of an integer array...