Difference

Вычислите различие между элементами по заданному измерению входа

  • Библиотека:
  • DSP System Toolbox/Математические функции/Математические операции

  • Difference block

Описание

Блок Difference вычисляет различие между соседними элементами в строках, столбцах или заданном измерении 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,jui,j1i(M1)

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

    y = diff(u,[],2)			

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

    yi,j=ui,j+1ui,j1j(N1)

  • Specified dimension - Поведение блока является расширением описанного ранее линейного дифференцирования. Блок вычисляет различия между соседними элементами по размерности, заданному в параметре 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,lui,j,k,l1k(P1)

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

Зависимости

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

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

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

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

Для получения дополнительной информации см. Раздел «Режимы округления»

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

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

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

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

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

Также можно задать тип данных Accumulator при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

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

Для рисунков о том, как использовать тип данных аккумулятора в этом блоке, смотрите Преобразование с Фиксированной Точкой в Расширенных Возможностях.

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

  • Inherit: Same as input - Блок задает тип выходных данных, совпадающий с типом входных данных.

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

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

Также можно задать тип данных Output при помощи Data Type Assistant. Чтобы использовать ассистента, нажмите кнопку Show data type assistant.

Для получения дополнительной информации смотрите Типы данных сигнала управления (Simulink).

Для получения дополнительной информации о типе выходных данных смотрите Преобразование с Фиксированной Точкой в Расширенных Возможностях.

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

  • Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).

  • Автоматическое масштабирование типов данных с фиксированной точкой.

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

  • Проверка области значений симуляции. См. «Задание диапазонов сигнала» (Simulink).

  • Автоматическое масштабирование типов данных с фиксированной точкой.

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

Примечание

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

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

Типы данных

double | fixed point | integer | single

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

no

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

no

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

yes

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

no

Подробнее о

расширить все

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.

См. также

Функции

Блоки

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