stoichiometry matrix позволяет вам легко определить:
Реагенты и продукты в определенной реакции в модели, включая стехиометрическое значение реагентов и продуктов
Реакции, что определенная разновидность является частью, и является ли разновидность реагентом или продуктом в той реакции
Матрицей стехиометрии является M-by-R матрица, где M равняется общему количеству разновидностей в модели, и R равняется общему количеству реакций в модели. Каждая строка соответствует разновидности, и каждый столбец соответствует реакции.
Матрица указывает, какие разновидности и реакции включены как реагенты и продукты:
Реагенты представлены в матрице с их стехиометрическим значением в соответствующем местоположении (строка разновидностей, столбец реакции). Реагенты появляются как отрицательные величины.
Продукты представлены в матрице с их стехиометрическим значением в соответствующем местоположении (строка разновидностей, столбец реакции). Продукты появляются как положительные значения.
Все другие местоположения в матрице содержат 0.
Например, рассмотрите model object содержа две реакции. Одна реакция (названный R1) равно 2 A + B -> 3 C, и другая реакция (названный R2) равно B + 3 D -> 4 A. Матрица стехиометрии:
R1 R2 A -2 4 B -1 -1 C 3 0 D 0 -3
Получите матрицу стехиометрии для модели путем передачи model object как входной параметр к getstoichmatrix метод.
Читайте в m1, объект модели, с помощью sbmlimport:
m1 = sbmlimport('lotka.xml');Получите матрицу стехиометрии для m1:
[M,objSpecies,objReactions] = getstoichmatrix(m1)
M =
(2,1) 1
(2,2) -1
(3,2) 1
(3,3) -1
(4,3) 1
objSpecies =
'x'
'y1'
'y2'
'z'
objReactions =
'Reaction1'
'Reaction2'
'Reaction3'Преобразуйте матрицу стехиометрии от разреженной матрицы до a full матрица, чтобы более легко видеть отношения между разновидностями и реакциями:
M_full = full(M)
M_full =
0 0 0
1 -1 0
0 1 -1
0 0 1