simulate

Класс: Модель

Симулируйте экспортированную модель 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 с использованием любого из входных параметров в предыдущих синтаксисах. The 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)