exponenta event banner

Развертывание модели SimBiology

В этом примере показано, как развернуть графическое приложение, моделирующее модель SimBiology. Примером модели является реакционная система Лотка-Вольтерра, описанная Гиллеспи [1], которую можно интерпретировать как простую модель хищника-добычи.

В этом примере требуется Compiler™ MATLAB.

Обзор

Автономные приложения SimBiology можно создавать с помощью компилятора MATLAB и экспортируемой модели SimBiology. Чтобы сделать приложение совместимым с компилятором MATLAB, выполните следующие действия.

  • Создание экспортируемой модели с помощью модели export способ.

  • Ускорение модели (необязательно).

  • Сохраните модель в файле MAT.

  • Убедитесь, что приложение загружает модель из файла MAT.

  • Добавить %#function pragma для функции верхнего уровня приложения.

  • Позвоните в mcc , явно добавляя файл MAT и зависимые файлы экспортируемой модели в приложение.

Загрузить модель

sbioloadproject lotka m1

Создание экспортированной модели

exportedModel = export(m1);

Ускорение модели

Для ускорения требуется правильно настроенный компилятор MEX (см. документацию для mex -setup).

accelerate(exportedModel);

Сохранение экспортированной модели

Не прокомментируйте следующую строку, чтобы сохранить модель в exportedLotka.mat

% save exportedLotka exportedModel

Звонить mcc

Функция верхнего уровня для приложения, simulateLotkaGUI.m, уже обновлен для использования экспортированного файла MAT модели. Он также содержит следующее: %#function pragma, которая сообщает компилятору MATLAB, что приложение использует экспортированную модель SimBiology: %#function SimBiology.export.Model

Теперь определите список файлов для явного добавления в приложение. Этот список включает файл MAT, содержащий экспортированную модель, и любые файлы, перечисленные в DependentFiles свойства экспортируемой модели. Обратите внимание, что этот MAT-файл должен быть загружен в рабочую область до mcc вызывается, чтобы файлы экспортируемой модели были доступны для развертывания.

% To speed up compilation, we use the option |-N -p simbio|, which informs
% |mcc| that the deployed application does not depend on any additional
% toolboxes. For the purposes of this example, we programmatically
% construct the |mcc| command.
mccCommand = ['mcc -m simulateLotkaGUI.m -N -p simbio -a exportedLotka.mat ' ...
    sprintf(' -a %s', exportedModel.DependentFiles{:})];

% Uncomment the following line to execute the |mcc| command. This may take
% several minutes.
%
% eval(mccCommand) 

Ссылки

[1] Гиллеспи Д. Т. «Точное стохастическое моделирование связанных химических реакций», (1977) The Journal of Physical Chemistry, 81 (25), 2340-2361.