Ищите объекты с заданными ограничениями
Out
=
sbioselect('PropertyName
', PropertyValue
)
Out
=
sbioselect('Where', 'PropertyName
', 'Condition
', PropertyValue
)
Out
=
sbioselect(Obj
, 'PropertyName
', PropertyValue
)
Out
=
sbioselect(Obj
, 'Type', 'TypeValue
',
'PropertyName
', PropertyValue
)
Out
=
sbioselect(Obj
, 'Where', 'PropertyName
',
'Condition
', PropertyValue
)
Out
=
sbioselect(Obj
, 'Where', 'PropertyNameCondition'
,
'PropertyNamePattern
', 'Condition
', PropertyValue
)
Out
=
sbioselect(Obj
, 'Where', 'PropertyName1
',
'Condition1
', PropertyValue1
,
'Where', 'PropertyName2
', 'Condition2
', PropertyValue2
,...)
Out
=
sbioselect(Obj
, 'Where', 'PropertyName1
',
'Condition1
', PropertyValue1
,Bool_Operator
,
'Where', 'PropertyName2
', 'Condition2
', PropertyValue2
,...)
Out
= sbioselect(Obj
,
'Depth', DepthValue
,...)
| Объект или массив объектов, возвращенных sbioselect функция. может содержать смесь типов объектов (например, разновидности и параметры), в зависимости от выбора, который вы задаете. Если |
| Объект SimBiology® или массив объектов искать. Если объект не задан, sbioselect ищет корень. |
| Любое свойство объекта ищется. |
| Задайте включать в критерии выбора. |
| Тип объекта включать в выбор, например, sbiomodel , species , reaction , или kineticlaw . |
| Условие поиска. См. таблицу в соответствии с Описанием для списка условий. |
PropertyNameCondition | Условие поиска, которое применяется только к свойству имени. См., что таблица перечисляет “Условия для Имен” ниже. |
PropertyNamePattern | Вектор символов или строка раньше выбирали имя свойства согласно условию, наложенному PropertyNameCondition . |
| Задайте номер глубины, чтобы искать. Верные номера являются положительными целочисленными значениями и inf . Если isinf , sbioselect поисковые запросы и все его дочерние элементы. Если 1 , sbioselect только поисковые запросы и не его дочерние элементы. По умолчанию, isinf . |
sbioselect
поиски объектов с заданными ограничениями.
ищет корневой объект (включая все объекты модели, содержавшие полностью, возражают), и возвращает объекты с именем свойства (Out
=
sbioselect('PropertyName
', PropertyValue
)
) и значение свойства (PropertyName
) содержавший полностью возражают. PropertyValue
ищет корневой объект и находит объекты, которые имеют имя свойства (Out
=
sbioselect('Where', 'PropertyName
', 'Condition
', PropertyValue
)
) и значение (PropertyName
) это совпадает с условием (PropertyValue
). Condition
возвращает объекты с именем свойства (Out
=
sbioselect(Obj
, 'PropertyName
', PropertyValue
)
) и значение свойства (PropertyName
) найденный в любом объекте (PropertyValue
). Если имя свойства в паре значения свойства содержит любого Obj
'?'
или '*'
, затем имя автоматически интерпретировано как выражение с подстановочными знаками, эквивалентное где пункт ('Where', 'wildcard', 'PropertyName', '==', PropertyValue)
.
находит объекты типа (Out
=
sbioselect(Obj
, 'Type', 'TypeValue
',
'PropertyName
', PropertyValue
)TypeValue
), с именем свойства (
) и значение свойства (PropertyName
) найденный в любом объекте (PropertyValue
). Obj
тип объекта SimBiology, который будет включен в выбор, например, TypeValue
species
, reaction
, или kineticlaw
.
находит объекты, которые имеют имя свойства (Out
=
sbioselect(Obj
, 'Where', 'PropertyName
',
'Condition
', PropertyValue
)
) и значение (PropertyName
) то соответствие условие (PropertyValue
). Condition
Если вы ищете значение свойства вектора символов, не задавая условие, необходимо использовать тот же формат в качестве get
возвращается. Например, если get
возвращает Name
как 'MyObject'
, sbioselect
не найдет объект с Name
значение свойства 'myobject'
. Поэтому для этого примера, необходимо задать:
modelObj = sbioselect ('Name', 'MyObject')
Вместо этого если вы используете условие, можно задать:
modelObj = sbioselect ('Where', 'Name', '==i', 'myobject')
sbioselect
поиски объектов модели на корне в обоих случаях.
находит объекты с именем свойства, которое совпадает с шаблоном в (Out
=
sbioselect(Obj
, 'Where', 'PropertyNameCondition'
,
'PropertyNamePattern
', 'Condition
', PropertyValue
)PropertyNamePattern
) с условием (PropertyNameCondition
) и совпадает со значением (PropertyValue
) с условием (Condition
). Используйте этот синтаксис, когда это необходимо, условия поиска и на именах свойства и на значениях свойств.
Условия, с примерами имен свойства и соответствующими примерами значений свойств, которые можно использовать, перечислены в следующих таблицах. Эта таблица показывает вас условия для числовых свойств.
Условия для числовых свойств | Синтаксис в качестве примера |
---|---|
== | Поиск в объекте модели ( parameterObj = sbioselect (modelObj,... 'Where', 'Value', '==', 0.5) == , это эквивалентно исключению условия как показано:parameterObj = sbioselect (modelObj,... 'Value', 0.5) Поиск в объекте модели ( parameterObj = sbioselect (modelObj,... 'Where', 'ConstantValue', '==', false) |
~= | Поиск в объекте модели (modelObj ), и объекты возвращаемого параметра, которые не имеют Value равняйтесь 0.5 .parameterObj = sbioselect (modelObj,... 'Where', 'Value', '~=', 0.5) |
> ,< ,>= ,<= | Поиск в объекте модели ( speciesObj = sbioselect (modelObj, ... 'Where', 'InitialAmount', '>', 50) Поиск в объекте модели ( speciesObj = sbioselect (modelObj,... 'Where', 'InitialAmount', '<=', 50) |
between | Поиск в объекте модели ( speciesObj = sbioselect (modelObj,... 'Where', 'InitialAmount',... 'between', [200 300]) |
~between | Поиск в объекте модели (modelObj ), и возвратите объекты разновидностей, которые имеют начальную сумму (InitialAmount ) это не между 200 и 300 .speciesObj = sbioselect (modelObj,... 'Where', 'InitialAmount',... '~between', [200 300]) |
equal_and_same_type | Подобно == , но кроме того требует, чтобы значение свойства имело тот же тип. Поиск в объекте модели ( zeroObj = sbioselect(modelObj, ... 'Where', '*', 'equal_and_same_type', 0); |
unequal_and_same_type | Подобно ~= , но кроме того требует, чтобы значение свойства имело тот же тип. Выберите все объекты, содержащие свойство, типа double и значение, не равное 0. (Используя nonzeroObj = sbioselect(modelObj, ... 'Where', '*', 'unequal_and_same_type', 0); |
Следующая таблица показывает вам условия для свойства имени или для свойств, значения которых являются векторами символов.
Условия для имен | Синтаксис в качестве примера |
---|---|
== | Поиск в объекте модели ( speciesObj = sbioselect (modelObj,... 'Type', 'species', 'Where',... 'Name', '==', 'Glucose') |
~= | Поиск в объекте модели ( speciesObj = sbioselect (modelObj,... 'Type', 'species', 'Where',... 'Name', '~=', 'Glucose') |
==i | То же самое как |
~=i |
Поиск в объекте модели ( speciesObj = sbioselect (modelObj,... 'Type', 'species', 'Where',... 'Name', '~=i', 'glucose') |
regexp . Выражения поддержек, поддержанные функциями regexp и regexpi . | Поиск в объекте модели ( Obj = sbioselect (modelObj, 'Where',... 'Name', 'regexp', '[ea]se') Поиск в корне, и возвращает объекты, которые имеют Obj = sbioselect ('Where',... 'Name', 'regexp', 'kinase') |
regexpi | То же самое как |
~regexp | Поиск в объекте модели ( Obj = sbioselect (modelObj, 'Where',... 'Name', '~regexp', 'kinase') |
~regexpi | То же самое как |
wildcard | Поддержки |
wildcardi | То же самое как |
~wildcard | Поиск в объекте модели ( Obj = sbioselect (modelObj, 'Where',... 'Name', '~wildcard', 'kin*') |
~wildcardi | То же самое как |
Используйте тип условия function
для любого свойства. Заданное значение должно быть указателем на функцию, который, когда применено значение свойства, возвращает булевскую переменную, указывающую, существует ли соответствие. Следующая таблица показывает пример использования function
.
Условие | Синтаксис в качестве примера |
---|---|
'function' |
Поиск в объекте модели и возвращает объекты реакции чей Out = sbioselect(modelObj, 'Where',... 'Stoichiometry', 'function',... @(x)any(x>2)) iseven = @(x) isnumeric(x)... && isvector(x) && mod(x, 2) == 0; evenValuedObj = sbioselect(modelObj, ... 'where', 'Value', 'function', iseven); |
Условие 'contains'
может использоваться только для тех свойств, значения которых являются массивом объектов SimBiology. Следующая таблица показывает пример использования contains
.
Условие | Синтаксис в качестве примера |
---|---|
'contains' | Поиск в объекте модели и возвращает объекты реакции чей Out = sbioselect(modelObj, 'Where',... 'Reactants', 'contains',... modelObj.Species(1)) |
находит объекты содержавшими в Out
=
sbioselect(Obj
, 'Where', 'PropertyName1
',
'Condition1
', PropertyValue1
,
'Where', 'PropertyName2
', 'Condition2
', PropertyValue2
,...)Obj
это совпадает со всеми заданными условиями.
Можно объединить любое количество имени свойства / пары значения свойства и условия в sbioselect
команда.
находит объекты содержавшими в Out
=
sbioselect(Obj
, 'Where', 'PropertyName1
',
'Condition1
', PropertyValue1
,Bool_Operator
,
'Where', 'PropertyName2
', 'Condition2
', PropertyValue2
,...)Obj
это совпадает со всеми заданными условиями. Векторы поддерживаемого символа для Bool_Operator
следующие.
'and' | Верный, если ('Where' , 'PropertyName1' , 'Condition1' , PropertyValue1 ) и ('Where' , 'PropertyName2' , 'Condition2' , PropertyValue2 ) оба верны. |
'or' | Верный, если любой ('Where' , 'PropertyName1' , 'Condition1' , PropertyValue1 ) или ('Where' , 'PropertyName2' , 'Condition2' , PropertyValue2 ) верно. |
'xor' | Верный, если точно один из ('Where' , 'PropertyName1' , 'Condition1' , PropertyValue1 ) или ('Where' , 'PropertyName2' , 'Condition2' , PropertyValue2 ) верно. |
'not' | Верный, если ('Where' , 'PropertyName1' , 'Condition1' , PropertyValue1 ) верно и ('Where' , 'PropertyName2' , 'Condition2' , PropertyValue2 ) не верно. |
Поддерживаются составные выражения с несколькими булевыми операторами. Приоритет операторов выполняет приказ операций для булевой алгебры not
–> and
–> xor
–> or
.
находит объекты с помощью поисковой глубины модели Out
= sbioselect(Obj
,
'Depth', DepthValue
,...)
. DepthValue
Примечание
Порядок результатов sbioselect не гарантируется при возвращении результатов нескольких типов. Следовательно не рекомендуется зависеть от порядка результатов.