Умножьте и разделите скаляры и нескаляры или умножьте и инвертируйте матрицы
Simulink / Обычно Используемые Блоки
Simulink / Математические операции
HDL Coder / Обычно Используемые Блоки
HDL Coder / Операции Плавающей точки HDL
HDL Coder / Математические операции
Блок Product выводит результат умножения двух входов: два скаляра, скаляр и нескалярное, или два нескаляра, которые имеют те же размерности. Значения параметров по умолчанию, которые задают это поведение:
Умножение:
Element-wise(.*)
Количество входных параметров:
2
Эта таблица показывает, что выход блока Product, например, вводит использующие значения параметров блоков по умолчанию.
Входные параметры и поведение | Пример |
---|---|
Скаляр X скаляров Выведите продукт двух входных параметров. |
|
Скаляр X нескалярный Выведите нескалярное наличие тех же размерностей как нескалярный вход. Каждым элементом нескалярного выхода является продукт входного скаляра и соответствующий элемент нескалярного входа. |
|
Нескалярный X нескалярный Выведите нескалярное наличие тех же размерностей как входные параметры. Каждым элементом выхода является продукт соответствующих элементов входных параметров. |
|
Divide и блоки Product of Elements являются вариантами блока Product.
Для получения информации о блоке Divide смотрите Divide.
Для получения информации о блоке Product of Elements смотрите Product of Elements.
Блок Product (или блок Divide или блок Product of Elements, если соответственно сконфигурировано) могут:
Численно умножьте и разделите любое количество скаляра, вектора или матричных входных параметров
Выполните умножение матриц и деление на любом количестве матричных входных параметров
Блок Product выполняет скалярное умножение или умножение матриц, в зависимости от значения параметра Умножения. Блок принимает одни или несколько входных параметров, в зависимости от Количества входного параметра. Количество входного параметра также задает операцию, чтобы выполнить на каждом входе.
Блок Product может ввести любую комбинацию скаляров, векторов и матриц, для которых операция выполнить имеет математически заданный результат. Блок выполняет заданные операции на входных параметрах, затем выводит результат.
Блок Product имеет два режима: Поэлементный режим, который процессы нескалярные входные параметры поэлементно и режим Matrix, который процессы нескалярные входные параметры как матрицы.
Когда вы устанавливаете Умножение на Element-wise(.*)
, блок продукта находится в Поэлементном режиме, в котором он работает с отдельными числовыми элементами любых нескалярных входных параметров. Эквивалентным MATLAB® является .*
оператор. В поэлементном режиме блок Product может выполнить разнообразие умножения, деления и арифметических операций инверсии.
Значение Количества входного параметра управляет и сколько входных параметров существует и умножен ли каждый или разделен, чтобы сформировать выход. Когда блок Product находится в поэлементном режиме и имеет только один вход, это функционально эквивалентно блоку Product of Elements. Когда блок имеет несколько входных параметров, любые нескалярные входные параметры должны иметь идентичные размерности, и блок выводит нескалярное с теми размерностями. Чтобы вычислить выход, блок сначала расширяет любой скалярный вход до нескалярного, которое имеет те же размерности как нескалярные входные параметры.
Эта таблица показывает, что выход блока Product, например, вводит, с помощью указанных значений для Количества входного параметра.
Значения параметров | Примеры |
---|---|
Количество входных параметров:
|
|
Количество входных параметров:
|
|
Количество входных параметров:
|
|
Количество inputs: |
|
Количество входных параметров:
|
|
Когда значением параметра Умножения является Matrix(*)
, блок Product находится в режиме Matrix, в котором он обрабатывает нескалярные входные параметры как матрицы. Эквивалентным MATLAB является *
оператор. В режиме Matrix блок Product может инвертировать одну квадратную матрицу, или умножить и разделить любое количество матриц, которые имеют размерности, для которых математически задан результат.
Значение Количества входного параметра управляет и сколько входных параметров существует и умножена ли каждая входная матрица или разделена, чтобы сформировать выход. Синтаксис Количества входных параметров эквивалентен в поэлементном режиме. Различие между режимами находится в типе умножения и деления, которые происходят.
Для поэлементных операций на комплексных входных параметрах с плавающей точкой симуляция и результаты генерации кода могут отличаться по случаям почти переполнения. Несмотря на то, что complex numbers выбран, и non-finite numbers не является выбранным On Code Generation> панель Interface диалогового окна Configuration Parameters, генератор кода не испускает код особого случая для промежуточного переполнения. Этот метод повышает эффективность встроенных операций для общего случая, который не включает экстремумы. Если входные параметры могли бы включать экстремумы, необходимо управлять этими случаями явным образом.
Сгенерированный код не может произвести тот же шаблон NaN
и inf
значения как симуляция, когда эти значения математически бессмысленны. Например, если симуляция выход содержит NaN
, выведите от сгенерированного кода, также содержит NaN
, но не обязательно в том же месте.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|