exponenta event banner

sbioaccelerate

Подготовьте объект модели к ускоренным симуляциям

Синтаксис

sbioaccelerate(modelObj)
sbioaccelerate(modelObj,csObj)
sbioaccelerate(modelObj,dvObj)
sbioaccelerate(modelObj,csObj,dvObj)
sbioaccelerate(modelObj,csObj,variantObj,doseObj)

Описание

пример

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

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

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

Примечание

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

Предпосылки

Чтобы подготовить ваши модели к ускоренным симуляциям, установите и настроить поддерживаемый компилятор. Для получения дополнительной информации смотрите Предпосылки для Ускорения Симуляций и Исследований.

пример

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

пример

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

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

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

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

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

пример

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

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

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

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

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

пример

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

Если вы устанавливаете 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);

Загрузите демонстрационный проект SimBiology.

sbioloadproject radiodecay.sbproj

Добавьте новую конфигурацию модели с помощью различного времени остановки 15 секунд.

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

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

sbioaccelerate(m1,csObj);

Моделируйте модель с помощью того же объекта configset.

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

Загрузите демонстрационный проект 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);

sbioplot(sim2);

sbioplot(sim3);

sbioplot(sim4);

Загрузите демонстрационный проект 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 и объектов дозы.

sim = sbiosimulate(m1,defaultConfigSet,dObj);

Постройте результат.

sbioplot(sim);

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

sbioaccelerate(m1,csObj,vObj,dObj);

Моделируйте модель с помощью того же configset, варианта и объектов дозы.

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

Постройте результат.

sbioplot(sim);

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

свернуть все

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

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

Доза или различный объект, заданный как одно из следующего: scheduleDose object, repeatDose object, массив объектов дозы, variant object или массива различных объектов.

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

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

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

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

Объект Dose, заданный как scheduleDose object, repeatDose object или массив объектов дозы. Объект дозы задает сложения, которые сделаны к суммам разновидностей или значениям параметров. Используйте [] когда это необходимо, чтобы явным образом исключить любые объекты дозы из sbioaccelerate.

Примечание

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

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