include file: TYPGRIB 3 *IF DEF,RECON TYPGRIB.2 !--------------------COMDECK TYPGRIB------------------------------------ TYPGRIB.3 ! TYPGRIB.4 ! Description: TYPGRIB.5 ! Initialises array lengths required for GRIB coding and decoding TYPGRIB.6 ! TYPGRIB.7 ! Current Code Owner: D.M.Goddard TYPGRIB.8 ! TYPGRIB.9 ! History: TYPGRIB.10 ! Version Date Comment TYPGRIB.11 ! ------- ---- ------- TYPGRIB.12 ! 4.0 27/02/95 Original code. D.M. Goddard TYPGRIB.13 ! 4.4 05/08/97 Correct value of LEN_BLOCK1 to prevent UDG3F404.25 ! overwriting on T3E and declare missing argument UDG3F404.26 ! Author D.M. Goddard UDG3F404.27 ! TYPGRIB.14 ! Declarations: TYPGRIB.15 ! Global parameters: TYPGRIB.16 INTEGER LEN_MAX !Maximum length of GRIB field TYPGRIB.17 INTEGER LEN_VERT !Length of array VERT TYPGRIB.18 INTEGER LEN_BITMAP !Length of array BITMAP TYPGRIB.19 INTEGER LEN_Q !Length of array Q TYPGRIB.20 INTEGER LEN_BLOCK0 !Length of array BLOCK0 TYPGRIB.21 INTEGER LEN_BLOCK1 !Length of array BLOCK1 TYPGRIB.22 INTEGER LEN_BLOCK2 !Length of array BLOCK2 TYPGRIB.23 INTEGER LEN_BLOCK3 !Length of array BLOCK3 TYPGRIB.24 INTEGER LEN_BLOCK4 !Length of array BLOCK4 TYPGRIB.25 INTEGER LEN_BLOCKR !Length of array BLOCKR TYPGRIB.26 INTEGER LEN_WORK1 !Length of array WORK1 TYPGRIB.27 INTEGER LEN_WORK2 !Length of array WORK2 TYPGRIB.28 INTEGER LEN_WORKR !Length of array WORKR TYPGRIB.29 INTEGER LEN_POSN !Length of array POSN TYPGRIB.30 INTEGER ERROR !Error code TYPGRIB.31 INTEGER WORD_SIZE !64-bits for cray 32-bits for others TYPGRIB.32 INTEGER WIDTH !Number of bits used to code field TYPGRIB.33 INTEGER MSGLVL !The lowest level of messages to be UDG3F404.28 !produced. 3 = no messages, UDG3F404.29 ! 2 = errors, 1 = errors and warnings, UDG3F404.30 ! 0 = errors, warnings and notes. UDG3F404.31 TYPGRIB.34 PARAMETER(LEN_MAX=140000) UDG3F404.32 PARAMETER(LEN_VERT=3000) TYPGRIB.36 PARAMETER(LEN_BITMAP=1) TYPGRIB.37 PARAMETER(LEN_Q=1) TYPGRIB.38 PARAMETER(LEN_BLOCK0=4) TYPGRIB.39 PARAMETER(LEN_BLOCK1=1000) UDG3F404.33 PARAMETER(LEN_BLOCK2=20) TYPGRIB.41 PARAMETER(LEN_BLOCK3=2) TYPGRIB.42 PARAMETER(LEN_BLOCK4=2) TYPGRIB.43 PARAMETER(LEN_BLOCKR=20) TYPGRIB.44 PARAMETER(LEN_WORK1=288) TYPGRIB.45 PARAMETER(LEN_WORK2=500) TYPGRIB.46 PARAMETER(LEN_WORKR=288) TYPGRIB.47 PARAMETER(LEN_POSN=4) TYPGRIB.48 PARAMETER(ERROR=11) TYPGRIB.49 PARAMETER(WORD_SIZE=64) TYPGRIB.50 PARAMETER(WIDTH=0) TYPGRIB.51 PARAMETER(MSGLVL=0) UDG3F404.34 TYPGRIB.52 ! Global scalars: TYPGRIB.53 INTEGER LEN_FP !Length of array FP_DATA TYPGRIB.54 INTEGER NUM_FP !Number of encoded values to be decoded TYPGRIB.55 INTEGER NUM_VERT !Number of values in array VERT_COORDS TYPGRIB.56 INTEGER NUM_BITMAP !Number of values in bit map TYPGRIB.57 INTEGER NUM_Q !Number of values in array QUASI TYPGRIB.58 INTEGER JLEN !Length of array TYPGRIB.59 INTEGER WORD !Number of words coded or decoded TYPGRIB.60 INTEGER IERR_UNIT !Error code level TYPGRIB.61 TYPGRIB.62 REAL OFF !Not used TYPGRIB.63 TYPGRIB.64 ! Global dynamic arrays: TYPGRIB.65 INTEGER BLOCK0(LEN_BLOCK0) !! TYPGRIB.66 INTEGER BLOCK1(LEN_BLOCK1) !! TYPGRIB.67 INTEGER BLOCK2(LEN_BLOCK2) !!GRIB message header blocks TYPGRIB.68 INTEGER BLOCK3(LEN_BLOCK3) !! TYPGRIB.69 INTEGER BLOCK4(LEN_BLOCK4) !! TYPGRIB.70 INTEGER BITMAP(LEN_BITMAP) !Array containing bit map TYPGRIB.71 INTEGER QUASI(LEN_Q) !Array containing description TYPGRIB.72 !of quasi-regular grid TYPGRIB.73 INTEGER WORK_INT1(LEN_WORK1) !Work array TYPGRIB.74 INTEGER WORK_INT2(LEN_WORK2) !Work array TYPGRIB.75 TYPGRIB.76 REAL BLOCKR(LEN_BLOCKR) !!GRIB message header block TYPGRIB.77 REAL FPDATA(LEN_MAX) !Array containing uncoded data TYPGRIB.78 REAL FPWORK(LEN_MAX) !Work array TYPGRIB.79 REAL VERT_COORDS(LEN_VERT) !Array containing vertical TYPGRIB.80 !coordinate parameters TYPGRIB.81 REAL WORK_RE1(LEN_WORKR) !Work array TYPGRIB.82 REAL POSN(LEN_POSN) !Not used TYPGRIB.83 TYPGRIB.84 !- End of COMDECK declaration TYPGRIB.85 TYPGRIB.86 PARAMETER(IERR_UNIT=6) UDG3F404.35 UDG3F404.36 TYPGRIB.87 TYPGRIB.88 *ENDIF TYPGRIB.89 !----------------------------------------------------------------------- TYPGRIB.90