Contenido principal

Determine Conserved Moieties in SimBiology

Load the Goldbeter Mitotic Oscillator project, which includes the variable m1, a model object:

sbioloadproject Goldbeter_Mitotic_Oscillator_with_reactions.sbproj

Display the species information.

m1.Compartments.Species
ans = 
   SimBiology Species Array

   Index:    Compartment:    Name:    Value:    Units:
   1         unnamed         C        0.01            
   2         unnamed         M        0.01            
   3         unnamed         Mplus    0.99            
   4         unnamed         X        0.01            
   5         unnamed         Xplus    0.99            
   6         unnamed         V1       0               
   7         unnamed         V3       0               
   8         unnamed         AA       0               

Display the reaction information.

m1.Reactions
ans = 
   SimBiology Reaction Array

   Index:    Reaction:         
   1         AA -> C           
   2         C -> AA           
   3         C + X -> AA + X   
   4         Mplus + C -> M + C
   5         M -> Mplus        
   6         Xplus + M -> X + M
   7         X -> Xplus        

Use the simplest form of the sbioconsmoiety function and display the results. The default call to sbioconsmoiety, in which no algorithm is specified, uses an algorithm based on row reduction.

[g sp] = sbioconsmoiety(m1)
g = 3×6

     0     1     1     0     0     0
     0     0     0     1     1     0
     0     0     0     0     0     1

sp = 6×1 cell
    {'C'    }
    {'M'    }
    {'Mplus'}
    {'X'    }
    {'Xplus'}
    {'AA'   }

The columns in g are labeled by the species sp. Thus the first row describes the conserved relationship, M + Mplus. Notice that the third row indicates that the species AA is conserved, which is because AA is constant (ConstantAmount = 1).

Call sbioconsmoiety again, this time specifying the semipositive algorithm to explore conservation relations in the model. Also specify to return the conserved moieties in a cell array of character vectors, instead of a matrix.

cons_rel = sbioconsmoiety(m1,'semipos','p')
cons_rel = 3×1 cell
    {'AA'       }
    {'X + Xplus'}
    {'M + Mplus'}

Use the 'link' option to study the dependent and independent species.

[SI,SD,L0,NR,ND] = sbioconsmoiety(m1, 'link');

Show the list of independent species.

SI
SI = 3×1 cell
    {'C'}
    {'M'}
    {'X'}

Show the list of dependent species.

SD
SD = 3×1 cell
    {'Mplus'}
    {'Xplus'}
    {'AA'   }

Show the link matrix relating SD and SI by converting the L0 output from a sparse matrix to a full matrix.

L0_full = full(L0)
L0_full = 3×3

         0   -1.0000         0
         0         0   -1.0000
         0         0         0

Show the independent stoichiometry matrix, NR by converting the NR output from a sparse matrix to a full matrix.

NR_full = full(NR)
NR_full = 3×7

     1    -1    -1     0     0     0     0
     0     0     0     1    -1     0     0
     0     0     0     0     0     1    -1

Show the dependent stoichiometry matrix, ND by converting the ND output from a sparse matrix to a full matrix.

ND_full = full(ND)
ND_full = 3×7

     0     0     0    -1     1     0     0
     0     0     0     0     0    -1     1
     0     0     0     0     0     0     0

See Also