StatesToLog

Задайте разновидности, отсек или зарегистрированные данные о параметре

Описание

StatesToLog свойство задает разновидности, отсек или данные о параметре, чтобы регистрировать во время симуляции. Это - данные, возвращенные в x во время выполнения [t,x] = sbiosimulate(modelObj). По умолчанию все разновидности, непостоянные отсеки и непостоянные параметры регистрируются.

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

Характеристики

ПрименяетсяОбъект: RuntimeOptions
Тип данныхВектор символов, массив ячеек из символьных векторов, объект или вектор из объектов
Значения данныхОбъекты разновидностей, объекты отсека или объекты параметра. Значением по умолчанию является 'all', что означает все объекты разновидностей, все непостоянные объекты отсека и все непостоянные объекты параметра регистрируются. Непостоянный отсек или параметр означают что его Constant свойство установлено в ложь.
ДоступЧтение-запись

Примеры

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

Загрузите модель Лотки-Вольтерры.

sbioloadproject lotka;

Получите configset объект lotka модели m1.

configset = getconfigset(m1);

Отобразите список разновидностей, данные которых регистрируются по умолчанию во время симуляции.

configset.RuntimeOptions.StatesToLog
ans = 
   SimBiology Species Array

   Index:    Compartment:    Name:    Value:    Units:
   1         unnamed         x        1               
   2         unnamed         y1       900             
   3         unnamed         y2       900             
   4         unnamed         z        0               

Предположим, что вы хотите регистрировать только разновидности y1 и y2 данные. Можно задать их имена как массив ячеек строк и установить его на StatesToLog свойство.

configset.RuntimeOptions.StatesToLog = {'y1','y2'};

Подтвердите установку.

configset.RuntimeOptions.StatesToLog
ans = 
   SimBiology Species Array

   Index:    Compartment:    Name:    Value:    Units:
   1         unnamed         y1       900             
   2         unnamed         y2       900             

В качестве альтернативы можно задать массив объектов разновидностей (вместо строк) к StatesToLog свойство.

y1 = m1.Species(2);
y2 = m1.Species(3);
configset.RuntimeOptions.StatesToLog = [y1, y2];

Симулируйте и постройте результаты. Заметьте, что результаты симуляции только y1 и y2 построены.

sbioplot(sbiosimulate(m1));

Figure contains an axes object. The axes object with title States versus Time contains 2 objects of type line. These objects represent y1, y2.

Чтобы сбросить к списку по умолчанию, устанавливает StatesToLog к строке 'all', что означает все объекты разновидностей, все непостоянные объекты отсека и все непостоянные объекты параметра регистрируются по умолчанию. Непостоянный отсек или параметр означают, что его свойство Constant установлено в ложь.

configset.RuntimeOptions.StatesToLog = 'all';

Симулируйте снова. Заметьте, что все данные о разновидностях отображены на графике.

sbioplot(sbiosimulate(m1));

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

Не задавайте 'all' как строка ячейки, такая как {'all'}. Если так, SimBiology интерпретирует его как разновидность под названием all.

Смотрите также

Constant, Configset, RuntimeOptions