Engee documentation

ac2poly

Transformation of an autocorrelation sequence into a predictive filter polynomial.

Library

EngeeDSP

Syntax

Function call

  • a,eFinal = ac2poly(ac) — returns the coefficients of the predictive filter a from the autocorrelation sequence ac and the final prediction error eFinal, determined as a result of the operation of the predictive filter for length(ac) steps.

Arguments

Input arguments

# ac — autocorrelation sequence

+ vector | the matrix

Details

An autocorrelation sequence given as a vector or matrix.

If you specify an argument ac as a matrix, the function ac2poly will consider each column ac as a separate channel.

Data types

Float32, Float64

Support for complex numbers

Yes

Output arguments

# a — coefficients of the predictive filter

+ vector | the matrix

Details

Coefficients of the predictive filter returned as a string vector with the same number of elements as in the argument ac, or in the form of a matrix with as many rows as channels are defined in the argument ac. The function returns the first column a How 1, thus a[1] = 1 if a is a string vector.

Polynomial a represents the coefficients of a predictive filter that outputs a signal with an autocorrelation sequence approximately equal to ac.

# eFinal — power of finite prediction error

+ scalar

Details

The power of the final prediction error, returned as a scalar.

Examples

Polynomial of a predictive filter based on an autocorrelation sequence

Details

Let an autocorrelation sequence be given ac, we define an equivalent polynomial of a linear predictive filter and a finite prediction error.

import EngeeDSP.Functions: ac2poly

ac = [5.0000 -1.5450 -3.9547 3.9331 1.4681 -4.7500]

a, efinal = ac2poly(ac)

println("a = ", a, "\neFinal = ", efinal)
a = [1.0 0.6147394267420019 0.9898137123620191 0.00042096865645934855 0.003444720005228037 -0.007709673467442522]
eFinal = 0.17914515163827727

Literature

  1. Kay, Steven M. Modern Spectral Estimation. Englewood Cliffs, NJ: Prentice-Hall, 1988.