* G02CEF Example Program Text * Mark 14 Revised. NAG Copyright 1989. * .. Parameters .. INTEGER N, M, LDSSP, LDR, LDSSP2, LDR2 PARAMETER (N=4,M=3,LDSSP=N,LDR=N,LDSSP2=M,LDR2=M) INTEGER NIN, NOUT PARAMETER (NIN=5,NOUT=6) * .. Local Scalars .. INTEGER I, IFAIL, J * .. Local Arrays .. DOUBLE PRECISION R(LDR,N), R2(LDR2,M), SSP(LDSSP,N), + SSP2(LDSSP2,M), STD(N), STD2(M), XBAR(N), + XBAR2(M) INTEGER KORDER(M) * .. External Subroutines .. EXTERNAL G02CEF * .. Executable Statements .. WRITE (NOUT,*) 'G02CEF Example Program Results' * Skip heading in data file READ (NIN,*) READ (NIN,*) (XBAR(I),I=1,N), (STD(I),I=1,N), + ((SSP(I,J),J=1,N),I=1,N), ((R(I,J),J=1,N),I=1,N) WRITE (NOUT,*) WRITE (NOUT,99999) 'Original vector XBAR : ', (XBAR(I),I=1,N) WRITE (NOUT,*) WRITE (NOUT,99999) 'Original vector STD : ', (STD(I),I=1,N) WRITE (NOUT,*) WRITE (NOUT,*) 'Original matrix SSP :' WRITE (NOUT,99998) ((SSP(I,J),J=1,N),I=1,N) WRITE (NOUT,*) WRITE (NOUT,*) 'Original matrix R :' WRITE (NOUT,99998) ((R(I,J),J=1,N),I=1,N) WRITE (NOUT,*) KORDER(1) = 4 KORDER(2) = 1 KORDER(3) = 2 IFAIL = 1 * CALL G02CEF(N,XBAR,STD,SSP,LDSSP,R,LDR,M,KORDER,XBAR2,STD2,SSP2, + LDSSP2,R2,LDR2,IFAIL) * IF (IFAIL.NE.0) THEN WRITE (NOUT,*) WRITE (NOUT,99997) ' ** G02CEF returned with IFAIL = ', IFAIL ELSE WRITE (NOUT,99996) 'New vector XBAR2 : ', (XBAR2(I),I=1,M) WRITE (NOUT,*) WRITE (NOUT,99996) 'New vector STD2 : ', (STD2(I),I=1,M) WRITE (NOUT,*) WRITE (NOUT,*) 'New matrix SSP2 :' WRITE (NOUT,99995) ((SSP2(I,J),J=1,M),I=1,M) WRITE (NOUT,*) WRITE (NOUT,*) 'New matrix R2 :' WRITE (NOUT,99995) ((R2(I,J),J=1,M),I=1,M) END IF * 99999 FORMAT (1X,A,4F10.4) 99998 FORMAT (1X,4F10.4) 99997 FORMAT (1X,A,I5) 99996 FORMAT (1X,A,3F10.4) 99995 FORMAT (1X,3F10.4) END