Задайте тип правила для объекта правила
RuleType
свойство указывает на тип правила, заданного объектом правила. Rule
объект задает, как определенные разновидности, параметры и отсеки должны взаимодействовать друг с другом. Например, правило могло утвердить, что общее количество разновидностей A и разновидностей B должно быть некоторым значением. Rule
выражение MATLAB®, которое задает изменение в количестве объекта разновидностей или объекте параметра Value
когда правило оценено.
Можно добавить правило в объект модели с addrule
метод и удаляет правило с delete
метод. Для получения дополнительной информации о правилах смотрите addrule
.
Типы правил в SimBiology® следующие:
initialAssignment
— Позволяет вам задать начальное значение параметра, разновидностей или способности отсека, как функция других значений компонента модели в модели.
repeatedAssignment
— Позволяет вам задать значение, которое содержит в любом случае в процессе моделирования и является функцией других значений компонента модели в модели.
algebraic
— Позволяет вам задать математические ограничения на один или несколько параметров, разновидностей или отсеков, которые должны содержать во время симуляции.
rate
— Позволяет вам задать производную времени значения параметров, суммы разновидностей или способности отсека.
Если модели задали разновидность в концентрации, варьирующейся rate
управляйте, и это находится в отсеке с различным объемом, можно только использовать rate
или initialAssignment
правила варьироваться объем отсека.
С другой стороны, если вы варьируетесь объем отсека с помощью repeatedAssignment
или algebraic
правила, затем вы не можете варьироваться разновидность (заданный в концентрации) в том отсеке с rate
правило.
Причина этих ограничений состоит в том, что, если разновидность задана в концентрации и это находится в отсеке с различным объемом, производная времени той разновидности является функцией скорости изменения отсека. Поскольку отсеки варьировались правилами скоростей, решатель имеет ту информацию.
Обратите внимание на то, что, если вы задаете разновидности в суммах нет никаких ограничений.
Применяется | Объект: правило |
Тип данных | Символьный вектор |
Значения данных | 'initialAssignment' , 'repeatedAssignment' 'algebraic' , 'rate' . Значением по умолчанию является 'initialAssignment' . |
Доступ | Чтение-запись |
Создайте объект модели, и затем добавьте объект реакции.
modelObj = sbiomodel ('my_model'); reactionObj = addreaction (modelObj, 'a -> b');
Добавьте правило, которое задает количество разновидности c
. В выражении правила, k
константа скорости для a -> b
.
ruleObj = addrule(modelObj, 'c = k*(a+b)')
Измените RuleType
от значения по умолчанию ('initialAssignment'
) к 'rate'
и проверьте его с помощью get
команда.
set(ruleObj, 'RuleType', 'rate'); get(ruleObj)
MATLAB возвращает все свойства для объекта правила.
Active: 1 Annotation: '' Name: '' Notes: '' Parent: [1x1 SimBiology.Model] Rule: 'c = k*(a+b)' RuleType: 'rate' Tag: '' Type: 'rule' UserData: []
Определения и оценки правил в моделях SimBiology, addrule
, delete