Используйте непрямое сквозное соединение в блоке MATLAB function

По умолчанию блокам MATLAB function включили прямое сквозное соединение. Если вы отключаете прямое сквозное соединение, семантика Simulink® гарантирует, чтобы выходные параметры положились только на текущее состояние. Чтобы использовать непрямое сквозное соединение, в Портах и Менеджере данных, очищают Позволение прямого флажка сквозного соединения. Чтобы открыть Порты и Менеджер данных, в Редакторе блока MATLAB function, выбирают Edit Data на вкладке Editor. Порты и Менеджер данных появляются для блока MATLAB function, который открыт и фокусируется. Для получения дополнительной информации смотрите Порты и Менеджер данных.

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

counter = counter + 1;  	% update state
output = counter;       	% compute output based on updated state
Вместо этого используйте код, такой как:
output = counter;       	% compute output based on current state
counter = counter + 1;  	% update state

Кроме того, непрямая семантика сквозного соединения требуют функционального встраивания. Не отключайте встраивание.

Используя непрямое сквозное соединение позволяет вам использовать блоки MATLAB function в обратной связи и предотвратить алгебраические циклы.

Связанные примеры

Больше о

Была ли эта тема полезной?