В этом примере показано, как настроить параметры моделирования, добавить в модель событие, которое инициирует изменение во времени, сохранить и распечатать результаты моделирования. Этот пример использует модель, описанную в модели дрожжевого гетеротримерного 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);