Information Provided by Ravi Rao
Conservation analysis can be carried out using the Structural Analysis module in SBW (edu.kgi.StructAnalysis) that provides the functionality to identify conserved cycles in a biochemical network. This is done by analyzing the stoichiometry matrix (N) for dependencies. The module generates the Link-zero (L0) matrix using the Householder QR method. Subsequently other entities of interest such as the NR and N0 matrices as well as the conservation laws can be built from L0 matrix.
This module is a part of SBW (version 2.4.0 and later) and can be downloaded from sys-bio.org The Structual Analysis module has been tested on Small Models as well as Large Models. Please follow the links to see the results. A Graphical interface to this tool has also been developed and is described below.
You can also download from here both the Structural Analysis Module and the Graphical User Interface from here. This also requires the SBW_CLAPACK module to carry out numerical analysis support. However, you may not be able to run the Structural Analysis module with an older installation of SBW (before 2.4.0) as certain components in the new SBW release are required for proper initialization and execution. Please visit sys-bio.org to download the latest SBW release version.
The Structual Analysis Tool is a graphical interface to the Structural Analysis Module. Here we show how can be used with JDesigner (It should be noted that this tool will work from CellDesigner or any other SBW compatible application). For this purpose we use a model of the repressilator (SBML) shown below. Please note that the blue colored nodes (Waste_1, Waste_2, Waste_3, Waste_4, Waster_5 and Waste_6) are boundary nodes while the orange colored nodes (tetR0, tetR1, tetRr, tetRp, cIr, cIp, lacIr, lacIp, cI1, lacI1, cI0 and lacI0) are internal to the network.
After opening this model in JDesigner, the user can invoke the Structural Analysis Tool by selecting it from the SBW menu option. (This step assumes that the user has already installed SBW version 2.4.0 or later which supports Conservation Analysis). This menu is shown below:
The model is communicated as a SBML file from JDesigner to the Structural Analysis Tool. This starts the Graphical Interface that in turn calls the edu.kgi.StructAnalysis module through SBW. Results from the module are communicated back to the graphical front end and appear as shown below. The user sees the name of the model, the number of species, the number of reactions and the rank of the model as computed by the Structural Analysis module using Householder QR method. The display has four panels of which the bottom left panel lists a selection of options that the user can choose from. These include the Stoichiometry matrix N, NR matrix, N0 matrix, L0 matrix, L matrix, Gamma matrix, K0 and Nullspace.
Selecting any of these displays the corresponding matrix in grid form in the right bottom panel. These matrices can also be displayed by clicking on the buttons at the bottom. The top right panel is used to display text items such as the summary and the listing of conservation laws.
It can be seen that the summary panel lists the number of conservation laws along with a the list of Independent and dependent species. In this case, these are given by
Independent Species: cIp, lacIp, tetRp, lacIr, tetRr, cIr, lacI0, tetR0, cI0 &
There are three conservation laws given as
+ tetR0 + tetR1
+ lacI0 + lacI1
+ cI0 + cI1
In addition, the user has the ability to test the validity of these conservation laws by running five tests. This can be done by using the “Run Validation Tests” button. In this case, the following output is shown in the summary panel.
Testing Validity of Conservation Laws.
Passed Test 1 : Gamma*N = 0 (Zero matrix)
Passed Test 2 : Rank(N) using SVD (9) is same as m0 (9)
Passed Test 3 : Rank(NR) using SVD (9) is same as m0 (9)
Passed Test 4 : Rank(NR) using QR (9) is same as m0 (9)
Passed Test 5 : L0 obtained with QR matches Q21*inv(Q11)
It can be seen that these tests check the rank of the generated matrices in a number of ways to ensure their correctness. If the generated conserved cycles have an error, the resultant matrices would not allow the ranks to match, and in particular, the product of the conservation matrix Gamma and the Stoichiometric matrix N would not be a zero matrix.
Multiple models can be added to the Structural Analysis tool. The user can in fact select multiple SBML files for input at a time. This allows for the Structural Analysis to be carried out on a number of models. The results from each of these models are stored internally in data sets, and the user can revisit them at any time (as long as the interface is open).