Блок Moving RMS рассчитывает скользящее среднеквадратичное значение входного сигнала по каждому каналу независимо от времени.
Для вычисления скользящего среднеквадратичного значения блок использует либо метод скользящего окна, либо метод экспоненциального взвешивания.
В методе скользящего окна окно заданной длины перемещается по данным шаг за шагом, и блок вычисляет среднеквадратичное значение по данным в окне.
В методе экспоненциального взвешивания блок возводит в квадрат последовательные значения входного сигнала, умножает их на набор весовых коэффициентов и суммирует взвешенные данные. Затем блок вычисляет среднеквадратичное значение, извлекая квадратный корень из суммы.
Более подробно об этих методах см. в разделе Алгоритмы.
Блок вычисляет скользящее среднее значение данных, указанных на входном порту. Блок принимает многоканальные входные данные размерностью на , где и , с вещественными или комплексными значениями.
Если флажок Allow arbitrary frame length for fixed-size input signals показан, но не установлен, и входной сигнал имеет фиксированный размер, то длина кадра должна быть кратна размеру скачка, который определяется как разница между длиной окна и длиной перекрытия. Во всех остальных случаях длина входного кадра может быть произвольной.
Блок принимает входные сигналы переменного размера (длина кадра изменяется в процессе моделирования). При подаче сигнала переменного размера длина кадра сигнала может быть произвольной.
Этот порт не имеет названия, пока для параметра Method не установлено значение Exponential weighting и не установлен флажок Specify forgetting factor from input port.
Коэффициент забывания, заданный как положительный вещественный скаляр от 0 до 1, определяет, какой вес имели прошлые данные. При коэффициенте забывания 0.9 старые данные имеют больший вес, чем при коэффициенте забывания 0.1. Коэффициент забывания 1.0 означает бесконечную память — все предыдущие выборки имеют одинаковый вес.
Зависимости
Чтобы использовать этот порт, установите для параметра Method значение Exponential weighting и установите флажок Specify forgetting factor from input port.
# OUT_1
—
вывод скользящего среднего
вектор | матрица
Details
Скользящее среднее, возвращаемое в виде вектора или матрицы. Блок вычисляет скользящее среднее на основе настроек параметра Method, используя либо метод скользящего окна, либо метод экспоненциального взвешивания.
В таблице приведены подробные сведения о размерах выходного сигнала.
Входной сигнал
Размеры входного сигнала
Размеры выходного сигнала
Флажок Allow arbitrary frame length for fixed-size input signals показан
Флажок Allow arbitrary frame length for fixed-size input signals не показан
Сигнал фиксированного размера
на , где кратно размеру скачка (длина окна — длина перекрытия)
(размер скачка) на
на
Сигнал фиксированного размера
на , где не кратно размеру скачка (длина окна — длина перекрытия)
ceil(размер скачка) на в случае, если флажок Allow arbitrary frame length for fixed-size input signals установлен. Если этот флажок снят, то блок выдает ошибку
на
Сигнал переменного размера
на
ceil(размер скачка) на
на
Когда выход имеет верхнюю границу размера ceil(размер скачка) на , во время моделирования размер первого измерения изменяется в пределах этой границы, а размер второго измерения остается постоянным.
#Method —
метод осреднения
Sliding window | Exponential weighting
Details
Sliding window — окно длиной Window length перемещается по входным данным вдоль каждого канала. Для каждой выборки, по которой перемещается окно, блок вычисляет среднее значение по данным в окне.
Exponential weighting — блок умножает выборки на набор весовых коэффициентов. Величина весовых коэффициентов экспоненциально уменьшается по мере увеличения возраста данных, но величина никогда не достигает нуля. Для вычисления среднего значения алгоритм суммирует взвешенные данные.
Значения
Sliding window | Exponential weighting
Значение по умолчанию
Sliding window
Имя для программного использования
Method
Настраиваемый
Нет
Вычисляемый
Нет
#Specify window length —
указать длину окна
Logical
Details
Если установить этот флажок, длина скользящего окна будет равна значению, установленному для параметра Window length. Если снять этот флажок, длина скользящего окна будет бесконечной. В этом режиме блок вычисляет среднее значение текущей выборки и всех предыдущих выборок в канале.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Sliding window.
Значение по умолчанию
true (включено)
Имя для программного использования
SpecifyWindowLength
Настраиваемый
Нет
Вычисляемый
Нет
#Window length —
длина скользящего окна
Int64 integer
Details
Указывает длину скользящего окна в выборках.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Sliding window и установите флажок Specify window length.
Значение по умолчанию
4
Имя для программного использования
WindowLength
Настраиваемый
Нет
Вычисляемый
Да
#Overlap length —
длина перекрытия между окнами
Int64 integer
Details
Указывает длину перекрытия между окнами как целое неотрицательное число. Значение длины перекрытия варьируется в диапазоне от 0 до Window length − 1.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Sliding window и установите флажок Specify window length.
Значение по умолчанию
3
Имя для программного использования
OverlapLength
Настраиваемый
Нет
Вычисляемый
Да
#Allow arbitrary frame length for fixed-size input signals —
разрешить произвольную длину кадра для входных сигналов фиксированного размера
Logical
Details
Укажите, могут ли входные сигналы фиксированного размера (размер которых не меняется во время моделирования) иметь произвольную длину кадра, где длина кадра не обязательно должна быть кратна размеру скачка. Размер скачка определяется как разница значений параметров Window length и Overlap length. Блок использует этот параметр только для входных сигналов фиксированного размера и игнорирует его, если входной сигнал имеет переменный размер.
Когда входной сигнал имеет переменный размер, сигнал может иметь произвольную длину кадра, то есть длина кадра не должна быть кратна размеру скачка.
Для входных сигналов фиксированного размера:
Если флажок Allow arbitrary frame length for fixed-size input signals установлен, длина кадра сигнала не обязательно должна быть кратна размеру скачка. Если входной сигнал не кратен размеру скачка, то на выходе обычно получается сигнал переменного размера. Поэтому для поддержки произвольного размера входного сигнала блок должен также поддерживать операции с переменным размером, что можно включить, установив флажок Allow arbitrary frame length for fixed-size input signals.
Если флажок Allow arbitrary frame length for fixed-size input signals снят, то длина входного кадра должна быть кратна размеру скачка.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Sliding window и установите флажок Specify window length.
Значение по умолчанию
false (выключено)
Имя для программного использования
AllowArbitrary
Настраиваемый
Нет
Вычисляемый
Нет
#Specify forgetting factor from input port —
указать коэффициент забывания через входной порт
Logical
Details
При установке этого флажка коэффициент забывания вводится через порт λ. Если снять этот флажок, коэффициент забывания задается через параметр Forgetting factor.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Exponential weighting.
Значение по умолчанию
false (выключено)
Имя для программного использования
SpecifyForgettingFactorInput
Настраиваемый
Нет
Вычисляемый
Нет
#Forgetting factor —
экспоненциальный весовой коэффициент
Real number
Details
Коэффициент забывания определяет, какой вес имели прошлые данные. При коэффициенте забывания 0.9 старые данные имеют больший вес, чем при коэффициенте забывания 0.1. Коэффициент забывания 1.0 означает бесконечную память — все предыдущие выборки имеют одинаковый вес.
Зависимости
Чтобы использовать этот параметр, установите для параметра Method значение Exponential weighting и снимите флажок Specify forgetting factor from input port.
Значение по умолчанию
0.9
Имя для программного использования
ForgettingFactor
Настраиваемый
Нет
Вычисляемый
Да
Алгоритмы
Метод скользящего окна
Details
В методе скользящего окна выходной сигнал для каждой входной выборки представляет собой среднее значение текущей выборки и предыдущих выборок, где — это длина окна в выборках. Чтобы вычислить первую входную выборку, алгоритм ждет, пока не получит количество входных выборок размером в скачок. Размер скачка определяется как разница длины окна и длины перекрытия. Оставшиеся выборки в окне считаются нулевыми. Например, если длина окна равна 5, а длина перекрытия — 2, то алгоритм ждет, пока не получит 3 входных выборки, чтобы вычислить первую выборку выходного сигнала. После генерации первого выходного сигнала он генерирует последующие выходные выборки для каждого количества входных выборок размером в скачок.
Если длина окна не указана, алгоритм выбирает бесконечную длину окна. В этом режиме выходом является скользящее среднее текущей выборки и всех предыдущих выборок в канале.
Метод экспоненциального взвешивания
Details
В методе экспоненциального взвешивания скользящее среднее вычисляется рекурсивно по следующим формулам:
где
— cкользящее среднее по текущей выборке;
— текущая выборка ввода данных;
— скользящее среднее по предыдущей выборке;
— коэффициент забывания;
— весовой коэффициент, применяемый к текущей выборке данных;
— влияние предыдущих данных на среднее значение.
Для первой выборки, где , алгоритм выбирает . Для следующей выборки весовой коэффициент обновляется и используется для вычисления среднего, согласно рекурсивному уравнению. С увеличением возраста данных величина весового коэффициента экспоненциально уменьшается и никогда не достигает нуля. Другими словами, последние данные оказывают большее влияние на текущее среднее значение, чем старые.
Коэффициент забывания определяет, какой вес имели прошлые данные. При коэффициенте забывания 0.9 старые данные имеют больший вес, чем при коэффициенте забывания 0.1. Коэффициент забывания 1.0 означает бесконечную память — все предыдущие выборки имеют одинаковый вес.