Определение матрицы смежности для модели

Что такое матрица смежности?

adjacency matrix является квадратной матрицей, которая предоставляет информацию о реагентах и продуктах реакций в модели. Это позволяет вам легко определить:

  • Реагенты и продукты в определенной реакции в модели

  • Реакции, что определенная разновидность является частью, и является ли разновидность реагентом или продуктом в той реакции

Матрицей смежности является N-by-N матрица, где N равняется общему количеству разновидностей и реакций в модели. Каждая строка соответствует разновидности или реакции, и каждый столбец соответствует разновидности или реакции.

Матрица указывает, какие разновидности и реакции включены как реагенты и продукты:

  • Реагенты представлены в матрице с 1 в соответствующем местоположении (строка разновидностей, столбец реакции). Реагенты появляются выше диагонали.

  • Продукты представлены в матрице с 1 в соответствующем местоположении (строка реакции, столбец разновидностей). Продукты появляются ниже диагонали.

  • Все другие местоположения в матрице содержат 0.

Например, если model object содержит одну реакцию, равную A + B -> C и Name свойством реакции является R1, матрица смежности:

       A    B    C   R1
  A    0    0    0   1
  B    0    0    0   1
  C    0    0    0   0
  R1   0    0    1   0

Получение матрицы смежности для модели

Получите матрицу смежности для модели путем передачи model object как входной параметр к getadjacencymatrix метод.

  1. Читайте в m1, объект модели, с помощью sbmlimport:

    m1 = sbmlimport('lotka.xml');
  2. Получите матрицу смежности для m1:

    [M, Headings] = getadjacencymatrix(m1)
    
    M =
    
       (5,1)        1
       (5,2)        1
       (6,3)        1
       (7,4)        1
       (1,5)        1
       (2,5)        1
       (2,6)        1
       (3,6)        1
       (3,7)        1
    
    
    Headings = 
    
        'x'
        'y1'
        'y2'
        'z'
        'Reaction1'
        'Reaction2'
        'Reaction3'
  3. Преобразуйте матрицу смежности от разреженной матрицы до a full матрица, чтобы более легко видеть отношения между разновидностями и реакциями:

    M_full = full(M)
    M_full =
    
         0     0     0     0     1     0     0
         0     0     0     0     1     1     0
         0     0     0     0     0     1     1
         0     0     0     0     0     0     0
         1     1     0     0     0     0     0
         0     0     1     0     0     0     0
         0     0     0     1     0     0     0

Смотрите также

Похожие темы