Блок Autocorrelation вычисляет автокорреляцию по первому измерению входного -мерного массива. Вычисление может быть выполнено во временной или частотной области.
Реализован метод расчета автокорреляции во временной области — входной сигнал коррелирует с его комплексным сопряжением, обращенным во времени.
Вы можете указать максимальную задержку для автокорреляции, используя параметры Compute all non-negative lags и Maximum non-negative lag.
Выходной сигнал, который содержит автокорреляцию входных данных.
Когда входной сигнал представляет собой матрицу размерностью на , вывод представляет собой матрицу размерностью на , где — максимальная положительная задержка для автокорреляции.
Когда входной сигнал представляет собой -мерный массив, блок выводит -мерный массив. Размер первого измерения равен , а размеры всех остальных измерений совпадают с размерами входного массива. Например, когда входным сигналом является массив на на , блок выводит массив на на .
Типы данных
Float64
Поддержка комплексных чисел
Да
Параметры
Основные
#Compute all non-negative lags —
вычисление автокорреляции по всем неотрицательным задержкам
Logical
Details
Когда этот флажок установлен, блок Autocorrelation вычисляет автокорреляцию по всем неотрицательным задержкам в диапазоне [0, length(input) − 1].
Когда флажок снят, блок вычисляет автокорреляцию, используя задержки в диапазоне [0, l], где l — значение параметра Maximum non-negative lag.
Значение по умолчанию
true (включено)
Имя для программного использования
ComputeAllNonNegativeLags
Настраиваемый
Нет
Вычисляемый
Нет
#Maximum non-negative lag —
максимальная положительная задержка
Int64 integer
Details
Максимальная положительная задержка для автокорреляции, заданная как целое число, которое больше или равно нулю и меньше входной длины.
Зависимости
Чтобы использовать этот параметр, снимите флажок Compute all non-negative lags.
Значение по умолчанию
1
Имя для программного использования
MaximumNonNegativeLag
Настраиваемый
Нет
Вычисляемый
Да
#Scaling —
масштабирование выходных данных
None | Biased | Unbiased | Unity at zero-lag
Details
Масштабирование, применяемое к выходным данным.
None — генерирует необработанную автокорреляцию без нормализации.
Unity at zero-lag — нормализует оценку автокорреляции для каждого канала таким образом, чтобы сумма с нулевой задержкой, первый элемент в каждом столбце, была идентична 1
Значения
None | Biased | Unbiased | Unity at zero-lag
Значение по умолчанию
None
Имя для программного использования
Scaling
Настраиваемый
Нет
Вычисляемый
Нет
Дополнительно
Автокорреляция
Details
Автокорреляция — это корреляция сигнала с самим собой в разные моменты времени.
Для детерминированной последовательности дискретного времени автокорреляция вычисляется с использованием следующего соотношения:
где — задержка, а обозначает комплексное сопряжение. Если входным сигналом является реализация стационарного в широком смысле (Wide-Sense Stationary, WSS) случайного процесса длиной , то является оценкой теоретической автокорреляции:
где — оператор математического ожидания.
Нормализация Unity at zero-lag делит каждое значение последовательности на автокорреляцию или оценку автокорреляции при нулевом запаздывании.
Наиболее часто используемой оценкой теоретической автокорреляции случайного процесса WSS является смещенная оценка:
Алгоритмы
Последовательность отсчетов (или значений) автокорреляции вычисляется с использованием этого уравнения:
где
— элемент с нулевой задержкой в -м столбце входных данных;
— индекс запаздывания;
— индекс столбца входных данных;
— комплексное сопряжение;
— количество элементов в каждом столбце;
— входная матрица на ;
— максимальная положительная задержка для автокорреляции.
Когда вы решите вычислить автокорреляцию со всеми неотрицательными задержками, . В противном случае — это максимальное указанное значение неотрицательного целого числа.