exponenta event banner

Различие

Вычислить разность элемент-элемент вдоль заданного размера входа

  • Библиотека:
  • Панель системных инструментов DSP/Математические функции/Математические операции

  • Difference block

Описание

Блок «Разность» вычисляет разность между соседними элементами в строках, столбцах или заданном измерении входного массива u. Блок можно настроить так, чтобы вычислять разницу только в пределах текущего входа или между последовательными входами (рабочая разница).

Порты

Вход

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

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

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fixed point
Поддержка комплексного номера: Да

Продукция

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

Разность между соседними строками, столбцами или заданным размером входных данных, возвращаемых в виде вектора, матрицы или N-D массива.

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

Дополнительные сведения о вычислении выходных данных см. в разделе Параметр «Разность вдоль».

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | fixed point
Поддержка комплексного номера: Да

Параметры

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

Главная вкладка

Укажите, вычисляет ли блок текущую разницу.

  • No - Блок вычисляет разницу между соседними элементами в указанном измерении текущего ввода. В этом режиме блок может вычислять разность по столбцам, строкам или заданному размеру ввода в зависимости от параметра «Разность вдоль».

  • Yes - Блок вычисляет ходовую разницу по столбцам входного сигнала. Дополнительные сведения см. в разделе Выполнение операции.

Укажите, вычисляет ли блок разницу по столбцам, строкам или заданному размеру ввода.

  • Columns - Блок вычисляет различия между соседними элементами в каждом столбце ввода. Эквивалентный код MATLAB ® задается следующим образом:

    y = diff(u)				

    Для входов M-by-N выходом является матрица (M-1) -by-N, j-й столбец которой имеет следующие элементы:

    yi, j = ui + 1, j ui, j 1≤i≤ (M − 1)

  • Rows - Блок вычисляет различия между соседними элементами в каждой строке ввода. Эквивалентный код MATLAB задается следующим образом:

    y = diff(u,[],2)			

    Выходной сигнал представляет собой матрицу M-by- (N-1), i-я строка которой имеет следующие элементы:

    yi, j = ui, j + 1 ui, j 1≤j≤ (N − 1)

  • Specified dimension - Поведение блока является расширением разностных строк, описанных ранее. Блок вычисляет различия между соседними элементами вдоль размера, заданного в параметре «Размер». Эквивалентный код MATLAB задается следующим образом:

    y = diff(u,[],d)  

    где d - размерность.

    Выходные данные представляют собой массив, длина которого в указанном измерении на единицу меньше длины входных данных и длина которого в других измерениях не изменяется. Например, рассмотрим входной массив M-by-N-by-P-by-R с элементами u (i, j, k, l) и предположим, что значение параметра Dimension равно3. Выходом блока является массив M-by-N-by- (P-1) -by-R со следующими элементами:

    yi, j, k, l = ui, j, k + 1, l ui, j, k, l 1≤k≤ (P − 1)

Укажите размер на основе одного элемента, вдоль которого вычисляются различия между элементами.

Зависимости

Чтобы включить этот параметр, выберите Specified dimension для параметра Разность вдоль (Difference along).

Вкладка «Типы данных»

Укажите режим округления для операций с фиксированной точкой как одно из следующих:

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

Дополнительные сведения см. в разделе Режимы округления.

При выборе этого параметра блок насыщает результат операции с фиксированной точкой. При сбросе этого параметра блок переносит результат операции с фиксированной точкой. Для получения подробной информации о saturate и wrap, см. режим переполнения для операций с фиксированной точкой.

Accumulator указывает тип данных выхода операции накопления в блоке Разностный.

  • Inherit: Inherit via internal rule - блок наследует тип данных накопителя на основе внутреннего правила. Дополнительные сведения об этом правиле см. в разделе Наследование через внутреннее правило.

  • Inherit: Same as input - Блок определяет тип данных накопителя, который должен совпадать с типом входных данных.

  • fixdt([],16,0) - Блок задает тип данных с автозаписью, двоичной точкой, масштабированием, фиксированной точкой с длиной слова 16 бит и длиной дроби 0.

Кроме того, тип данных Accumulator можно задать с помощью помощника по типам данных. Для использования помощника нажмите кнопку Show data type assistant.

Дополнительные сведения об помощнике по типам данных см. в разделе Указание типов данных с помощью помощника по типам данных (Simulink).

Примеры использования типа данных накопителя в этом блоке см. в разделе Преобразование фиксированных точек в расширенных возможностях.

Output указывает тип данных вывода блока Difference.

  • Inherit: Same as input - Блок определяет тип выходных данных, который должен совпадать с типом входных данных.

  • Inherit: Same as accumulator - Блок определяет тип выходных данных, который должен совпадать с типом данных накопителя.

  • fixdt([],16,0) - Блок задает тип данных с автозаписью, двоичной точкой, масштабированием, фиксированной точкой с длиной слова 16 бит и длиной дроби 0.

Кроме того, можно задать тип выходных данных с помощью помощника по типам данных. Для использования помощника нажмите кнопку Show data type assistant.

Дополнительные сведения см. в разделе Типы данных управляющих сигналов (Simulink).

Дополнительные сведения о типе выходных данных см. в разделе Преобразование фиксированных точек в расширенных возможностях.

Укажите минимальное значение, которое может выводить блок. Simulink ® использует это минимальное значение для выполнения следующих действий :

Укажите максимальное значение, которое может выводить блок. Simulink использует это максимальное значение для выполнения следующих действий:

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

Примечание

Наследование с плавающей запятой имеет приоритет над параметрами типа данных, определенными на этой панели. Если входные данные имеют плавающую точку, блок игнорирует эти настройки, и все внутренние типы данных являются плавающей точкой.

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

Типы данных

double | fixed point | integer | single

Прямой проход

no

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

no

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

yes

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

no

Подробнее

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

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

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

.

См. также

Функции

Блоки

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