В этом примере показано, как сконфигурировать настройки симуляции, добавьте событие в модель, чтобы инициировать основанное на времени изменение, сохраните и постройте результаты симуляции. Этот пример использует модель, описанную в Модели Дрожжей Гетеротримерный Цикл Белка G, чтобы проиллюстрировать симуляцию модели.
Загрузите gprotein.sbproj
проект, который включает переменную m1
, объект модели SimBiology®.
sbioloadproject gprotein
Установите решатель симуляции на ode15s
и набор время остановки 500
путем редактирования SolverType
и StopTime
свойства configset object
сопоставленный с m1
модель.
csObj = getconfigset(m1);
csObj.SolverType = 'ode15s';
csObj.StopTime = 500;
Задайте, чтобы регистрировать результаты симуляции всех разновидностей.
csObj.RuntimeOptions.StatesToLog = 'all';
Предположим сумма разновидностей L
лиганда 0 в начале симуляции, но она увеличивается до конкретной суммы во время = 100. Использование
sbioselect
выбрать разновидности под названием L
и набор его начальная сумма к 0. Использование addevent
настраивать желаемое событие.
speciesObj = sbioselect(m1,'Type','species','Name','L'); speciesObj.InitialAmount = 0; evt = addevent(m1,'time >= 100','L = 6.022E17');
Симулируйте модель.
[t,x,names] = sbiosimulate(m1);
Симулируйте результаты симуляции. Заметьте, что разновидности L составляют увеличения, когда событие инициировано во времени симуляции 100. Изменения в других разновидностях не обнаруживаются в графике из-за широкого спектра в суммах разновидностей.
plot(t,x); legend(names) xlabel('Time'); ylabel('Amount');
Чтобы видеть изменения других разновидностей, отобразите на графике без разновидностей L (5-е разновидности) данные.
figure plot(t,x(:,[1:4 6:8])); legend(names{[1:4 6:8]}); xlabel('Time'); ylabel('Amount');
Альтернатива хранению данных моделирования в отдельных выходных параметрах, таких как t
X
, и names
как выше, можно сохранить их всех на сингле SimData object
. Можно затем использовать selectbyname
извлекать массивы, содержащие данные моделирования вашего интереса.
simdata = sbiosimulate(m1); sbioplot(simdata);
Расширьте Run 1, чтобы видеть имена разновидностей и параметра, которые построены.
simdata_noL = selectbyname(simdata, {'Ga','G','Gd','GaFrac','RL','R'}); sbioplot(simdata_noL);