PROGRAM TESTM2 C C PROGRAM TO TEST THE FOLLOWING ROUTINES ON MATLIB C MABT, MATB, MMUL, MTRN C (ALL ARE SINGLE PRECISION ROUTINES) C REAL A(4,5),B(4,5),C(4,5),P,Q REAL X(3,3),D(3,3),E(3,3),CC(5,4),BB(5,5) REAL AA(5,4) C K=0 DO 10 J=1,5 DO 5 I=1,4 K=K+1 A(I,J) = K AA(J,I) = K 5 B(I,J) = 2*K 10 CONTINUE K=0 DO 20 J=1,5 DO 15 I=1,5 K=1-K 15 BB(I,J) = K 20 CONTINUE C TYPE *,' PARTIAL MATRIX OPERATIONS' C TYPE 30,((A(I,J),J=1,5),I=1,4),((B(I,J),J=1,5),I=1,4), 1 ((AA(I,J),J=1,4),I=1,5),((BB(I,J),J=1,5),I=1,5) 30 FORMAT(' A'/,4(5F8.0/),/' B'/,4(5F8.0/), 1 ' AA'/,5(4F8.0/)/' BB'/,5(5F8.0/)) C CALL MPABT(C,A,BB,3,4,2,4,5,4) TYPE *,' MPABT' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MPATB(CC,BB,A,3,4,2,5,4,5) TYPE *,' MPATB' TYPE 902,((CC(I,J),J=1,4),I=1,5) CALL MPMUL(C,A,BB,3,4,2,4,5,4) TYPE *,' MPMUL' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MPTRN(CC,A,3,4,4,5) TYPE *,' MPTRN' TYPE 902,((CC(I,J),J=1,4),I=1,5) C DO 50 J=1,5 DO 40 I=1,4 40 C(I,J) = 0. 50 CONTINUE C TYPE *,' FULL MATRIX OPERATIONS' C CALL MABT(CC,BB,A,5,5,4) TYPE *,' MABT' TYPE 902,((CC(I,J),J=1,4),I=1,5) CALL MATB(C,AA,BB,4,5,5) TYPE *,' MATB' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MMUL(C,A,BB,4,5,5) TYPE *,' MMUL' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MTRN(CC,A,4,5) TYPE *,' MTRN' TYPE 902,((CC(I,J),J=1,4),I=1,5) C K=0 DO 70 J=1,3 DO 60 I=1,3 K =K+1 D(I,J) = K 60 E(I,J) = 2*K 70 CONTINUE TYPE 80,((D(I,J),J=1,3),I=1,3),((E(I,J),J=1,3),I=1,3) 80 FORMAT(' D'/3(3F8.0/),/' E'/3(3F8.0/)) C TYPE *,' 3X3 WITH 3X1 MATRIX OPERATIONS' C CALL M3ABT(X,D,E,1) TYPE *,' M3ABT' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3ATB(X,D,E,1) TYPE *,' M3ATB' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3MUL(X,D,E,1) TYPE *,' M3MUL' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3TRN(X,D) TYPE *,' M3TRN' TYPE 903,((X(I,J),J=1,3),I=1,3) C TYPE *,' MORE 3X3 MATRIX OPERATIONS' C CALL M3ABT(X,D,E,3) TYPE *,' M3ABT' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3ATB(X,D,E,3) TYPE *,' M3ATB' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3MUL(X,D,E,3) TYPE *,' M3MUL' TYPE 903,((X(I,J),J=1,3),I=1,3) 901 FORMAT(4(5F8.0/)) 902 FORMAT(5(4F8.0/)) 903 FORMAT(3(3F8.0/)) STOP END