Purpose
To print an M-by-N real matrix A row by row. The elements of A are output to 7 significant figures.Specification
SUBROUTINE UD01MZ( M, N, L, NOUT, A, LDA, TEXT, INFO ) C .. Scalar Arguments .. INTEGER INFO, L, LDA, M, N, NOUT CHARACTER*(*) TEXT C .. Array Arguments .. COMPLEX*16 A(LDA,*)Arguments
Input/Output Parameters
M (input) INTEGER The number of rows of matrix A to be printed. M >= 1. N (input) INTEGER The number of columns of matrix A to be printed. N >= 1. L (input) INTEGER The number of elements of matrix A to be printed per line. 1 <= L <= 3. NOUT (input) INTEGER The output channel to which the results are sent. NOUT >= 0. A (input) COMPLEX*16 array, dimension (LDA,N) The leading M-by-N part of this array must contain the matrix to be printed. LDA INTEGER The leading dimension of array A. LDA >= M. TEXT (input) CHARACTER*72. Title caption of the matrix to be printed (up to a maximum of 72 characters). For example, TEXT = 'Matrix A'.Error Indicator
INFO INTEGER = 0: successful exit; < 0: if INFO = -i, the i-th argument had an illegal value.Method
The routine first prints the contents of TEXT as a title, followed by the elements of the matrix A such that (i) if N <= L, the leading M-by-N part is printed; (ii) if N = k*L + p (where k,p > 0), then k M-by-L blocks of consecutive columns of A are printed one after another followed by one M-by-p block containing the last p columns of A. Row numbers are printed on the left of each row and a column number appears on top of each complex column. The routine uses 2 + (k + 1)*(m + 1) lines and 7 + 32*c positions per line where c is the actual number of columns, (i.e. c = L or c = p).References
None.Numerical Aspects
None.Further Comments
NoneExample
Program Text
NoneProgram Data
NoneProgram Results
None