C C .................................................................. C C SUBROUTINE GMPRD C C PURPOSE C MULTIPLY TWO GENERAL MATRICES TO FORM A RESULTANT GENERAL C MATRIX C C USAGE C CALL GMPRD(A,B,R,N,M,L) C C DESCRIPTION OF PARAMETERS C A - NAME OF FIRST INPUT MATRIX C B - NAME OF SECOND INPUT MATRIX C R - NAME OF OUTPUT MATRIX C N - NUMBER OF ROWS IN A C M - NUMBER OF COLUMNS IN A AND ROWS IN B C L - NUMBER OF COLUMNS IN B C C REMARKS C ALL MATRICES MUST BE STORED AS GENERAL MATRICES C MATRIX R CANNOT BE IN THE SAME LOCATION AS MATRIX A C MATRIX R CANNOT BE IN THE SAME LOCATION AS MATRIX B C NUMBER OF COLUMNS OF MATRIX A MUST BE EQUAL TO NUMBER OF ROW C OF MATRIX B C C SUBROUTINES AND FUNCTION SUBPROGRAMS REQUIRED C NONE C C METHOD C THE M BY L MATRIX B IS PREMULTIPLIED BY THE N BY M MATRIX A C AND THE RESULT IS STORED IN THE N BY L MATRIX R. C C .................................................................. C SUBROUTINE GMPRD(A,B,R,N,M,L) DIMENSION A(1),B(1),R(1) C IR=0 IK=-M DO 10 K=1,L IK=IK+M DO 10 J=1,N IR=IR+1 JI=J-N IB=IK R(IR)=0 DO 10 I=1,M JI=JI+N IB=IB+1 10 R(IR)=R(IR)+A(JI)*B(IB) RETURN END