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