W3AI18
The W3AI18 routine builds a line of information composed of
user specified character strings.
USAGE: CALL W3AI18(ITEM, I1, I2, LINE, L, K, N)
Input argument list:
ITEM - CHARACTER STRING TO BE ADDED TO LINE ARRAY
I1 - NUMBER OF CHARACTER STRINGS TO BE ADDED TO LINE ARRAY
I2 - NUMBER OF CHARACTERS PER STRING TO ADD TO LINE
L - CHARACTER LENGTH OF LINE TO BE BUILT (2.LE.L.LE.256)
K - NUMBER OF BLKANK CHARACTERS TO PRECEDE A CHARACTER
STRING (0.LE.K.LE.256)
N - POINTER SET EQUAL TO 0 WHEN BEGINNING A LINE
Output argument list:
LINE - ARRAY IN WHICH CHARACTER STRING ARE PLACED WHILE
BUILDING ALINE; MUST BE OF TYPE INTEGER
N - CHARACTER COUNT, ERROR INDICATOR
Exit states:
N = -1 CHARACTER STRING WILL NOT FIT IN THE LINE ARRAY;
OTHERWISE, EACH TIME A CHACTER STRING IS ADDED
TO THE LINE, N IS INCREMENTED BY (I2 + K)
REMARKS:
Each character string included in the item array must
start on a full word boundary and be equal in length.
Each successive string must start on the nest fullword
boundary following the end of the previous string.
On a Cray this is 8.
The dimensions of the item array should be at least the
value of (i1*(i2+j))/4, where the integer j is in the
range 0.le.j.le.3 and the sum (i2+j) is 4 or a multiple
of 4. on a Cray this is 8 or a multiple of 8. On a Cray
(i1*(i2+j))/8, range is 0.le.j.le.7
The maximum dimension of line is 64 word or 256 bytes.
on a Cray it is 32 words or 256 bytes.
The user should set n = 0 each time a line is stated to
tell w3ai18 to fill the line array with blank characters.
Each time a character string is added to the line, the
variable (n) is incremented by (i2 + k). if a character
string will not fit in the line array, w3ai18 sets n = -1
and returns to the user. The user will not be able to
program a recovery procedure for the line being full if
more than one character string is in the item array.
W3lib.tar |
Library contains Fortran 90 decoder/encoder
routines for GRIB edition 1. (Fortran90)
Date posted: 2/22/2007 |