Window Function

Вычислите и примените окно к входному сигналу

  • Библиотека:
  • DSP System Toolbox / Операции Сигнала

  • Window Function block

Описание

Функциональный блок Окна имеет три режима работы, которые позволяют вам применить окно, или вычислить окно, или вычислить и применить окно к входному сигналу. Можно выбрать режим через параметр Operation. В каждом режиме блок сначала создает вектор окна w путем выборки окна, заданного в параметре Window type.

Порты

Входной параметр

развернуть все

Входной сигнал в виде вектора, матрицы или N-D массив. Когда вход является фиксированной точкой, он может быть подписан только.

Этот порт включен только, когда вы устанавливаете Operation на любой Apply window to input или Generate and apply window.

Этот порт без имени, когда вы устанавливаете Operation на Apply window to input.

Типы данных: single | double | int8 | int16 | int32 | fixed point

Вывод

развернуть все

Выходной сигнал, возвращенный как вектор, матрица или N-D массив.

Порт Out включен только, когда Operation установлен в:

  • Apply window to input – Блок вычисляет M-by-1 вектор окна w и применяет его к M-by-N вход, где M является количеством строк во входном сигнале.

  • Generate and apply window – Блок генерирует M-by-1 вектор окна w и применяет его к входу.

Выходной сигнал имеет те же размерности как входной сигнал. Для получения дополнительной информации смотрите Операцию.

Типы данных: single | double | int8 | int16 | int32 | fixed point

Window выходной параметр, возвращенный как вектор. Когда Operation установлен в Apply window to input или Generate and apply window, вектор окна имеет ту же длину как количество строк во входном сигнале. Когда Operation установлен в Generate window, длина вектора окна определяется параметром Window length.

Типы данных: single | double | int8 | int16 | int32 | fixed point

Параметры

развернуть все

Основной

Блок Window Function имеет три режима работы, которые можно выбрать через параметр Operation. В каждом режиме блок сначала создает вектор окна w путем выборки окна, заданного в параметре Window type в дискретных точках M. Режимы работы:

  • Apply window to input

    В этом режиме блок вычисляет M-by-1 вектор окна w и применяет его к входу. Выход y всегда имеет ту же размерность как вход.

    Когда входом является M-by-N матричный u, окно умножается поэлементное с каждым из каналов N во входной матрице u. Это эквивалентно следующему коду MATLAB®:

    y = repmat(w,1,N) .* u								% Equivalent MATLAB code
    

    Окно всегда применяется к первой размерности:

    y(i,j,...,k)=w(i)*u(i,j,...,k)       i=1,...,M,  j=1,...,N,  ...,  k=1,...,P

    Длина-M, неориентированная на векторный вход, обработана как M-by-1 вектор.

  • Generate window

    В этом режиме блок генерирует неориентированный вектор окна w с длиной M, заданный параметром Window length. Порт In отключен для этого режима.

  • Generate and apply window

    В этом режиме блок генерирует M-by-1 вектор окна w и применяет его к входу. Блок производит два выходных параметров:

    • В порте Out блок приводит к результату умножения y, который имеет ту же размерность как вход.

    • В порте Win блок производит M-by-1 вектор окна w.

    Когда входом является M-by-N матричный u, окно умножается поэлементное с каждым из каналов N во входной матрице u. Это эквивалентно следующему коду MATLAB:

    y = repmat(w,1,N) .* u								% Equivalent MATLAB code
    

    Окно всегда применяется к первой размерности:

    y(i,j,...,k)=w(i)*u(i,j,...,k)       i=1,...,M,  j=1,...,N,  ...,  k=1,...,P

    Длина-M 1D векторный вход обработана как M-by-1 вектор.

Эта таблица приводит доступные типы окна.

Тип окнаОписание

Бартлетт

Вычисляет окно Бартлетта.

w = bartlett(M)

Блэкмен

Вычисляет окно Блэкмена.

w = blackman(M)

Серия длинных импульсов

Вычисляет прямоугольное окно.

w = rectwin(M)

Чебышев

Вычисляет Окно Чебышева с пульсацией полосы задерживания R.

w = chebwin(M,R)

Хэмминг

Вычисляет Окно Хэмминга.

w = hamming(M)

Hann

Вычисляет окно Hann (также известный как окно Хеннинга).

w = hann(M)

Хеннинг

Устаревший. Этот тип окна включен только для совместимости с более старыми моделями. Используйте Hann Window type вместо Hanning когда это возможно.

Кайзер

Вычисляет окно Кайзера параметром Кайзера beta.

w = kaiser(M,beta)

Тейлор

Вычисляет окно Тейлора.

w = taylorwin(M)

Трян

Вычисляет треугольное окно.

w = triang(M)

Определяемый пользователем

Вычисляет пользовательскую функцию окна, заданную записью в параметре Window function name, usrwin.

w = usrwin(M) % Window takes no extra parameters
w = usrwin(M,x1,...,xn) % Window takes extra 
parameters {x1 ... xn}

Задайте выборку окна для окон сделанного вывод косинуса.

Для окон сделанного вывод косинуса (Blackman, Hamming, Hann, и Hanning), параметр Sampling определяет, вычисляются ли выборки окна в периодическом или симметричном способе. Например, когда Sampling установлен в Symmetric, Окно Хэмминга длины M вычисляется как:

w = hamming(M)					% Symmetric (aperiodic) window

Когда Sampling установлен в Periodic, то же окно вычисляется как:

w = hamming(M+1)					% Periodic (asymmetric) window
w = w(1:M)

Настраиваемый (Simulink) в симуляции только.

Зависимости

Этот параметр отображается только, когда вы выбираете Blackman, Hamming, Hann, или Hanning для параметра Window type.

Задайте демонстрационный режим для блока, Continuous или Discrete, когда это находится в Generate window режим. В Apply window to input и Generate and apply window режимы, блок наследовал демонстрационный режим от своего ведущего блока.

Зависимости

Этот параметр отображается только, когда вы выбираете Generate window для параметра Operation.

Задайте шаг расчета для блока, когда Operation будет установлен в Generate window и Sample mode установлен в Discrete. Когда Operation установлен в Apply window to input и Generate and apply window, блок наследовал шаг расчета от своего ведущего блока.

Зависимости

Этот параметр отображается только, когда вы устанавливаете Sample mode на Discrete.

Задайте длину окна, чтобы применяться.

Зависимости

Этот параметр отображается только, когда вы выбираете Generate window для параметра Operation. В противном случае длина вектора окна вычисляется, чтобы совпадать с длиной первой размерности входа.

Задайте уровень затухания в полосе задерживания R s в децибелах.

Настраиваемый (Simulink) в симуляции только.

Зависимости

Этот параметр отображается только, когда вы выбираете Chebyshev для параметра Window type.

Задайте Kaiser параметр окна β. Увеличение β расширяет mainlobe и уменьшает амплитуду боковых лепестков окна в ответе величины частоты окна.

Настраиваемый (Simulink) в симуляции только.

Зависимости

Этот параметр отображается только, когда вы выбираете Kaiser для параметра Window type.

Задайте количество боковых лепестков как скалярное целочисленное значение, больше, чем нуль.

Зависимости

Этот параметр отображается только, когда вы выбираете Taylor для параметра Window type.

Задайте в децибелах максимальный уровень бокового лепестка относительно mainlobe. Этот параметр должен быть скаляром, меньше чем или равным нулю. Значение по умолчанию –30 производит боковые лепестки с peaks 30 дБ вниз от пика mainlobe.

Зависимости

Этот параметр отображается только, когда вы выбираете Taylor для параметра Window type.

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

Зависимости

Этот параметр отображается только, когда вы выбираете User defined для параметра Window type.

Выберите, чтобы включить параметр Cell array of additional arguments, когда пользовательское окно потребует параметров кроме длины окна.

Зависимости

Этот параметр отображается только, когда вы выбираете User defined для параметра Window type.

Задайте дополнительные параметры, требуемые пользовательской функцией окна помимо длины окна.

Зависимости

Этот параметр только доступен, когда вы выбираете параметр Specify additional arguments to the hamming function. Запись должна быть массивом ячеек.

Типы данных

Когда параметр Operation на вкладке Main устанавливается на Generate window, следующие параметры появляются.

Задайте тип данных окна одним из следующих способов:

  • double

  • single

  • Fixed-point – Задавать тип данных окна и масштабирующийся в Signed, Word length, Set fraction length in output to и параметрах Fraction length.

  • User-defined – Задавать тип данных окна и масштабирующийся в User-defined data type, Set fraction length in output to и параметрах Fraction length.

  • Inherit via back propagation – Установить тип данных окна и масштабирующийся совпадать со следующим блоком.

Выберите, чтобы вывести сигнал фиксированной точки со знаком. В противном случае сигнал без знака.

Зависимости

Этот параметр появляется только, когда вы устанавливаете Window data type на Fixed-point.

Задайте размер слова типа данных окна фиксированной точки в битах.

Зависимости

Этот параметр отображается только, когда вы устанавливаете Window data type на Fixed-point.

Задайте любого встроенного или тип данных с фиксированной точкой. Можно задать типы данных с фиксированной точкой с помощью функций Fixed-Point Designer™ sfix (Simulink), ufix (Simulink), sint (Simulink), uint (Simulink), sfrac (Simulink), и ufrac (Simulink).

Зависимости

Этот параметр только отображается, когда вы устанавливаете Window data type на User-defined.

Задайте масштабирование типа данных окна фиксированной точки при помощи любого из этих методов:

  • Выберите Best precision чтобы иметь тип данных окна, масштабирующийся автоматически, устанавливает таким образом, что выходной сигнал имеет самую лучшую точность.

  • Выберите User-defined задавать тип данных окна, масштабирующийся в параметре Fraction length.

Зависимости

Этот параметр отображается только, когда вы устанавливаете Window data type на Fixed-point или User-defined, и когда заданный тип данных окна является типом данных с фиксированной точкой.

Задайте дробную длину типа данных окна фиксированной точки в битах.

Зависимости

Этот параметр отображается только, когда вы устанавливаете Window data type на Fixed-point или User-defined, и когда вы устанавливаете Set fraction length in output to на User-defined.

Когда параметр Operation на вкладке Main устанавливается на любой Apply window to input или Generate and apply window, следующие параметры появляются.

Выберите округляющийся режим для операций фиксированной точки.

Вектор окна w не выполняет этот параметр. Это всегда округляется к Nearest.

Примечание

Настройки Rounding mode и Overflow mode не оказывают влияния на числовые результаты, когда оба из этих условий существуют:

  • Product output является Inherit via internal rule

  • Output является Same as product output

С этими настройками типа данных блок эффективно действует в режиме максимальной точности.

Выберите режим переполнения для операций фиксированной точки.

Вектор окна w не выполняет этот параметр. Это всегда насыщается.

Выберите, как вы задаете размер слова и дробную длину вектора окна w.

Когда вы выбираете:

  • Same word length as input – Размер слова элементов вектора окна совпадает с размером слова входа. Дробная длина автоматически установлена в лучшую возможную точность.

  • Specify word length – Можно ввести размер слова элементов вектора окна в битах. Дробная длина автоматически установлена в лучшую возможную точность.

  • Binary point scaling – Можно ввести размер слова и дробную длину элементов вектора окна в битах.

  • Slope and bias scaling – Можно ввести размер слова в битах и наклоне элементов вектора окна. Этот блок требует наклона степени двойки и смещения нуля.

Вектор окна не выполняет параметры Overflow mode и Rounding mode. Это всегда насыщается и округляется к Nearest.

Используйте этот параметр, чтобы задать, как вы хотите назвать продукт выходным словом и дробными длинами.

Когда вы выбираете:

  • Inherit via internal rule – Продукт вывел размер слова, и дробная длина вычисляются автоматически. Для получения информации о том, как продукт вывел слово, и дробные длины вычисляются, когда внутреннее правило использовано, смотрите, Наследовались через Внутреннее Правило.

  • Same as input – Эти характеристики совпадают с теми из входа с блоком.

  • Binary point scaling – Можно ввести размер слова и дробную длину продукта выход в битах.

  • Slope and bias scaling – Можно ввести размер слова в биты и наклон продукта выход. Этот блок требует наклона степени двойки и смещения нуля.

Выберите, как вы задаете размер слова и дробная продолжительность выхода блока.

Когда вы выбираете:

  • Same as product output – Эти характеристики совпадают с теми из продукта выход.

  • Same as input – Эти характеристики совпадают с теми из входа с блоком.

  • Binary point scaling – Можно ввести размер слова и дробная продолжительность выхода в битах.

  • Slope and bias scaling – Можно ввести размер слова в биты и наклон выхода. Этот блок требует наклона степени двойки и смещения нуля.

Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили типы данных, которые вы задаете на диалоговом окне блока.

Характеристики блока

Типы данных

double | fixed point | integer | single

Прямое сквозное соединение

no

Многомерные сигналы

no

Сигналы переменного размера

yes

Обнаружение пересечения нулем

no

Расширенные возможности

Смотрите также

Функции

Блоки

Представлено до R2006a