Присвойте значения заданным элементам сигнала
Simulink / Математические операции
Блок Assignment присваивает значения заданным элементам сигнала. Вы задаете индексы элементов, чтобы быть присвоенными значениями или путем ввода индексов в блочное диалоговое окно или путем соединения внешнего индексного источника или источников с блоком. Сигнал в блочном порту данных, U
, задает значения, которые будут присвоены Y
. Блок заменяет заданные элементы Y
с элементами от сигнала данных.
На основе значения вы вводите для Количества выходного параметра размерностей, таблица индексных опций отображена. Каждая строка таблицы соответствует одной из выходных размерностей в Количестве выходных размерностей. Для каждой размерности можно задать элементы сигнала работать с. Задайте векторный сигнал как 1D сигнал и матричный сигнал как 2D сигнал. Чтобы включить внешний индексный порт, в соответствующей строке таблицы, устанавливают Индексную Опцию на Index vector (port)
.
Например, примите сигнал 5-D с режимом индексации на основе одним. Таблица в диалоговом окне блока Assignment изменяется, чтобы включать одну строку для каждой размерности. Если вы задаете каждую размерность со следующими записями:
Строка | Индексируйте опцию | Индекс |
---|---|---|
1 | Assign all | |
2 | Index vector (dialog) | [1 3 5] |
3 | Starting index (dialog) | 4 |
4 | Starting index (port) | |
5 | Index vector (port) |
Присвоенными значениями является Y(1:end,[1 3 5],4:3+size(U,3),Idx4:Idx4+size(U,4)-1,Idx5)=U
, где Idx4
и Idx5
являются входными портами для размерностей 4 и 5.
При использовании блока Assignment в режиме normal mode Simulink® инициализирует, блокируют выходные параметры, чтобы обнулить, даже если модель явным образом не инициализирует их. В режиме Accelerator Simulink преобразовывает модель в S-функцию. Это вовлекает генерацию кода. Сгенерированный код не может сделать неявной инициализации блока выходные параметры. В таких случаях необходимо явным образом инициализировать образцовые выходные параметры.
Можно использовать блок, чтобы присвоить значения вектору, матрице или многомерным сигналам.
Можно использовать массив шин как входной сигнал к блоку Assignment.
Если вы помещаете блок Assignment в условный блок подсистемы, буфер сигнала может быть вставлен во многих случаях, и слияние сигналов от блоков Присвоения с частичными записями может вызвать ошибку.
Однако, если вы выбираете выходной порт Ensure, виртуальный флажок для условного блока Outport подсистемы, такие случаи поддержаны, и частичные записи к массивам с помощью блоков Присвоения возможны.
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|