Presentation is loading. Please wait.

Presentation is loading. Please wait.

Terrell L. Hodge MAA PREP 2010 Math Biology: Beyond Calculus.

Similar presentations


Presentation on theme: "Terrell L. Hodge MAA PREP 2010 Math Biology: Beyond Calculus."— Presentation transcript:

1 Terrell L. Hodge MAA PREP 2010 Math Biology: Beyond Calculus

2 Goal for Part 1: Attain a basic working proficiency with the program expa. Objectives: At the end of this tutorial, you should be able to:  Create and save data files for biochemical reaction systems to be analyzed using expa.  Read and interpret a given expa data file to recover the associated biochemical reaction system.  Apply the program expa to calculate the extreme paths of the system described by the data file.  Analyze and interpret the extreme paths (i.e., output of a call to expa) in terms of matrix data, graphical data, and standard biochemical reaction equations.

3 Goal for Part 2: Become familiar with additional exercises or projects that could be assigned to students based on this and other linear algebraic approaches to modeling biochemical reaction systems in a couple of concrete cases. Objectives: By the end of Part 2, you will have in hand exercises and sketches of project ideas with some references to original source material and modules being prepared and/or tested for student use. Some additional useful references are provided in the flash drive that was handed out to all workshop participants, and are also available by request!

4

5 To understand the theory that underlies expa, you should know: ◦ The idea of modeling a biochemical reaction system through the use of its stoichiometric matrix S, where in the case of a metabolic system:  the columns of S correspond to the individual reactions in the system, and  the rows correspond to ‘metabolites’. ◦ The nullspace N(S) of S consists of total flux vectors for the system at a steady state  but standard linear algebraic approaches for calculating a basis for N(S) may lead to biologically meaningless outcomes, however,  computing instead a kind of mixed ‘convex basis’ for N(S) can lead to total flux vectors which are a good basis, i.e., at least respect the biological constraints on the given system. “Extreme paths” are one sort of good (biologically possible) basis for N(S).

6 However, even without knowing anything more than the idea that this program provides some potentially useful output associated to a mathematical model of metabolic pathways or other biochemical reaction systems, we can (and will) for now just explore how to work with the program, perhaps learning something about extreme paths along the way. Some documentation about expa (in evolving forms) appears in the articles “Theory for the systematic definition of metabolic pathways and their use in interpreting metabolic function from a pathway-oriented perspective” by C. Schilling, D. Letscher, and B. Palsson, and “expa: a program for calculating extreme pathways in biochemical reaction networks” by S. Bell and B. Palsson. The program expa represents just one elementary but accessible approach to the whole problem of the mathematical modeling of biochemical reaction systems.

7  expa is a program for calculating the extreme pathways of a biological system (e.g., metabolic pathways) as per the theory developed by B. Palsson and his collaborators.  It is a free download from http://gcrg.ucsd.edu/Downloads/Extreme_Pathw ay_Analysis. http://gcrg.ucsd.edu/Downloads/Extreme_Pathw ay_Analysis  expa runs in a terminal window (Unix-based), so ◦ its program and sample files will need to be placed in the PATH (e.g., put them into the /bin subdirectory of your home directory), and ◦ one will need to use basic Unix commands to invoke expa, and an editor such a Unix vi to create and modify files to be used by expa. [Note: An emulator, like Cygwin, will be needed for the Windows version; versions for Linux and Macs are available directly.]

8 The lines of the file are: // toy.expa (Internal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output A ‘toy’ example from [Schilling and Palsson]

9 To create the expa file we just saw: 1. Open a command line (terminal) window. 2. Go to the directory where the expa program files are stored (e.g., by using the change directory command cd directoryname, cd /directoryname, or cd... etc.). 3. Type cat >filename.expa at the the Unix prompt. In our case we used the filename toy, so we entered cat >toy.expa at the prompt. 4. Then type the data below, using the indicated spacing and hitting the RETURN key after each line. // toy.expa (Internal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output 5. To finish entering the file, hold down the CONTROL key and the (letter) d key at the same time. You will be returned to the Unix prompt in your current directory. NOTE 1: Entering double slash // comments out the text on the line afterwards. NOTE 2: You can edit a line only before before hitting the RETURN key. If you make a mistake, just keep going – we’ll see how to use the vi editor to fix it later. NOTE 2: You can edit a line only before before hitting the RETURN key. If you make a mistake, just keep going – we’ll see how to use the vi editor to fix it later.

10  Use the Unix commands on the previous slide to create the file toy.expa, in the directory containing expa, and with the code previously shown.  If you make a data entry mistake, keep going : we’ll see how to edit your file next.  Use the Unix commands on the previous slide to create the file toy.expa, in the directory containing expa, and with the code previously shown.  If you make a data entry mistake, keep going : we’ll see how to edit your file next.

11 To edit the expa file we just created, and then check the results: 1. Staying in the same directory where you were, invoke the vi editor by typing vi filename.expa at the the Unix prompt. In our case we used the filename toy, so we entered vi toy.expa at the prompt. 2. You should see the code lines from the previous file listed, perhaps along with some lines that just contain the character ~ (which you can ignore). To navigate between lines, and characters in a given line, you may use the cursor keys (at least on a Mac), or use the letter keys (k up one line, j down one line, k up one line, h left one character, l right one character (or use the spacebar). 3. Once you’ve placed the cursor in the needed spot, to make corrections, switch from the current ‘command’ mode to ‘insert’ mode by hitting the (letter) i key. You can use the delete key to remove unwanted text or space, and enter the desired text in the usual way. 4. To move to the next area to correct, hit the ESC (‘escape’) key to pass from ‘insert’ mode back to the ‘command’ mode in vi. Then, move the cursor to the desired place again, and repeat until all corrections are made. 5. To save your changes and quit the file (from vi, not in ‘insert’ mode!), type :wq (for ‘write quit’). 6. To abandon the changes you have made to the file and get out of vi, type :q! 7. To copy a file to a new name (so you can keep an original before you edit), type cp filename newfilename at the Unix prompt. For example, to create a second copy of our expa file, we could type cp toy.expa newtoy.expa, or cp toy.expa toy2.expa, etc. (This saves a copy under the new name in the current directory. See http://en.wikipedia.org/wiki/Cp_(Unix) or the links below for copying files into other directories.)http://en.wikipedia.org/wiki/Cp_(Unix 8. To view the text of the new or edited file (or any other saved file), type cat filename at the Unix prompt. (Recall that cat >filename is a write/create file command, but plain old cat filename is just a view command.) 9. For a list of basic Unix commands and access to a more leisurely tutorial, see http://www.math.utah.edu/lab/unix/unix-commands.html. For further easy instructions on using the vi editor, see http://staff.washington.edu/rells/R110/. (Of course, you may know or Google your own favorite sources of info, including Wikipedia!) http://www.math.utah.edu/lab/unix/unix-commands.htmlhttp://staff.washington.edu/rells/R110/

12  Use the Unix and vi commands on the previous slide to create a new file, toynew.expa, which represents the same reaction system as toy.expa, but in which all internal fluxes are captured by irreversible reaction steps.  After creating toynew.expa, (re)read your file to check its accuracy.  Use the Unix and vi commands on the previous slide to create a new file, toynew.expa, which represents the same reaction system as toy.expa, but in which all internal fluxes are captured by irreversible reaction steps.  After creating toynew.expa, (re)read your file to check its accuracy.

13 13-222-241:bin terrellhodge$ cat toy.expa //toy.expa (Internal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output 13-222-241:bin terrellhodge$ cp toy.expa toynew.expa 13-222-241:bin terrellhodge$ vi toynew.expa 13-222-241:bin terrellhodge$ cat toynew.expa //toynew.expa (Internal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 I -1 B 1 D v4 I -1 D 1 B v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output A ‘toy’ example from [Schilling and Palsson]

14 1. Call expa at the Unix prompt by using expa.out filename.expa (or replace expa.out by the appropriate name for your download, e.g., macexpa.out for the Mac version). 2. The output is written to the the file Paths.txt. For example, we apply expa to the file toy.expa :  Terrell-Hodges-MacBook-Pro:bin terrellhodge$ ./macexpa.out toy.expa  Terrell-Hodges-MacBook-Pro:bin terrellhodge$  cat Paths.txt  0 0 1 1 0 0 0 0 0 0 0  0 1 0 1 1 0 0 0 0 0 0  1 1 0 0 0 0 0 -1 1 0 0  1 1 0 0 0 1 0 -1 0 0 1  1 0 1 0 0 0 0 -1 0 1 0  1 0 1 0 0 0 1 -1 0 0 1  1 1 0 0 1 0 0 -1 0 1 0  1 1 0 0 1 0 1 -1 0 0 1 NOTE: The output is a matrix that we’ll soon investigate.

15  Run expa on the file toynew.expa.  Read the output, and compare with that from toy.expa.  NOTE: expa always saves the results of its most recent run in the file Paths.txt.  Run expa on the file toynew.expa.  Read the output, and compare with that from toy.expa.  NOTE: expa always saves the results of its most recent run in the file Paths.txt.

16 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 -1 1 0 0 1 1 0 0 0 1 0 -1 0 0 1 1 0 1 0 0 0 0 -1 0 1 0 1 0 1 0 0 0 1 -1 0 0 1 1 1 0 0 1 0 0 -1 0 1 0 1 1 0 0 1 0 1 -1 0 0 1 // toy.expa(Int ernal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output

17 Row 1 gives Extreme Path 1 (Expa 1), a ‘futile cycle’ v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 -1 1 0 0 1 1 0 0 0 1 0 -1 0 0 1 1 0 1 0 0 0 0 -1 0 1 0 1 0 1 0 0 0 1 -1 0 0 1 1 1 0 0 1 0 0 -1 0 1 0 1 1 0 0 1 0 1 -1 0 0 1 // toy.expa(Int ernal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output

18 Row 2 gives Extreme Path 2 (another ‘futile cycle’) v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 -1 1 0 0 1 1 0 0 0 1 0 -1 0 0 1 1 0 1 0 0 0 0 -1 0 1 0 1 0 1 0 0 0 1 -1 0 0 1 1 1 0 0 1 0 0 -1 0 1 0 1 1 0 0 1 0 1 -1 0 0 1 // toy.expa(Int ernal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output

19 Row 3 gives Extreme Path 3 v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 0 0 1 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 -1 1 0 0 1 1 0 0 0 1 0 -1 0 0 1 1 0 1 0 0 0 0 -1 0 1 0 1 0 1 0 0 0 1 -1 0 0 1 1 1 0 0 1 0 0 -1 0 1 0 1 1 0 0 1 0 1 -1 0 0 1 // toy.expa(Int ernal Fluxes) v1 I -1 A 1 B v2 I -1 B 1 C v3 R -1 B 1 D v5 I -1 C 1 D v6 I -1 C 1 E v7 I -1 D 1 E (External Fluxes) A Input C Output D Output E Output

20  Give graphical interpretations (i.e., draw the paths) for the remaining five extreme paths for the system in toy.expa.  Be able also to recover each of Extreme Paths 1 – 8 in standard biochemical reaction equation notation.  Give graphical interpretations (i.e., draw the paths) for the remaining five extreme paths for the system in toy.expa.  Be able also to recover each of Extreme Paths 1 – 8 in standard biochemical reaction equation notation.

21  The download for expa includes a demo file test.expa. 1. Read this file, and write out by hand the corresponding reaction system in both standard biochemical equation notation and graphical notation. 2. Compute the extreme paths for the system, according to expa. NOTE: The initial reaction equations for this system will be more interesting than those in our example toy.expa.  The download for expa includes a demo file test.expa. 1. Read this file, and write out by hand the corresponding reaction system in both standard biochemical equation notation and graphical notation. 2. Compute the extreme paths for the system, according to expa. NOTE: The initial reaction equations for this system will be more interesting than those in our example toy.expa. NOTE: The file test.expa is also on the flash drive handed out to all workshop participants.

22

23  The download for expa includes a demo file test.expa. 1. Read this file, and write out by hand the corresponding reaction system in both standard biochemical equation notation and graphical notation. 2. Compute the extreme paths for the system, according to expa. NOTE: The initial reaction equations for this system will be more interesting than those in our example toy.expa.  The download for expa includes a demo file test.expa. 1. Read this file, and write out by hand the corresponding reaction system in both standard biochemical equation notation and graphical notation. 2. Compute the extreme paths for the system, according to expa. NOTE: The initial reaction equations for this system will be more interesting than those in our example toy.expa.

24  For the linear algebraically inclined: 3. Write out the stoichiometric matrix S corresponding to the system in test.expa. 4. Compute a basis for the nullspace N(S) of S using Gauss-Jordan elimination. How does this compare with the set of extreme paths calculated for this system? NOTE: These exercises are explored in detail in the module “Linear Algebraic Approaches to Metabolic Systems Analysis”, for CCLI NSF-DUE 0737467, coPIs Hodge and Robeva.  For the linear algebraically inclined: 3. Write out the stoichiometric matrix S corresponding to the system in test.expa. 4. Compute a basis for the nullspace N(S) of S using Gauss-Jordan elimination. How does this compare with the set of extreme paths calculated for this system? NOTE: These exercises are explored in detail in the module “Linear Algebraic Approaches to Metabolic Systems Analysis”, for CCLI NSF-DUE 0737467, coPIs Hodge and Robeva.

25  Build a model of glycolysis, and find its extreme paths: 1. You will have to decide on system boundaries and ‘metabolites’ to include. 2. You will have to decide how to model certain reaction steps. 3. You can “cheat” by making use of the red blood cell metabolism data file rbc.expa that comes with the expa download; see “Extreme pathway analysis of human red blood cell” by S. Wiback and B. Palsson. NOTE: These exercises are explored in detail in the module “Linear Algebraic Approaches to Metabolic Systems Analysis”, for CCLI NSF-DUE 0737467, coPIs Hodge and Robeva.  Build a model of glycolysis, and find its extreme paths: 1. You will have to decide on system boundaries and ‘metabolites’ to include. 2. You will have to decide how to model certain reaction steps. 3. You can “cheat” by making use of the red blood cell metabolism data file rbc.expa that comes with the expa download; see “Extreme pathway analysis of human red blood cell” by S. Wiback and B. Palsson. NOTE: These exercises are explored in detail in the module “Linear Algebraic Approaches to Metabolic Systems Analysis”, for CCLI NSF-DUE 0737467, coPIs Hodge and Robeva.

26  Build a simplified model of gluconeogenesis: 1. Assume there are three metabolites: PYR, OAA, and PEP. Assume there is a reversible external flux to each, but use the biology to model the other reactions. Find the expas (extreme paths).  Build a simplified model of gluconeogenesis: 1. Assume there are three metabolites: PYR, OAA, and PEP. Assume there is a reversible external flux to each, but use the biology to model the other reactions. Find the expas (extreme paths).

27  Using your simplified model of gluconeogenesis: 2. Use the stoichiometric matrix for this model to compare this outcome with the alternative flux- balance analysis method of EFMs (elementary flux modes) as in “On elementary flux modes in a biochemical reaction systems at steady state” by S. Schuster and C. Hildetag. 3. Then see the comparisons in “Theory for the systematic definition of metabolic pathways and their use in interpreting metabolic function from a pathway-oriented perspective” by C. Schilling, D. Letscher, and B. Palsson.  Using your simplified model of gluconeogenesis: 2. Use the stoichiometric matrix for this model to compare this outcome with the alternative flux- balance analysis method of EFMs (elementary flux modes) as in “On elementary flux modes in a biochemical reaction systems at steady state” by S. Schuster and C. Hildetag. 3. Then see the comparisons in “Theory for the systematic definition of metabolic pathways and their use in interpreting metabolic function from a pathway-oriented perspective” by C. Schilling, D. Letscher, and B. Palsson.

28 Thanks for your participation. Ideas, comments, requests for further information, and/or suggestions will be welcomed! Terrell L. Hodge terrell.hodge@wmich.edu


Download ppt "Terrell L. Hodge MAA PREP 2010 Math Biology: Beyond Calculus."

Similar presentations


Ads by Google