Чтобы задать параметры генерации кода для связанных атомных подсхем из той же библиотеки, выполните следующие действия.
Откройте библиотечную модель, содержащую атомарную вложенную диаграмму.
Разблокируйте библиотеку.
Щелкните правой кнопкой мыши диаграмму библиотеки и выберите «Параметры блока».
В диалоговом окне задайте следующие параметры:
На вкладке Главная (Main) выберите параметр Обработать как атомную единицу измерения (Treat as atomic unit).
На вкладке Создание кода установите для параметра Упаковка функций значение Reusable function.
Задать для параметров имени файла значение User specified.
В поле «Имя файла» введите имя файла без расширения.
Нажмите кнопку ОК, чтобы применить изменения.
(НЕОБЯЗАТЕЛЬНО) Настройте сгенерированные имена функций для атомных подчастей:
Задайте для параметра конфигурации модели System target file значение ert.tlc.
Для методов подсистемы параметра конфигурации модели укажите формат имен функций, используя комбинацию следующих маркеров правил именования:
$R - имя корневой модели
$F - тип интерфейсной функции для атомарного подграфического
$N - имя блока
$H - индекс подсистемы
$M - искомый текст
Нажмите кнопку ОК, чтобы применить изменения.
При создании кода для модели в отдельном файле хранится код для связанных атомных вложенных диаграмм из той же библиотеки.
Чтобы задать параметры генерации кода для несвязанного атомарного подкадра, выполните следующие действия.
На диаграмме щелкните правой кнопкой мыши атомарную вложенную диаграмму и выберите Свойства.
В диалоговом окне задайте следующие свойства:
Задайте для свойства Упаковка функции создания кода значение Reusable function.
Задать для параметров имени файла генерации кода значение User specified.
В поле Имя файла генерации кода введите имя файла без расширения.
Нажмите кнопку ОК, чтобы применить изменения.
(НЕОБЯЗАТЕЛЬНО) Настройте сгенерированные имена функций для атомных подчастей:
Задайте для параметра конфигурации модели System target file значение ert.tlc.
Для методов подсистемы параметра конфигурации модели укажите формат имен функций, используя комбинацию следующих маркеров правил именования:
$R - имя корневой модели
$F - тип интерфейсной функции для атомарного подграфического
$N - имя блока
$H - индекс подсистемы
$M - искомый текст
Нажмите кнопку ОК, чтобы применить изменения.
При создании кода для модели в отдельном файле хранится код атомарной вложенной диаграммы. Дополнительные сведения см. в разделе Создание кода из атомных субчартов.
Чтобы преобразовать состояние A в атомарный подшаг, щелкните его правой кнопкой мыши и выберите пункт «Группа и подшаг» > «Атомарный подшаг». Изменение состояния А в атомарном подшаге:

Откройте диалоговое окно свойств для А.
Задайте для свойства Упаковка функции создания кода значение Reusable function.
Задать для параметров имени файла генерации кода значение User specified.
В поле «Имя файла генерации кода» введите saturator в качестве имени файла.
Нажмите кнопку ОК.
Задайте для параметра конфигурации модели System target file значение ert.tlc.
Выберите параметры конфигурации модели Создать отчет о создании кода и Открыть отчет автоматически.
Выберите параметры Code-to-model и Model-to-code.
Нажмите кнопку «Применить».
Установка параметров конфигурации модели Методы подсистемы в соответствии со схемой форматирования $R$N$M$F, где:
$R - имя корневой модели.
$N - имя блока.
$M - токен манглов.
$F - тип интерфейсной функции для атомарного подкадра.
Дополнительные сведения см. в разделе Методы подсистемы.
Нажмите кнопку «Применить».
Чтобы создать код для модели, нажмите клавиши CTRL + B. В появившемся отчете о создании кода отображается отдельный файл, содержащий сгенерированный код для атомарного подшаблона.
Проверка кода для saturator.cщелкните гиперссылку в отчете, чтобы увидеть следующий код:

Строка 28 показывает, что during функция, сгенерированная для атомарного подграфического элемента, имеет имя ex_reuse_states_A_during. Это имя соответствует схеме форматирования $R$N$M$F для методов подсистемы:
$R - имя корневой модели, ex_reuse_states.
$N - имя блока, A.
$M является маркером mangle, который пуст.
$F - тип интерфейсной функции для атомарного подкадра, during.
Примечание
Показанные номера строк могут отличаться от номеров, отображаемых в отчете о создании кода.
В этой модели показано, как разделить атомарную подсистему на собственный исходный файл. Как только подсистема указана как атомарная, в диалоговом окне «Параметр блока подсистемы» на вкладке «Создание кода» можно указать способ представления подсистемы в сгенерированном коде с помощью параметра упаковки функции:
Inline: встроенная функция
Function: функция с вводом-выводом, переданным в виде глобальных данных
Reusable function: функция с вводом-выводом, переданным в качестве аргументов функции
Auto: Simulink Coder оптимизируется на основе контекста
С помощью Function и Reusable function можно указать имя функции и файла с именами Функция (Function name) и Файл (File name) соответственно. В модели, rtwdemo_filepart, SS1 подсистема сконфигурирована как Reusable function с именем функции myfun и имя файла myfile.
open_system('rtwdemo_filepart')

Эта функция секционирует только код подсистемы. Данные объявляются родительской моделью и принадлежат ей. Для полной инкапсуляции системы (т.е. данных и функций) используйте ссылку на модель.
bdclose('rtwdemo_filepart');