Функция инициализации (InitFcn
) - тип коллбэка, который выполняется или оценивается в начале компиляции модели. Можно использовать InitFcn
в модели (модели InitFcn
) или блок (блок InitFcn
).
Примечание
Варианты управления могут быть определены только в InitFcn
модели коллбэк.
Модель InitFcn
коллбэк используется для инициализации параметров и настроек окружения, характерных для используемой модели.
Примечание
Не рекомендуется использовать модель InitFcn
коллбэк для получения статуса симуляции. Если вы симулируете модель в slbuild
, или SIL (программа в цикле), или режим Rapid Accelerator, модель InitFcn
состояние коллбэка может отображаться следующим 'stopped'
. Модель InitFcn
коллбэк должен использоваться только для инициализации параметров и настроек окружения, характерных для используемой модели.
Используйте модель InitFcn
для инициализации данных, необходимых для модели. Для примера инициализировать:
Переменные, используемые в параметрах модели
Проверка лицензий на наличие необходимого программного обеспечения
Не используйте InitFcn модели
для изменения моделей, отличных от self. Это также означает, что блок InitFcn
Model блока не должны изменять параметры (и структуру) ссылочных моделей.
Не используйте InitFcn модели
в верхней модели, чтобы перезаписать любую переменную, используемую в ссылочной модели. Для примера, если верхние части и модели-ссылки используют переменную "k
"модель InitFcn
верхней модели не должна изменяться "k
"модели-ссылки. В таких шаблонах моделирования рекомендуется использовать различные имена переменных. Также можно использовать словарь данных.
Не используйте команды симуляции в InitFcn
модели. Для примера, используя такие команды, как,
set_param(ModelName, 'SimulationCommand', 'start')
или set_param(ModelName, 'SimulationCommand', 'update')
в InitFcn модели
не рекомендованы.
Не используйте InitFcn модели
функция для редактирования структуры модели типа add_line
, или delete_line
если на модель ссылаются из верхней модели.
Если вы используете InitFcn
коллбэк для модели, проверка отсутствующих переменных в параметрах блоков во время редактирования отключена для всей модели.
Можно использовать свойства модели, чтобы задать коллбэки для модели. Для примера, PreLoadFcn
, PostLoadFcn
, InitFcn
коллбэки. Свойства модели используются, чтобы просмотреть информацию о модели, описание, историю и функции обратного вызова. Можно использовать Property Inspector для просмотра и редактирования свойств версии модели, истории описания и функций обратного вызова. Для получения дополнительной информации о свойствах модели см. Раздел «Управление свойствами модели».
Рассмотрим модель с Variant Subsystem и Variant Source блоками. Для примера Варианта - InitFcn.
В этой модели модель InitFcn
используется для инициализации параметров для модели.
Точно так же эти параметры могут также быть определены в PreLoadFcn
или PostLoadFcn
.
Однако, когда параметры определены в InitFcn
коллбэк и если MATLAB® рабочая область очищается с помощью Clear
команда, элементы в рабочей области очищаются, и они повторно создаются при моделировании модели. Выровненные элементы не будут воссозданы, когда параметры определены в PreLoadFcn
или PostLoadFcn
.
Блок InitFcn
коллбэк используется для инициализации конкретных параметров и настроек блоков.
Не используйте блочные InitFcn
для изменения параметров (или переменных) блоков, отличных от self.
Не используйте блочные InitFcn
на дочернем блоке для изменения параметров родительского блока подсистемы или других дочерних блоков. Однако можно использовать блочные InitFcn
на родительском блоке подсистемы для изменения параметров прямых дочерних блоков.
Не используйте блочные InitFcn
для внесения структурных изменений, таких как добавление или удаление блока (add_block
или delete_block
).
Не используйте блочные InitFcn
в блоке Model для изменения параметров (и структуры) ссылочных моделей.
Если вы используете InitFcn
коллбэк для блока, проверка отсутствующих переменных в параметрах блоков во время редактирования отключена для этого блока.