exponenta event banner

sbioaccelerate

Подготовка объекта модели к ускоренному моделированию

Описание

пример

sbioaccelerate(modelObj) подготавливает объект модели для ускоренного моделирования, используя его активный набор конфигурации (configset), любые активные варианты и активные дозы. Модель SimBiology ® может содержать несколько конфигурационных элементов, при этом в любой момент времени активен только один. Активный конфигурационный набор содержит настройки, используемые при подготовке модели к ускорению.

Для ускоренного моделирования используйте sbioaccelerate перед запуском sbiosimulate. Необходимо использовать одну и ту же модель и настроить для обеих функций.

Запущенный повторно sbioaccelerate, перед вызовом sbiosimulate, при изменении этой модели, например, при изменении реакций или добавлении событий. Однако есть и исключения. Дополнительные сведения см. в разделе При повторном запуске ускорения.

Примечание

При использовании SimFunction object при моделировании модель автоматически ускоряется при оценке первой функции. Следовательно, нет необходимости запускать sbioaccelerate заранее.

Предпосылки

Для подготовки моделей к ускоренному моделированию установите и настройте поддерживаемый компилятор. Дополнительные сведения см. в разделе Предварительные условия для ускорения моделирования и анализа.

пример

sbioaccelerate(modelObj,csObj) использует указанный объект configset csObj и любые активные варианты и активные дозы. Любые другие конфигурационные элементы игнорируются. Если установить csObj опустеть [], функция использует активный конфигурационный набор.

пример

sbioaccelerate(modelObj,dvObj) использует дозы или варианты, указанные dvObj и активный конфигурационный набор. dvObj может быть одним из следующих:

Если установить dvObj опустеть []функция использует активный конфигурационный набор, активные варианты и активные дозы.

При указании dvObj в качестве вариантов функция использует указанные варианты и активные дозы. Любые другие варианты игнорируются.

При указании dvObj в качестве доз функция использует указанные дозы и активные варианты. Любые другие дозы игнорируются.

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

пример

sbioaccelerate(modelObj,csObj,dvObj) использует объект configset csObj и дозы или варианты, указанные dvObj.

Если установить csObj кому [], то функция использует активный объект configset.

Если установить dvObj кому [], то функция не использует вариантов, но использует активные дозы.

Если установить dvObj для вариантов функция использует указанные варианты и активные дозы. Любые другие варианты игнорируются.

Если установить dvObj для доз функция использует указанные дозы и активные варианты. Любые другие дозы игнорируются.

пример

sbioaccelerate(modelObj,csObj,variantObj,doseObj) использует объект configset csObj, объект variant или массив variant, указанный variantObj и объект дозы или массив доз, указанный doseObj. Любые другие конфигурационные элементы, дозы и варианты игнорируются.

Если установить csObj кому [], то функция использует активный объект configset.

Если установить variantObj кому [], то функция не использует вариантов.

Если установить doseObj кому [], тогда функция не использует дозы.

Примеры

свернуть все

Загрузить проект SimBiology с именем lotka, который содержит модель m1.

sbioloadproject('lotka','m1')

Подготовка модели к ускоренному моделированию.

sbioaccelerate(m1);

Моделирование модели с использованием различных начальных количеств видов x.

x = sbioselect(m1,'type','species','name','x');
for i=1:5
	x.initialAmount = i;
	sd(i) = sbiosimulate(m1);
end

Постройте график результатов.

sbioplot(sd);

Figure contains an axes. The axes with title States versus Time contains 20 objects of type line. These objects represent Run 1 - x, Run 1 - y1, Run 1 - y2, Run 1 - z, Run 2 - x, Run 2 - y1, Run 2 - y2, Run 2 - z, Run 3 - x, Run 3 - y1, Run 3 - y2, Run 3 - z, Run 4 - x, Run 4 - y1, Run 4 - y2, Run 4 - z, Run 5 - x, Run 5 - y1, Run 5 - y2, Run 5 - z.

Загрузите образец проекта SimBiology.

sbioloadproject radiodecay.sbproj

Добавьте новый набор конфигурации, используя другое время остановки, равное 15 секундам.

csObj = addconfigset(m1,'newStopTimeConfigSet');
csObj.StopTime = 15;

Подготовьте модель к ускоренному моделированию с помощью нового объекта configset.

sbioaccelerate(m1,csObj);

Моделирование модели с использованием одного и того же объекта configset.

sim = sbiosimulate(m1,csObj);
sbioplot(sim);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

Загрузите образец проекта SimBiology.

sbioloadproject radiodecay.sbproj

Увеличение количества видов x на 100 молекул через 2 и 4 секунды путем добавления стандартной дозы.

dObj1 = adddose(m1,'d1','schedule');
dObj1.Amount = 100;
dObj1.AmountUnits = 'molecule';
dObj1.TimeUnits = 'second';
dObj1.Time = 2;
dObj1.TargetName = 'unnamed.x';

dObj2 = adddose(m1,'d2','schedule');
dObj2.Amount = 100;
dObj2.AmountUnits = 'molecule';
dObj2.TimeUnits = 'second';
dObj2.Time = 4;
dObj2.TargetName = 'unnamed.x';

Подготовка модели для ускоренного моделирования с использованием массива обеих доз.

sbioaccelerate(m1,[dObj1,dObj2]);

Моделирование модели без использования дозы или какого-либо подмножества набора доз без необходимости повторного запуска sbioaccelerate.

sim1 = sbiosimulate(m1);
sim2 = sbiosimulate(m1,dObj1);
sim3 = sbiosimulate(m1,dObj2);
sim4 = sbiosimulate(m1,[dObj1,dObj2]);

Постройте график результатов.

sbioplot(sim1);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

sbioplot(sim2);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

sbioplot(sim3);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

sbioplot(sim4);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

Загрузите образец проекта SimBiology.

sbioloadproject radiodecay.sbproj

Получение набора конфигурации по умолчанию из модели.

defaultConfigSet = getconfigset(m1,'default');

Увеличение количества видов x на 100 молекул через 2 секунды путем добавления стандартной дозы.

dObj = adddose(m1,'d1','schedule');
dObj.Amount = 100;
dObj.AmountUnits = 'molecule';
dObj.TimeUnits = 'second';
dObj.Time = 2;
dObj.TargetName = 'unnamed.x';

Подготовьте модель к ускоренному моделированию с использованием объекта configset по умолчанию и объекта с добавленной дозой.

sbioaccelerate(m1,defaultConfigSet,dObj);

Моделирование модели с использованием одних и тех же объектов configset и dose.

sim = sbiosimulate(m1,defaultConfigSet,dObj);

Постройте график результата.

sbioplot(sim);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

Загрузите образец проекта SimBiology.

sbioloadproject radiodecay.sbproj

Добавьте новый набор конфигурации, используя другое время остановки, равное 15 секундам.

csObj = m1.addconfigset('newStopTimeConfigSet');
csObj.StopTime = 15;

Увеличение количества видов x на 100 молекул через 2 секунды путем добавления стандартной дозы.

dObj = adddose(m1,'d1','schedule');
dObj.Amount = 100;
dObj.AmountUnits = 'molecule';
dObj.TimeUnits = 'second';
dObj.Time = 2;
dObj.TargetName = 'unnamed.x';

Добавление варианта вида x с использованием другого начального количества 500 молекул.

vObj = addvariant(m1,'v1');
addcontent(vObj,{'species','x','InitialAmount',500});

Подготовка модели к ускоренному моделированию с использованием объектов configset, dose и variant. В этом случае третий аргумент sbioaccelerate должен быть объектом варианта.

sbioaccelerate(m1,csObj,vObj,dObj);

Моделирование модели с использованием тех же объектов configset, variant и dose.

sim = sbiosimulate(m1,csObj,vObj,dObj);

Постройте график результата.

sbioplot(sim);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent x, z.

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

свернуть все

Модель SimBiology, заданная как объект модели SimBiology. Модель минимально требует, чтобы одна реакция или правило скорости были ускорены для моделирования.

Объект набора конфигурации, указанный как configset object хранит специфичную для моделирования информацию. При указании csObj как[], sbioaccelerate использует текущий активный конфигурационный набор.

Доза или вариационный объект, указанный как один из следующих: ScheduleDose object, RepeatDose object, массив дозовых объектов, Variant objectили массив объектов исполнения.

  • Использовать [] если требуется явным образом исключить любые исполнительные объекты из sbioaccelerate функция.

  • Когда dvObj является дозовым объектом, sbioaccelerate использует указанный объект дозы, а также все активные объекты вариантов, если они доступны. При ускорении модели с использованием массива дозовых объектов можно моделировать модель с использованием любого подмножества дозовых объектов из массива.

  • Когда dvObj является объектом-вариантом, sbioaccelerate использует указанный объект варианта, а также любые объекты активной дозы, если они доступны. При выполнении можно использовать любые входные аргументы вариантов или не использовать их. sbioaccelerate.

Объект Variant, указанный как Variant object или массив объектов исполнения. Использовать [] если требуется явным образом исключить любой объект-вариант из sbioaccelerate.

Дозовый объект, указанный как ScheduleDose object, RepeatDose objectили массив дозовых объектов. Дозовый объект определяет добавления, которые вносятся в количества видов или значения параметров. Использовать [] когда вы хотите явно исключить любые объекты дозы из sbioaccelerate.

Примечание

Если передать в массиве доз sbioaccelerate, вы можете смоделировать модель, используя любое подмножество доз, и не нужно запускать ускорение снова.

Представлен в R2010a