CTITLEOPFILT -- COMPUTE SOLUTION TO WEINER-LEVINSON EQUATIONS 00010000 C*********************************************************************** C COPYRIGHT ATLANTIC RICHFIELD COMPANY 1991 * C*********************************************************************** CA AUTHOR STU NELAN 00020000 CA DESIGNER STU NELAN 00030000 CA LANGUAGE FORTRAN 00040000 CA SYSTEM IBM (SEE CRAY SYSTEM LIBRARY) 00050000 CA WRITTEN 02-19-86 00060000 C REVISED 04-28-87 ESN. CALL SWLEV INSTEAD OF LEVINE. 00070000 CA 00080000 CA 00090000 CA CALL OPFILT (M, A, B, C, R) 00100000 CA INPUT M = ORDER OF SYSTEM OF EQUATIONS I4 00110000 CA OUTPUT A = OUTPUT VECTOR OF FILTER COEFFICIENTS R4 00120000 CA INPUT B = INFORMATION AUTO-CORRELATION VECTOR R4 00130000 CA INPUT C = SCRATCH VECTOR OF LENGTH 2M R4 00140000 CA INPUT R = SIGNAL AUTO-CORRELATION VECTOR R4 00150000 CA 00160000 CA 00170000 CA OPFILT SIMULATES THE CRAY OPFILT ROUTINE TO COMPUTE THE 00180000 CA SOLUTION TO THE WEINER-LEVINSON SYSTEM OF LINEAR EQUATIONS 00190000 CA TA=B WHERE T IS A TOEPLITZ MATRIX IN WHICH ELEMENTS ARE 00200000 CA DESCRIBED BY 00210000 CA T(I,J) = R(K) FOR IABS(J-I)+1 = K 00220000 CA AND K = 1,...,M 00230000 CAEND 00240000 SUBROUTINE OPFILT (M, A, B, C, R) 00250000 C 00260000 REAL A (1) 00270000 REAL B (1) 00280000 REAL C (1) 00290000 REAL R (1) 00300000 C 00310000 C CALL LEVINE (M, A, R, B, C, C(M+1)) 00320000 J = 1 00330000 I = LOC(C(1)) 00340000 IF ((I/8)*8 .NE. I) J = 2 00350000 CALL SWLEV (R, 1, B, 1, A, 1, M, C(J), 3*M) 00360000 C 00370000 RETURN 00380000 C 00390000 END 00400000