updateInitialAssignments

Обновите начальные правила назначения, чтобы удалить зависимости порядка

Описание

пример

updateInitialAssignments(model) обновляет активные начальные правила назначения в model SimBiology восстановить те же результаты симуляции во времени = 0, как в R2017a или ранее, когда начальные правила назначения были оценены согласно порядку, появившемуся в модели. Как и R2017b, порядок, в котором начальные правила назначения появляются в модели, не влияет на результаты симуляции. Для получения дополнительной информации смотрите Порядок оценки правил.

пример

[tfUpdated, ruleChanges, newParameters, modelBackup] = updateInitialAssignments(model) возвращает логическое значение, указывающее, обновлена ли модель, tfUpdated, таблица изменений, внесенных в правила, ruleChanges, вектор вновь добавленных параметров, newParameters, и резервную копию исходной модели, добавляя текст " (copy)"к исходному имени модели.

Примеры

свернуть все

Загрузите выборку модели.

sbioloadproject lotka

Показать список видов и их начальных количеств.

m1.Species
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               

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

addrule(m1,'x = z','initialAssignment');
addrule(m1,'z = 100','initialAssignment');

Отобразите правила.

m1.Rules
ans = 
   SimBiology Rule Array

   Index:    RuleType:            Rule:  
   1         initialAssignment    x = z  
   2         initialAssignment    z = 100

Удалите зависимости порядка правил из модели. tf является булевым, указывающим, была ли модель обновлена, ruleChanges - сводная таблица изменений, внесенных в правила, и newParas является вектором новых добавленных объектов параметров. backup - копия исходной (неизмененной) модели.

[tf,ruleChanges,newParas,backup] = updateInitialAssignments(m1)
tf = logical
   1

ruleChanges=1×3 table
         UpdatedRule         OldAssignment    NewAssignment
    _____________________    _____________    _____________

    [1x1 SimBiology.Rule]       "x = z"         "x = z0"   

newParas = 
   SimBiology Parameter Array

   Index:    Name:    Value:    Units:
   1         z0       0               

backup = 
   SimBiology Model - lotka (copy) 

   Model Components:
     Compartments:      1
     Events:            0
     Parameters:        3
     Reactions:         3
     Rules:             2
     Species:           4
     Observables:       0

Чтобы удалить зависимости порядка, SimBiology обновил начальное выражение назначения x = z на x = z0, где z0 является вновь добавленным параметром.

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

свернуть все

Модель SimBiology, заданная как объект модели.

Пример: m1

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

свернуть все

Обновляется ли модель, возвращается следующим true или false.

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

СтолбецОписание
UpdatedRuleВектор обновленных объектов правил в модели.
OldAssignmentСтроковый вектор исходного Rule значения свойств в модели.
NewAssignmentСтроковый вектор новой Rule значения свойств в модели.

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

Резервная копия исходной модели, возвращенная как объект модели.

Введенный в R2017b