Автокорреляция N -D массива
Системный тулбокс/статистика DSP
Блок Autocorrelation вычисляет автокорреляцию по первой размерности входного массива N -D. Расчет можно выполнить в временной интервал или частотный диапазон. Вы можете задать область через параметр Computation domain. Во временном интервале входной сигнал свертывается с его обращенным во времени комплексным сопряженным. В частотный диапазон блок вычисляет автокорреляцию, взяв преобразование Фурье входного сигнала, умножив преобразование Фурье с его сопряженным и вычислив обратное преобразование Фурье продукта. В этом домене, в зависимости от длины входа, блок может потребовать меньше расчетов. Для получения информации об этих двух методах расчета, см. Алгоритмы.
Можно задать максимальную задержку для автокорреляции, используя параметры Compute all non-negative lags и Maximum non-negative lag (less than input length).
Блок принимает сигналы с фиксированной точкой, когда вы устанавливаете Computation domain на Time.
Port_1 - Вход данныхВвод данных. Блок принимает реальные или комплексные многоканальные и многомерные входы. Вход может быть сигналом с фиксированной точкой, когда вы устанавливаете Computation domain на Time.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Поддержка комплексного числа: Да
Port_1 - Автокоррелированный выходАвтокоррелированный выход входных данных.
Когда вход является M -by- N матрицей, u, выход, y, является (l + 1) -by- N матрицей. l является максимальной положительной задержкой для автокорреляции.
Когда вход является массивом N -D, блок выводит массив N -D. Размер первой размерности составляет l + 1, а размеры всех других размерностей совпадают с размерами массива входа. Для примера, когда вход является M -by- N -by- P массивом, блок выводит (l + 1) -by- N -by- P массив.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Поддержка комплексного числа: Да
Compute all non-negative lags - Вычисление автокорреляции по всем неотрицательным лагамКогда вы выбираете этот параметр, блок Autocorrelation вычисляет автокорреляцию по всем неотрицательным лагам в области значений [0, length(input) – 1]. Когда вы очищаете этот параметр, блок вычисляет автокорреляцию с помощью лагов в области значений [0, l], где l является значением, заданным вами в Maximum non-negative lag (less than input length).
Maximum non-negative lag (less than input length) - Максимальная положительная задержка1 (по умолчанию) | целое число, больше или равное 0 и меньше входной длиныМаксимальная положительная задержка для автокорреляции, заданная как целое число, которое больше или равно 0 и меньше, чем длина входа.
Чтобы включить этот параметр, очистите параметр Compute all non-negative lags.
Scaling - Масштабирование выходаNone (по умолчанию) | Biased | Unbiased | Unity at zero-lagМасштабирование, примененное к выходу.
None - Генерирует необработанную автокорреляционную yi,j без нормализации.
Biased - Генерирует смещенную оценку автокорреляции.
Unbiased - Генерирует объективную оценку автокорреляции.
Unity at zero-lag - Нормирует оценку автокорреляции для каждого канала так, чтобы сумма нулевой задержки, первый элемент в каждом столбце, был идентичен 1.
Computation domain - Область, в котором блок вычисляет автокорреляциюTime (по умолчанию) | Frequency
Time - Вычисляет свертки во временном интервале, что минимизирует использование памяти.
Frequency - Вычисляет автокорреляцию в частотном диапазоне. Для получения дополнительной информации см. «Алгоритмы».
Чтобы автокоррелировать сигналы с фиксированной точкой, установите этот параметр равным Time.
Примечание
Сигналы с фиксированной точкой поддерживаются только во временном интервале. Чтобы использовать эти параметры, на вкладке Main установите Computation domain равным Time.
Rounding mode - Метод округленияFloor (по умолчанию) | Ceiling | Convergent | Nearest | Round | Simplest | ZeroЗадайте режим округления для операций с фиксированной точкой как один из следующих:
Floor
Ceiling
Convergent
Nearest
Round
Simplest
Zero
Для получения дополнительной информации смотрите режим округления.
Примечание
Параметры Rounding mode и Saturate on integer overflow не влияют на числовые результаты, когда все эти условия выполняются:
Product output данных Inherit: Inherit via internal rule.
Accumulator данных Inherit: Inherit via internal rule.
Output данных Inherit: Same as accumulator.
С этими настройками типа данных блок работает в режиме полной точности.
Saturate on integer overflow - Метод действия переполненияКогда вы выбираете этот параметр, блок насыщает результат своей операции с фиксированной точкой. Когда вы очищаете этот параметр, блок переносит результат своей операции с фиксированной точкой. Для получения дополнительной информации о saturate и wrap, см. Режим переполнения для операций с фиксированной точкой.
Примечание
Параметры Rounding mode и Saturate on integer overflow не влияют на числовые результаты, когда все эти условия выполняются:
Product output данных Inherit: Inherit via internal rule.
Accumulator данных Inherit: Inherit via internal rule.
С этими настройками типа данных блок работает в режиме полной точности.
Product output - Тип выходных данных продуктаInherit: Inherit via internal rule (по умолчанию) | Inherit: Same as input | fixdt([],16,0)Product output задает тип данных выхода операции продукта в блоке Autocorrelation. Для получения дополнительной информации о типе выходных данных продукта, смотрите Типы данных умножения и раздел 'Преобразование с фиксированной точкой' в Расширенных возможностях.
Inherit: Inherit via internal rule - Блок наследует тип выходных данных продукта на основе внутреннего правила. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.
Inherit: Same as input - Блок задает тип выходных данных продукта, который должен совпадать с типом входных данных.
fixdt([],16,0) - блок задает автознаковый, двоичный, масштабированный, тип данных с фиксированной точкой с размером слова 16 бит и длиной дроби 0.
Также можно задать тип данных Product output при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant
.
Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).
Accumulator - Тип данных аккумулятораInherit: Inherit via internal rule (по умолчанию) | Inherit: Same as input | Inherit: Same as product output | fixdt([],16,0)Accumulator задает тип данных выхода операции накопления в блоке Autocorrelation. Для рисунков о том, как использовать тип данных аккумулятора в этом блоке, смотрите раздел 'Преобразование фиксированной точки' в Extended Capabilities.
Inherit: Inherit via internal rule - Блок наследует тип данных аккумулятора на основе внутреннего правила. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.
Inherit: Same as input - Блок задает тип данных аккумулятора таким же, как и тип входных данных.
Inherit: Same as product output - Блок задает тип данных аккумулятора таким же, как и тип выходных данных продукта.
fixdt([],16,0) - блок задает автознаковый, двоичный, масштабированный, тип данных с фиксированной точкой с размером слова 16 бит и длиной дроби 0.
Также можно задать тип данных Accumulator при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant
.
Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).
Output - Тип выходных данныхInherit: Same as accumulator (по умолчанию) | Inherit: Same as input | Inherit: Same as product output | fixdt([],16,0)Output задает тип данных выхода блока Autocorrelation. Для получения дополнительной информации о типе выходных данных смотрите раздел 'Преобразование с фиксированной точкой' в Extended Capabilities.
Inherit: Same as input - Блок задает тип выходных данных, совпадающий с типом входных данных.
Inherit: Same as product output - Блок задает тип выходных данных, совпадающий с типом выходных данных продукта.
Inherit: Same as accumulator - Блок задает тип выходных данных, совпадающий с типом данных аккумулятора.
fixdt([],16,0) - блок задает автознаковый, двоичный, масштабированный, тип данных с фиксированной точкой с размером слова 16 бит и длиной дроби 0.
Также можно задать тип данных Output при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant
.
Дополнительные сведения о помощнике по типам данных см. в разделе «Задание типов данных с использованием помощника по типам данных» (Simulink).
Output Minimum - Минимальное значение, которое может вывести блок[] (по умолчанию) | скаляромЗадайте минимальное значение, которое может вывести блок. Simulink® программное обеспечение использует это минимальное значение для выполнения:
Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).
Автоматическое масштабирование типов данных с фиксированной точкой.
Output Maximum - Блок максимального значения может выводить[] (по умолчанию) | скаляромЗадайте максимальное значение, которое может вывести блок. Программное обеспечение Simulink использует это максимальное значение для выполнения:
Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).
Автоматическое масштабирование типов данных с фиксированной точкой.
Lock data type settings against changes by the fixed-point tools - Предотвратить переопределение типов данных инструментами с фиксированной точкойoff (по умолчанию) | onВыберите этот параметр, чтобы предотвратить переопределение инструментами с фиксированной точкой типов данных, заданных в диалоговом окне блока.
Типы данных |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Автокорреляция является корреляцией сигнала с ним самим в различные точки времени.
Для детерминированной последовательности в дискретном времени, x(n), автокорреляция вычисляется с помощью следующей зависимости:
где h - задержка, а * обозначает комплексный сопряженный. Если вход является длиной N реализацией стационарного случайного процесса WSS, rx (h) является оценкой теоретической автокорреляции:
где E {} является оператором ожидания. The Unity at zero-lag нормализация делит каждое значение последовательности на автокорреляционную или автокорреляционную оценку при нулевой задержке.
Наиболее часто используемой оценкой теоретической автокорреляции случайного процесса WSS является смещенная оценка:
Когда вы устанавливаете область расчетов во время, алгоритм вычисляет автокорреляцию входного сигнала во временном интервале. Входной сигнал может быть сигналом с фиксированной точкой в этой области.
Автокорреляционная последовательность, y, вычисляется с помощью этого уравнения:
y0,j - элемент нулевой задержки в j-м столбце входа.
i - индекс задержки.
j - индекс столбца входных данных.
* обозначает комплексный сопряженный.
M - количество элементов в каждом столбце.
l является максимальной положительной задержкой для автокорреляции. Когда вы принимаете решение вычислить автокорреляцию со всеми неотрицательными лагами, l = M -1. В противном случае l является заданным максимальным неотрицательным значением целочисленной задержки.
u является M -by N входной матрицей.
Когда вы устанавливаете расчету область на частоту, алгоритм вычисляет автокорреляцию в частотный диапазон.
В этой области алгоритм вычисляет автокорреляционную последовательность, взяв преобразование Фурье входного сигнала, умножив преобразование Фурье с его комплексным сопряженным и взяв обратное преобразование Фурье продукта. В этой области, в зависимости от длины входа, алгоритм может потребовать меньше расчетов.
Сгенерированный код опирается на memcpy или memset функции (string.h) при определенные обстоятельства.
Эти схемы показывают типы данных, которые блок Autocorrelation использует для сигналов с фиксированной точкой (только во временной области).


Можно задать выходы продукта, накопитель и типы выходных данных на вкладке Data Types блока.
Когда вход действителен, выход умножителя находится в типе выходных данных продукта. Когда вход комплексен, выход умножения находится в типе данных аккумулятора. Для получения дополнительной информации о выполненном комплексном умножении смотрите Типы данных умножения.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.