Create E1, the elemental matrix for S1: Ornithine C 5 H 13 N 2 O 2 Carbamoyl Phosphate CH 2 NO 5 P Citrulline C 6 H 13 N 3 O 3 Aspartate C 4 H 6 NO 4 Argininosuccinate C 10 H 17 N 4 O 6 Fumarate C 4 H 2 O 4 Arginine C 6 H 15 N 4 O 2 Urea CH 4 N 2 O
Multiply the elemental and stoichiometric matrices in MATLAB: E1·S1 ≠ 0 Something is missing!
function [Ax, Av, Sbin] = topo_properties(S) %Plots the number of metabolites y that participate in x reactions %Function file input is a mxn matrix that defines the stoichiometry of a %reaction network %Function file outputs include: Ax = compound adjacency matrix, %Av = reactions adjacency matrix, Sbin = binary form of Smatrix %Generate binary form of S matrix [m,n] = size(S); Sbin = zeros(m,n); for i= 1:m for j= 1:n if S(i,j)~=0; Sbin(i,j) = 1; if S(i,j) == 0; Sbin(i,j) = 0; end %calculate transpose of Sbin SbinT = transpose(Sbin);
%calculate Ax, the compound adjacency matrix Ax = Sbin*SbinT; %calculate Av, the reaction adjacency matrix Av = SbinT*Sbin; % bar plot of the number of metabolites y, that participate in x reactions [m,n] = size(Ax); y = ; for i = 1:m y = [y Ax(i,i)]; end maxreactions = max(y); minreaction = min(y); reactions = [minreactions:1:maxreactions]; compounds = zeros(1,length(reactions)); for j = 1:length(reactions); I = find(y == reactions(j)); compounds(j) = [length(I)]; end bar(reactions,compounds) xlabel('number of reactions') ylabel('number of compounds')
Your consent to our cookies if you continue to use this website.