exponenta event banner

моделировать

Класс: SimBiology.export. Модель

Моделируйте экспортируемую модель SimBiology

Синтаксис

[t,x,names] = simulate(model)
[t,x,names] = simulate(model,initialValues)
[t,x,names] = simulate(model,initialValues,doses)
simDataObj = simulate(___)

Описание

[t,x,names] = simulate(model) моделирует модель, с помощью начальных значений по умолчанию, заданных model.InitialValues (которые всегда равны свойству InitialValue на соответствующем объекте ValueInfo). simulate возвращается:

  • t, выборки времени.

  • x, данные моделирования, которые содержат изменение в количестве состояний в зависимости от времени.

  • names, метки столбца данных моделирования x.

Можно установить опции дополнительной симуляции с помощью свойства SimBiology.export.Model.SimulationOptions.

[t,x,names] = simulate(model,initialValues) моделирует модель, с помощью значений, заданных в initialValues как начальные значения симуляции.

[t,x,names] = simulate(model,initialValues,doses) моделирует модель, с помощью заданных начальных значений и доз.

simDataObj = simulate(___) возвращает данные моделирования в SimData object simDataObj с помощью любого из входных параметров в предыдущих синтаксисах. simDataObj содержит время и данные состояния, а также метаданные, такие как типы и имена для состояний, о которых сообщают. Можно получить доступ ко времени, данным и хранилищам имен в simDataObj с помощью свойств simDataObj.Time, simDataObj.Data и simDataObj.DataNames, соответственно.

Входные параметры

model

Объект SimBiology.export.Model.

initialValues

Вектор значений для simulate, чтобы использовать в качестве начальных значений симуляции. initialValues должен иметь то же число элементов как model.InitialValues.

Значение по умолчанию: Значения заданы в model.InitialValues.

doses

Вектор объектов дозы, задающих дозы, используется для симуляции. Входные объекты дозы должны быть подмножеством доз в экспортируемой модели, как возвращено getdose.

Значение по умолчанию: Вся доза возражает в экспортируемой модели.

Выходные аргументы

t

n-by-1 вектор выборок времени от симуляции, где n является количеством выборок времени.

x

n-by-m матрица данных моделирования, где n является количеством выборок времени и m, является количеством состояний, регистрируемых во время симуляции. Каждый столбец x описывает изменение в количестве состояния в зависимости от времени.

names

m-by-1 массив ячеек из символьных векторов с именами, маркирующими строки и столбцы x, соответственно.

simDataObj

SimData object, содержащий время симуляции и данные состояния, а также метаданные, такие как типы и имена для состояний, о которых сообщают.

Примеры

развернуть все

Загрузите демонстрационный объект модели SimBiology и выберите разновидности y1 и y2 для симуляции.

modelObj = sbmlimport('lotka');
modelObj.getconfigset.RuntimeOptions.StatesToLog = ...
       sbioselect(modelObj,'Name',{'y1','y2'});

Экспортируйте объект модели.

em = export(modelObj);

Моделируйте экспортируемую модель.

[t,y] = simulate(em);

figure()
plot(t,y)

Измените начальные условия и моделируйте снова.

xIndex = em.getIndex('x');
em.InitialValues(xIndex) = em.InitialValues(xIndex)*1.1;
[t,y] = simulate(em);

figure()
plot(t,y)