A 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