Maximum

Максимальные значения входа или последовательности входов

  • Библиотека:
  • Системный тулбокс/статистика DSP

    DSP System Toolbox Поддержка HDL/статистика

  • Maximum block

Описание

Блок Maximum идентифицирует значение и положение самого большого элемента в каждой строке или столбце входа или вдоль векторов заданного измерения из входа. Это также может вычислить максимальное значение всего входа. Блок Maximum может также отслеживать максимальные значения в последовательности входов за определенный период времени. Параметр Mode задает режим работы блока и может быть установлен на одно из следующего:

  • Value - Блок выводит максимальные значения в заданном измерении.

  • Index - Блок выводит массив индексов максимальных значений в заданном измерении.

  • Value and Index - Блок выводит максимальные значения и соответствующий массив индексов в заданном измерении.

  • Running - Блок отслеживает максимальные значения в последовательности входов за определенный период времени.

Можно задать размерность, используя параметр Find the maximum value over.

Примечание

Режим Running в блоке Maximum будет удален в следующем релизе. Чтобы вычислить текущий максимум в Simulink®Вместо этого используйте блок Moving Maximum.

Порты

Вход

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

Блок принимает реальные или комплексные многоканальные и многомерные входы. Вход может быть с плавающей точкой, с фиксированной точкой или логическим. Действительные входы с фиксированной точкой могут быть либо подписанными, либо неподписанными. Комплексные входы с фиксированной точкой должны быть подписаны.

Этот порт не называется, пока вы не зададите значение параметра Mode Running и параметр Reset port к любой опции, кроме None.

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

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

Зависимости

Чтобы включить этот порт, установите параметр Mode равным Running и параметр Reset port к любой опции, кроме None.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | Boolean

Выход

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

Тип данных максимального значения соответствует типу данных входа.

Когда параметр Mode установлен на Value and Index или Value, применимо следующее:

  • Размер размерности, для которой блок вычисляет максимальное значение, равен 1. Размеры всех других размерностей совпадают с размерами массивов входа. Например, когда вход является M -by- N -by- P массивом, с размерностью, установленной на 1блок выводит массив 1-by N -by P. Когда для размерности задано значение 3блок выводит двумерную матрицу M -by N.

  • Когда вход является M -by - N матрицей, с размерностью, установленной на 1блок выводит матрицу N 1 байт.

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

Когда установлен параметр Mode Runningблок отслеживает максимальное значение каждого канала во временной последовательности M входов -by N. В этом режиме вы также должны задать параметр Input processing как один из следующих:

  • Elements as channels (sample based) - Блок обрабатывает каждый элемент входа как отдельный канал. Для трехмерного входного сигнала размера M -by- N -by- P, блок выводит массив M -by- N -by- P. Каждый yijk элемент выхода содержит максимальное значение, наблюдаемое в uijk элемента для всех входов с момента последнего сброса.

    Когда происходит событие сброса, выполняемое максимальное yijk в текущей системе координат сбрасывается в uijk элемента.

  • Columns as channels (frame based) - Блок обрабатывает каждый столбец входа как отдельный канал. Эта опция не поддерживает N-мерный входной сигнал, где N > 2. Для двумерного входного сигнала размера M -by - N, блок выводит матрицу M -by - N. Каждый элемент yij выхода содержит максимальное значение, наблюдаемое в j-м столбце всех входов с момента последнего сброса, вплоть до элемента uij текущего входа.

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

Блок устанавливает текущий максимум всякий раз, когда событие сброса обнаруживается в опциональном порте Rst. Шаг расчета сброса должен быть положительным целым числом, кратным входом шага расчета.

Зависимости

Чтобы включить этот порт, установите параметр Mode равным Value and Index или Value.

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

Когда вход double, значения индекса также double. В противном случае значения индекса uint32.

Зависимости

Чтобы включить этот порт, установите параметр Mode равным Value and Index или Index.

Типы данных: double | uint32

Параметры

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

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

Когда параметр Mode установлен в:

  • Value - Блок вычисляет максимальное значение в каждой строке или столбце входа или вдоль векторов заданной размерности входа. Он также может вычислить максимальное значение всего входа в каждом шаге расчета и выводит массив, y. Каждый элемент в выходе является максимальным значением в соответствующем столбце, строке, векторе или целом входе. Выходной y зависит от настройки параметра Find the maximum value over. Рассмотрим трехмерный входной сигнал размера M -by- N -by- P. Установите Find the maximum value over значение:

    • Each row - Выходной y в каждом шаге расчета состоит из M -на 1-by - P массива, где каждый элемент содержит максимальное значение каждого вектора во втором измерении входного сигнала. Для входного сигнала M -by N матрицы выходом в каждом шаге расчета является вектор- M-на-1 столбец.

    • Each column - Выходной y в каждом шаге расчета состоит из массива 1-by- N -by- P, где каждый элемент содержит максимальное значение каждого вектора по первому измерению входной размерности. Для M -by N матричного входа, выход в каждом шаге расчета является вектором-строкой N 1 байт.

      В этом режиме блок обрабатывает длинно- M неориентированные векторные входы как M векторы-на-1.

    • Entire input - Выходной y в каждом шаге расчета является скаляром, который содержит максимальное значение в M входной матрице -by- N -by- P.

    • Specified dimension - Выходной y в каждом шаге расчета зависит от Dimension. Если для Dimension задано значение 1, выходы те же, что и при выборе Each column. Если для Dimension задано значение 2, выходы те же, что и при выборе Each row. Если для Dimension задано значение 3, выходы в каждом шаге расчета являются M -by - N матрицей, содержащей максимальное значение каждого вектора для третьего измерения входной размерности.

    Комплексные входы

    Для комплексных входов блок выбирает значение в каждой строке или столбце входа, вдоль векторов заданного измерения из входа или всего входа, которая имеет максимальную квадратную величину, как показано на следующем рисунке. Для комплексного числа u=a+bi, величина в квадрате a2+b2.

  • Index - Блок вычисляет максимальное значение в каждой строке или столбце входа, вдоль векторов заданной размерности входа или всего входа и выводит I массива индексов. Каждый элемент в I является целым числом, индексирующим максимальное значение в соответствующем столбце, строке, векторе или целом входе. Выходной I зависит от настройки параметра Find the maximum value over. Рассмотрим трехмерный входной сигнал размера M -by- N -by - P:

    • Each row - Выходной I в каждом шаге расчета состоит из M -by-1-by- P массива, где каждый элемент содержит индекс максимального значения каждого вектора во втором измерении входного сигнала. Для входа, который является M -by - N матрицей, выход в каждом шаге расчета является вектором- M на 1 столбец.

    • Each column - Выходной I в каждом шаге расчета состоит из массива 1-by- N -by- P, где каждый элемент содержит индекс максимального значения каждого вектора по первому измерению входной размерности. Для входа, который является M -by - N матрицей, выход в каждом шаге расчета является вектором-строкой N 1 байт.

      В этом режиме блок обрабатывает длинно- M неориентированные векторные входы как M векторы-на-1.

    • Entire input - Выходной I в каждом шаге расчета является вектор 1 на 3, который содержит положение максимального значения в входной матрице M -by- N -by- P. Для входа, который является матрицей M -by N, выход является вектором 1 на 2.

    • Specified dimension - Выходной I в каждом шаге расчета зависит от Dimension. Если для Dimension задано значение 1, выход будет таким же, как и при выборе Each column. Если для Dimension задано значение 2, выход будет таким же, как и при выборе Each row. Если Dimension установлено равным 3, выходы в каждом шаге расчета являются матрицей M -by N, содержащей индексы максимальных значений каждого вектора по третьему измерению входной размерности.

    Когда максимальное значение происходит более одного раза, вычисленный индекс соответствует первому вхождению. Для примера, когда вход является вектором-столбцом [3 2 1 2 3]'вычисленный один базовый индекс максимального значения 1, а не 5 когда Each column выбран.

  • Value and Index - Блок выводит максимальное значение в каждой строке или столбце входа, вдоль векторов заданного размера входа или всего входа и соответствующих I массива индексов.

  • Running - Блок отслеживает максимальное значение каждого канала во временной последовательности M -by - N входов. В этом режиме вы также должны задать параметр Input processing как один из следующих:

    • Elements as channels (sample based) - Блок обрабатывает каждый элемент входа как отдельный канал. Для трехмерного входного сигнала размера M -by- N -by- P, блок выводит массив M -by- N -by- P. Каждый yijk элемент выхода содержит максимальное значение, наблюдаемое в uijk элемента для всех входов с момента последнего сброса.

      Когда происходит событие сброса, выполняемое максимальное yijk в текущей системе координат сбрасывается в uijk элемента.

    • Columns as channels (frame based) - Блок обрабатывает каждый столбец входа как отдельный канал. Эта опция не поддерживает N-мерный входной сигнал, где N > 2. Для двумерного входного сигнала размера M -by - N, блок выводит матрицу M -by - N. Каждый элемент yij выхода содержит максимальное значение, наблюдаемое в j-м столбце всех входов с момента последнего сброса, вплоть до элемента uij текущего входа.

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

    Блок устанавливает текущий максимум всякий раз, когда событие сброса обнаруживается в опциональном порте Rst. Шаг расчета сброса должен быть положительным целым числом, кратным входом шага расчета.

    Текущий режим для входов переменного размера

    Когда вход является сигналом переменного размера, и вы устанавливаете Mode на Running, затем:

    • Если вы устанавливаете параметр Input processing равным Elements as channels (sample based), состояние сбрасывается.

    • Если вы устанавливаете параметр Input processing равным Columns as channels (frame based), затем:

      • Когда различие размеров входа в количестве каналов (столбцов), состояние сбрасывается.

      • Когда различие в размере входа находится в длине каналов (строк), сброс отсутствует, и выполняемая операция выполняется как обычно.

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

Зависимости

Чтобы включить этот параметр, установите Mode на Index или Value and Index.

  • Each column - Блок выводит максимальное значение по каждому столбцу.

  • Each row - Блок выводит максимальное значение по каждой строке.

  • Entire input - Блок выводит максимальное значение за весь вход.

  • Specified dimension - Блок выводит максимальное значение по размерности, заданное в параметре Dimension.

Зависимости

Чтобы включить этот параметр, установите Mode равным Value and Index, Value, или Index.

Задайте размерность (основанное на одном значении) входного сигнала, над которым блок вычисляет максимальное. Значение этого параметра должно быть больше 0 и меньше, чем количество размерностей в входном сигнале.

Зависимости

Чтобы включить этот параметр, установите Find the maximum value over равным Specified dimension.

  • Columns as channels (frame based) - Блок обрабатывает каждый столбец входа как отдельный канал. Эта опция не поддерживает N-мерный входной сигнал, где N > 2. Для двумерного входного сигнала размера M -by - N, блок выводит матрицу M -by - N. Каждый элемент yij выхода содержит максимальное значение, наблюдаемое в j-м столбце всех входов с момента последнего сброса, вплоть до элемента uij текущего входа.

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

  • Elements as channels (sample based) - Блок обрабатывает каждый элемент входа как отдельный канал. Для трехмерного входного сигнала размера M -by- N -by- P, блок выводит массив M -by- N -by- P. Каждый yijk элемент выхода содержит максимальное значение, наблюдаемое в uijk элемента для всех входов с момента последнего сброса.

    Когда происходит событие сброса, выполняемое максимальное yijk в текущей системе координат сбрасывается в uijk элемента.

Зависимости

Чтобы включить этот параметр, установите Mode равным Running.

Блок устанавливает текущий максимум всякий раз, когда событие сброса обнаруживается в опциональном порте Rst. Шаг расчета сброса должен быть положительным целым числом, которое кратно вход шага расчета.

  • None - Отключение порта Rst.

  • Rising edge - Запускает операцию сброса, когда вход Rst делает одно из следующего:

    • Повышается с отрицательного значения до положительного значения или нуля.

    • Поднимается с нуля до положительного значения, где подъем не является продолжением подъёма с отрицательного значения до нуля.

  • Falling edge - Запускает операцию сброса, когда вход Rst делает одно из следующего:

    • Падает от положительного значения до отрицательного значения или нуля.

    • Падает с нуля до отрицательного значения, где падение не является продолжением падения с положительного значения до нуля.

  • Either edge - Запускает операцию сброса, когда вход Rst является Rising edge или Falling edge.

  • Non-zero sample - Запускает операцию сброса в каждом шаге расчета, когда вход Rst не равен нулю.

    Примечание

    При запуске симуляций в MultiTasking Simulink mode, сигналы сброса имеют задержку с одной выборкой. Поэтому, когда блок обнаруживает событие сброса, происходит задержка с одной выборкой на скорости порта сброса, прежде чем блок применяет сброс. Для получения дополнительной информации о задержках и режимах задачи Simulink, смотрите Избыточную алгоритмическую задержку (Задержка Задачи) и Основанное на времени Планирование и Генерация кода (Simulink Coder).

Зависимости

Чтобы включить этот параметр, установите Mode равным Running.

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

Примечание

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

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

  • Floor

  • Ceiling

  • Convergent

  • Nearest

  • Round

  • Simplest

  • Zero

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

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

Product output задает тип данных выхода операции продукта в блоке Maximum. Для получения дополнительной информации о типе выходных данных продукта смотрите Типы данных умножения.

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

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

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

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

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

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

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

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

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

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

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

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

Типы данных

double | fixed point | integer | single

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

no

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

no

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

yes

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

no

Алгоритмы

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

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

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

.

См. также

Функции

Объекты

Блоки

Представлено до R2006a
Для просмотра документации необходимо авторизоваться на сайте