Документация Engee

corrmtx

Матрица данных для оценки автокорреляционной матрицы.

Библиотека

EngeeDSP

Синтаксис

Вызов функции

  • H,r = corrmtx(x,m) — возвращает прямоугольную матрицу Тёплица H размером (n+m)×(m+1) такую, что HTH является оценкой смещенной автокорреляционной матрицы для входного вектора x. Значение n — длина вектора x, m — порядок модели прогнозирования, а HT — сопряженное транспонирование H.

    Также возвращает оценку автокорреляционной матрицы r размером (m+1)×(m+1), вычисленную как HTH.

  • H,r = corrmtx(x,m,method) — вычисляет матрицу H в соответствии с методом, указанным в аргументе method.

Аргументы

Входные аргументы

# x — входные данные
вектор

Details

Входные данные, заданные как вектор.

# m — порядок модели предсказания
положительное вещественное целое число

Details

Порядок модели предсказания, заданный как положительное вещественное целое число.

# method — метод вычисления матрицы
"autocorrelation" (по умолчанию) | "prewindowed" | "postwindowed" | "covariance" | "modified"

Details

Метод вычисления матрицы, заданный одним из следующих значений:

  • "autocorrelation" (по умолчанию)

    H — это прямоугольная матрица Тёплица размером (n+m)×(m+1), которая генерирует оценку автокорреляции для вектора данных x длиной n, полученную с использованием данных до и после оконной обработки на основе модели прогнозирования m-го порядка. Матрица может быть использована для оценки параметров авторегрессионной модели с помощью метода Юла — Уокера.

  • "prewindowed"

    H — это прямоугольная матрица Тёплица размером n×(m+1), которая генерирует оценку автокорреляции для вектора данных x длиной n, полученную с использованием данных до оконной обработки на основе модели прогнозирования m-го порядка.

  • "postwindowed"

    H — это прямоугольная матрица Тёплица размером n×(m+1), которая генерирует оценку автокорреляции для вектора данных x длиной n, полученную с использованием данных после оконной обработки на основе модели прогнозирования m-го порядка.

  • "covariance"

    H — это прямоугольная матрица Тёплица размером (n−m)×(m+1), которая генерирует оценку автокорреляции для вектора данных x длиной n, полученную с использованием неоконных данных на основе модели прогнозирования m-го порядка. Матрица может быть использована для выполнения авторегрессионной оценки параметров с помощью метода ковариации.

  • "modified"

    H — это модифицированная прямоугольная матрица Тёплица размером 2(n−m)×(m+1), которая генерирует оценку автокорреляции для вектора данных x длиной n, полученную с использованием оценок ошибок прогнозирования вперед и назад на основе модели прогнозирования m-го порядка. Матрица может быть использована для выполнения авторегрессионной оценки параметров с использованием модифицированного метода ковариации.

Выходные аргументы

# H — матрица данных
матрица

Details

Матрица данных, возвращаемая для определения автокорреляционной матрицы. Размер H зависит от метода вычисления матрицы, указанного в аргументе method.

# r — смещенная автокорреляционная матрица
матрица

Details

Смещенная автокорреляционная матрица, возвращаемая в виде прямоугольной матрицы Тёплица размером (m+1)×(m+1).

Примеры

Модифицированные данные и матрицы автокорреляции

Details

Сгенерируем сигнал, состоящий из трех комплексных экспоненциальных функций, к которым добавлен белый гауссовский шум. Вычислим матрицы данных и автокорреляции, используя модифицированный метод.

import EngeeDSP.Functions: corrmtx, randn

n = 0:99
s = exp.(im * pi/2 .* n)' + 2 .* exp.(im * pi/4 .* n)' + exp.(im * pi/3 .* n)' + randn(1, 100)
m = 12
X,R = corrmtx(s,m,"modified")

Построим графики вещественной и мнимой частей матрицы автокорреляции.

A = repeat(1:m+1, 1, m+1)
B = repeat((1:m+1)', m+1, 1)
p1 = plot(A, B, real(R), st=:surface, title="Re(R)")
p2 = plot(A, B, imag(R), st=:surface, title="Im(R)")
plot(p1, p2, layout=(2,1))

corrmtx 1

Алгоритмы

Матрица данных Тёплица, вычисляемая с помощью функции corrmtx, зависит от выбранного метода. Матрица, определяемая автокорреляционным методом (по умолчанию), имеет вид:

В матрице — значение входного аргумент m, а — длина входного вектора x. Вариации этой матрицы используются для выходного аргумента H для каждого метода:

  • "autocorrelation" (по умолчанию) — H .

  • "prewindowed"H подматрица размером , первая строка которой — , а последняя строка — .

  • "postwindowed"H подматрица размером , первая строка которой — , а последняя строка — .

  • "covariance"H подматрица размером , первая строка которой — , а последняя строка — , умноженная на .

  • "covariance"H матрица размером , определяемая следующим образом:

Литература

  1. Marple S. Lawrence, Digital Spectral Analysis: With Applications, Prentice-Hall Signal Processing Series, Englewood Cliffs, N.J: Prentice-Hall, 1987.