Size: 3479
Comment:
|
Size: 2898
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
Line 6: | Line 5: |
1. Download the file AraGSM.tgz into the area in which you have been using for your other practicals. |
1. Download the file AraGSM.tgz into the area in which you have been using for your other practicals. |
Line 9: | Line 7: |
1. This is a compressed archive file and you will need to extract the files before they can be used: |
1. This is a compressed archive file and you will need to extract the files before they can be used: . |
Line 13: | Line 10: |
1. This will generate a directory, A.thaliana, containing two sub-directories: Model and Analysis. Model contains the model definition files and an additional python module (in Model/Tools). Analysis contains the python modules you will need for this practical. 1. For the sake of the practical we have made a few simplifications and the model and results will not be identical to those in the lecture. the aim of the practical is to illustrate the techniques used. |
|
Line 22: | Line 13: |
1. This will generate a directory, A.thaliana, containing two sub-directories: Model and Analysis. Model contains the model definition files and an additional python module (in Model/Tools). Analysis contains the python modules you will need for this practical. 1. For the sake of the practical we have made a few simplifications and the model and results will not be identical to those in the lecture. the aim of the practical is to illustrate the techniques used. |
|
Line 25: | Line 19: |
1. cd into Analysis/Knockouts |
1. cd into Analysis/Knockouts |
Line 29: | Line 22: |
Start [[http://mudshark.brookes.ac.uk/ScrumPy|ScrumPy]] and the load the model as before. | Start [[http://mudshark.brookes.ac.uk/ScrumPy|ScrumPy]] and the load the model as before. |
Line 32: | Line 26: |
Import the {{{KnockOut}}} module. | Import the {{{KnockOut}}} module. |
Line 35: | Line 30: |
This defines a single function also called {{{KnockOut}}}{{{Effects}}} that returns a dictionary recording the impact of remove each reaction from the model (relative change in objective value) | This defines a single function also called {{{KnockOut}}}{{{Effects}}} that returns a dictionary recording the impact of remove each reaction from the model (relative change in objective value) |
Line 37: | Line 32: |
1. lp = BuildLP.BiomassLP(m) | 1. lp = BuildLP.BiomassLP(m) 1. lp.Solve() wild_type_solution = lp.GetPrimSol() . Observe the flux values of the Calvin Cycle enzymes |
Line 39: | Line 41: |
lp.Solve() | Load the'' KnockOutEffects'' from the KnockOut module and provide the reaction to knockout in the argument eg. mutant_solution = KnockOutEffects.KnockOut(m, 'SEDOHEPTULOSE-BISPHOSPHATASE-RXN_Plas', lp) |
Line 41: | Line 44: |
wild_type_solution = lp.GetPrimSol() Observe the flux values of the Calvin Cycle enzymes |
|
Line 44: | Line 45: |
Load the'' KnockOutEffects'' from the KnockOut module. | Investigate the differences in wild_type_solution and mutant_solution and interpret the results. |
Line 46: | Line 47: |
1. from Util import Set 1. new_active_reactions = Set.Complement(mutant_solution, wild_type_solution) 1. Similarly , Find the reactions that were inactive as 1. |
|
Line 50: | Line 65: |
{{{$ cd S.Typhim/Analysis/ATPScan}}} | {{{$ cd A.thaliana/Analysis/LightScan}}} |
Line 58: | Line 73: |
{{{ >>> m = ScrumPy.Model("../../Model/MetaSal.spy") }}} | {{{ >>> m = ScrumPy.Model("../../Model/AraTopLevel.spy") }}} |
Line 66: | Line 81: |
1. Now import the module called ATPScan | 1. Now import the module called LightScan |
Line 68: | Line 85: |
{{{ >>> import ATPScan }}} | {{{ >>> import LightScan }}} |
Line 70: | Line 87: |
1. The module contains a function, also called {{{ATPScan}}} that will generate a data set (as shown in previous lectures) containing the lp solutions over a range of imposed ATP demand values, e.g.: 1. {{{ >>> results = ATPScan.ATPScan(m, 0, 10, 50) }}} 1. Will generate a dataset containing 50 solutions for the model with the imposed ATPase flux varying between 0 and 10 flux units. 1. The ATPScan module also contains three functions to aid in the analysis of results: . {{{ GetChangers(results, tol=1e-6) }}} A list of reactions whose flux value changes by more than tol (default = 1e-6). {{{ GetSwitchers(results) }}} A list of reactions that carry no flux at some point. {{{ GetRanges(results, tol=1e-6) }}} A dictionary mapping reactions to the amount of change in flux over the range of ATP demand. * For example, to plot the reactions that at some point carry no flux: . {{{ results.AddToPlot(ATPScan.GetSwitchers(results)) }}} * Use these functions to identify which fluxes show the greatest response to changes in ATP demand |
Practical 8
Analysing a genome scale metabolic model of A. thaliana
In this practical we (you !) will be replicating some the analysis that was discussed in the previous lecture. In order to do this you will need to download the files associated with the model:
- Download the file AraGSM.tgz into the area in which you have been using for your other practicals.
- This is a compressed archive file and you will need to extract the files before they can be used:
$ tar -zxf AraGSM.tgz
- This will generate a directory, A.thaliana, containing two sub-directories: Model and Analysis. Model contains the model definition files and an additional python module (in Model/Tools). Analysis contains the python modules you will need for this practical.
- For the sake of the practical we have made a few simplifications and the model and results will not be identical to those in the lecture. the aim of the practical is to illustrate the techniques used.
Part A:
Investigating the effect of knocking our the Calvin cycle enzymes from GSM of A. thaliana
- cd into Analysis/Knockouts
Start ScrumPy and the load the model as before.
Import the KnockOut module.
This defines a single function also called KnockOutEffects that returns a dictionary recording the impact of remove each reaction from the model (relative change in objective value)
- lp = BuildLP.BiomassLP(m)
- lp.Solve()
wild_type_solution = lp.GetPrimSol()
- Observe the flux values of the Calvin Cycle enzymes
Load the KnockOutEffects from the KnockOut module and provide the reaction to knockout in the argument
eg. mutant_solution = KnockOutEffects.KnockOut(m, 'SEDOHEPTULOSE-BISPHOSPHATASE-RXN_Plas', lp)
- Investigate the differences in wild_type_solution and mutant_solution and interpret the results.
- from Util import Set
- new_active_reactions = Set.Complement(mutant_solution, wild_type_solution)
- Similarly , Find the reactions that were inactive as
Part B : Analysing the response to varying input of photon flux
- Change directory to the relevant area:
$ cd A.thaliana/Analysis/LightScan
Start ScrumPy and load the model:
>>> m = ScrumPy.Model("../../Model/AraTopLevel.spy")
- (If you wish to avoid a bit of typing, leave the model name blank and use the file selector to find the model file instead.)
- Examine the files that are now presented - how much can you recognise from previous work in this course?
Now import the module called LightScan
>>> import LightScan