PROGRAM TESTM2 C C PROGRAM TO TEST THE FOLLOWING ROUTINES ON MATLIB C MABTD, MATBD, MMULD, MTRND C (ALL ARE DOUBLE PRECISION ROUTINES) C REAL*8 A(4,5),B(4,5),C(4,5),P,Q REAL*8 X(3,3),D(3,3),E(3,3),CC(5,4),BB(5,5) REAL*8 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 MPABTD(C,A,BB,3,4,2,4,5,4) TYPE *,' MPABTD' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MPATBD(CC,BB,A,3,4,2,5,4,5) TYPE *,' MPATBD' TYPE 902,((CC(I,J),J=1,4),I=1,5) CALL MPMULD(C,A,BB,3,4,2,4,5,4) TYPE *,' MPMULD' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MPTRND(CC,A,3,4,4,5) TYPE *,' MPTRND' 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 MABTD(CC,BB,A,5,5,4) TYPE *,' MABTD' TYPE 902,((CC(I,J),J=1,4),I=1,5) CALL MATBD(C,AA,BB,4,5,5) TYPE *,' MATBD' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MMULD(C,A,BB,4,5,5) TYPE *,' MMULD' TYPE 901,((C(I,J),J=1,5),I=1,4) CALL MTRND(CC,A,4,5) TYPE *,' MTRND' 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 M3ABTD(X,D,E,1) TYPE *,' M3ABTD' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3ATBD(X,D,E,1) TYPE *,' M3ATBD' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3MULD(X,D,E,1) TYPE *,' M3MULD' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3TRND(X,D) TYPE *,' M3TRND' TYPE 903,((X(I,J),J=1,3),I=1,3) C TYPE *,' MORE 3X3 MATRIX OPERATIONS' C CALL M3ABTD(X,D,E,3) TYPE *,' M3ABTD' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3ATBD(X,D,E,3) TYPE *,' M3ATBD' TYPE 903,((X(I,J),J=1,3),I=1,3) CALL M3MULD(X,D,E,3) TYPE *,' M3MULD' 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