King-Altman Method (Feng)

From BioComputationWiKi

Jump to: navigation, search

Contents

Pattern generation

(a) Describe the mechanism as a set of branches (reaction) that connect nodes (enzyme forms).
(b) Inscribe circles about any n-1 nodes, where n is the total number of nodes.
(c) List separately the branches cut bu the n-1 circles.
(d) Using the principles of Wang algebra, multiply "alphanumerically" the listing obtained in step(c) above.

Pattern number validation method

Definition of Cut Matrix.
The cut matrix is described by using the n-1 nodes of a mechanism as the row numbers and the directed branches as column numbers. For a_ij in matrix, equals to 1 if branch j enters node i, equals to -1 if branch j leaves node i and equals 0 otherwise. The matrix is m X n matrix, the m is the total number of nodes, the n is the total number of branches.

The determinant of the product of A and A transpose yields the correct number of valid patterns for any mechanism.

Number of valid pattern = |AA'|

Failed to parse (Can't write to or create math temp directory): \alpha+\beta


Example

Fumarse Mechanism: 5 enzyme forms, 6 reactions.



The figure example for cut matrix generation


The cut matrix expression


Wang algebra


PPT file

Here is the PPT file Media:KA.pdf

References

Program

[1]

Program Example

input file for Fumarse Mechanism: 5 enzyme forms, 6 reactions.

1 2 k1
2 1 k_1
1 5 k2
5 1 k_2
5 4 k3
4 5 k_3
2 4 k4
4 2 k_4
3 4 k5
4 3 k_5
1 3 k6
3 1 k_6

Running the fellowing functions in MATLAB commend line

[fraction denominator ratelist] = KAMethod('input5');
BuildFile(fraction,denominator,ratelist);

The generated Expression.m will be

function [E F D] = Expression(K)

%%
% user supplys the input parameter K, assigning the value to k
k1 = K(1);
k2 = K(2);
k3 = K(3);
k4 = K(4);
k5 = K(5);
k6 = K(6);
k_1 = K(7);
k_2 = K(8);
k_3 = K(9);
k_4 = K(10);
k_5 = K(11);
k_6 = K(12);

%%
% numerator
E(1) = k_1*k_6*k_2*k_4+k_1*k_6*k_2*k_5+k_1*k_6*k_2*k_3+k_1*k_6*k_4*k3+k_1*k_6*k_5*k3+ ...
k_1*k_2*k_4*k5+k_1*k_2*k_3*k5+k_1*k_4*k5*k3+k_6*k_2*k_5*k4+k_6*k_2*k_3*k4+k_6*k_5*k4*k3+k_2*k_3*k4*k5;
E(2) = k1*k_4*k_6*k_2+k1*k_6*k_2*k_5+k1*k_6*k_2*k_3+k1*k_4*k_6*k3+k1*k_6*k_5*k3+k1*k_4*k_2*k5+...
k1*k_2*k_3*k5+k1*k_4*k5*k3+k_4*k5*k6*k_2+k_4*k3*k2*k_6+k_4*k5*k3*k6+k_4*k5*k3*k2;
E(3) = k6*k_1*k_2*k_4+k6*k_5*k_1*k_2+k6*k_1*k_2*k_3+k6*k_1*k_4*k3+k6*k_5*k_1*k3+k_5*k4*k1*k_2+...
k_5*k3*k2*k_1+k_5*k4*k3*k1+k6*k_5*k_2*k4+k6*k_2*k_3*k4+k6*k_5*k4*k3+k_5*k4*k3*k2;
E(4) = k4*k1*k_6*k_2+k5*k6*k_1*k_2+k3*k2*k_1*k_6+k4*k3*k1*k_6+k5*k3*k6*k_1+k4*k5*k1*k_2+...
k5*k3*k2*k_1+k4*k5*k3*k1+k4*k5*k6*k_2+k4*k3*k2*k_6+k4*k5*k3*k6+k4*k5*k3*k2;
E(5) = k2*k_1*k_6*k_4+k2*k_1*k_6*k_5+k2*k_3*k_1*k_6+k_3*k4*k1*k_6+k_3*k5*k6*k_1+k2*k_1*k_4*k5+...
k2*k_3*k_1*k5+k_3*k4*k5*k1+k2*k_6*k_5*k4+k2*k_3*k_6*k4+k_3*k4*k5*k6+k2*k_3*k4*k5;

%%
% denominator
D =k_1*k_6*k_2*k_4+k_1*k_6*k_2*k_5+k_1*k_6*k_2*k_3+k_1*k_6*k_4*k3+k_1*k_6*k_5*k3+k_1*k_2*k_4*k5+k_1*k_2*k_3*k5+...
k_1*k_4*k5*k3+k_6*k_2*k_5*k4+k_6*k_2*k_3*k4+k_6*k_5*k4*k3+k_2*k_3*k4*k5+k1*k_4*k_6*k_2+k1*k_6*k_2*k_5+...
k1*k_6*k_2*k_3+k1*k_4*k_6*k3+k1*k_6*k_5*k3+k1*k_4*k_2*k5+k1*k_2*k_3*k5+k1*k_4*k5*k3+k_4*k5*k6*k_2+k_4*k3*k2*k_6+...
k_4*k5*k3*k6+k_4*k5*k3*k2+k6*k_1*k_2*k_4+k6*k_5*k_1*k_2+k6*k_1*k_2*k_3+k6*k_1*k_4*k3+k6*k_5*k_1*k3+...
k_5*k4*k1*k_2+k_5*k3*k2*k_1+k_5*k4*k3*k1+k6*k_5*k_2*k4+k6*k_2*k_3*k4+k6*k_5*k4*k3+k_5*k4*k3*k2+...
k4*k1*k_6*k_2+k5*k6*k_1*k_2+k3*k2*k_1*k_6+k4*k3*k1*k_6+k5*k3*k6*k_1+k4*k5*k1*k_2+k5*k3*k2*k_1+k4*k5*k3*k1+...
k4*k5*k6*k_2+k4*k3*k2*k_6+k4*k5*k3*k6+k4*k5*k3*k2+k2*k_1*k_6*k_4+k2*k_1*k_6*k_5+k2*k_3*k_1*k_6+k_3*k4*k1*k_6+...
k_3*k5*k6*k_1+k2*k_1*k_4*k5+k2*k_3*k_1*k5+k_3*k4*k5*k1+k2*k_6*k_5*k4+k2*k_3*k_6*k4+k_3*k4*k5*k6+k2*k_3*k4*k5;

%%
% fraction
F(1) = E(1)/D;
F(2) = E(2)/D;
F(3) = E(3)/D;
F(4) = E(4)/D;
F(5) = E(5)/D;