<?xml version="1.0"?>

<!--  FILE :  the_TCA_cycle_model.xml

CREATED :  4th June 2002

LAST MODIFIED : 22nd July 2002

AUTHOR :  Catherine Lloyd
          The Bioengineering Institute
          The University of Auckland
          
MODEL STATUS :  This model conforms to the CellML 1.0 Specification released on
10th August 2001, and the 16/01/2002 CellML Metadata 1.0 Specification.

DESCRIPTION :  This file contains a CellML description of a generic model of the TCA Cycle.

CHANGES:  
   22/07/2002 - CML - Added more metadata.
-->


<model name="the_TCA_cycle_model" pathway_editor:rendering_config_file="the_TCA cycle_cycle_CellMLrender.xml" xmlns="http://www.cellml.org/cellml/1.0#" xmlns:cellml="http://www.cellml.org/cellml/1.0#" xmlns:cmeta="http://www.cellml.org/metadata/1.0#" xmlns:pathway_editor="http://www.physiome.com/pathway_editor/1.0#">
  
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:bqs="http://www.cellml.org/bqs/1.0#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#">
    
<!--
      The following RDF block contains metadata that applies to this document
      as a whole, as indicated by the empty about attribute on the 
      <rdf:Description> element.
    -->

    
<rdf:Description rdf:about="">
      
<!--
        The Model Builder Metadata.  The Dublin Core "creator" element is used  
        to indicate the person who translated the model into CellML.
      -->

      
<dc:creator rdf:parseType="Resource">
        
<vCard:N rdf:parseType="Resource">
          
<vCard:Family>Lloyd</vCard:Family>
          
<vCard:Given>Catherine</vCard:Given>
          
<vCard:Other>May</vCard:Other>
        
</vCard:N>
        
<vCard:EMAIL rdf:parseType="Resource">
          
<rdf:value>c.lloyd@auckland.ac.nz</rdf:value>
          
<rdf:type rdf:resource="http://imc.org/vCard/3.0#internet" />
        
</vCard:EMAIL>
        
<vCard:ORG rdf:parseType="Resource">
          
<vCard:Orgname>The University of Auckland</vCard:Orgname>
          
<vCard:Orgunit>The Bioengineering Institute</vCard:Orgunit>
        
</vCard:ORG>
      
</dc:creator>
      
      
<!--
        The Creation Date metadata. This is the date on which the model
        was translated into CellML.
      -->

      
<dcterms:created rdf:parseType="Resource">
        
<dcterms:W3CDTF>2002-06-04</dcterms:W3CDTF>
      
</dcterms:created>
      
      
<!--
        The Last Modified Date metadata. This is the date on which
        the model was last changed.
      -->

      
<cmeta:modification rdf:parseType="Resource">
        
<rdf:value>
          Added more metadata.
        
</rdf:value>
        
<cmeta:modifier rdf:parseType="Resource">
          
<vCard:N rdf:parseType="Resource">
            
<vCard:Family>Lloyd</vCard:Family>
            
<vCard:Given>Catherine</vCard:Given>
            
<vCard:Other>May</vCard:Other>
          
</vCard:N>
        
</cmeta:modifier>
        
<dcterms:modified rdf:parseType="Resource"> 
          
<dcterms:W3CDTF>2002-07-22</dcterms:W3CDTF>
        
</dcterms:modified>
      
</cmeta:modification>
      
      
<!-- The Publisher metadata. -->
      
<dc:publisher>
        The University of Auckland, Bioengineering Institute
      
</dc:publisher>
    
</rdf:Description>
    
    
<!--
      The following metadata refers to the model itself, as indicated by the
      reference to the ID "the_TCA__cycle_model", which is declared on the    
      <model> element.
    -->

    
<rdf:Description rdf:about="#the_TCA_cycle_model">
      
<!-- A human readable name for the model. -->
      
<dc:title>A Generic Model Of The TCA Cycle</dc:title>
      
      
<!-- A comment regarding the model. -->
      
<cmeta:comment rdf:parseType="Resource">
        
<rdf:value>
          Below is a CellML description of a general model of the metabolic
          tricarboxylic acid (TCA) cycle.  It is not based on a specific 
          published mathematical model, but instead it is based on a textbook 
          defined pathway.  The general sequential structure and all the 
          reactant, product and enzyme components are included.  
          Michaelis-Menten enzyme kinetics are assumed.
          
          The purpose of this description is to illustrate how CellML can be
          used to model a general metabolic pathway.
        
</rdf:value>
        
<!-- The creator of the comment. -->
        
<dc:creator>
          
<vCard:FN>Catherine Lloyd</vCard:FN>
        
</dc:creator>
      
</cmeta:comment>
      
      
<cmeta:species>Homo sapiens</cmeta:species>
      
      
<!--  Keyword(s) -->
      
<bqs:reference rdf:parseType="Resource">
        
<dc:subject rdf:parseType="Resource">
          
<bqs:subject_type>keyword</bqs:subject_type>
          
<rdf:value>metabolism</rdf:value>
        
</dc:subject>
      
</bqs:reference>
      
      
<bqs:Book rdf:parseType="Resource">
        
<dc:creator rdf:parseType="Resource">
          
<bqs:Person rdf:parseType="Resource">
            
<vCard:N rdf:parseType="Resource">
              
<vCard:Family>Bronk</vCard:Family>
              
<vCard:Given>J</vCard:Given>
              
<vCard:Other>Ramsey</vCard:Other>
            
</vCard:N>
          
</bqs:Person>
        
</dc:creator>
        
<dc:title>Human Metabolism</dc:title>
        
<dcterms:issued rdf:parseType="Resource">
          
<dcterms:W3CDTF>1999</dcterms:W3CDTF>
        
</dcterms:issued>
        
<dc:publisher rdf:parseType="Resource">
          
<bqs:Organisation>Addison Wesley Longman Limited</bqs:Organisation>
          
<bqs:Property rdf:parseType="Resource">
            
<bqs:property_type>location</bqs:property_type>
            
<rdf:value>England</rdf:value>
          
</bqs:Property>
        
</dc:publisher>
      
</bqs:Book>
    
</rdf:Description>
  
</rdf:RDF>
  
  
<!--
    We start the model definition with a definition of some named
    sets of units for use throughout the model.
  -->

   
   
<units name="micromolar">
     
<unit prefix="micro" units="mole" />
     
<unit units="litre" exponent="-1" />
   
</units>
   
   
<units name="flux">
      
<unit units="micromolar" />
      
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="first_order_rate_constant">
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="second_order_rate_constant">
     
<unit units="micromolar" exponent="-1" />
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="third_order_rate_constant">
     
<unit units="micromolar" exponent="-2" />
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<units name="forth_order_rate_constant">
     
<unit units="micromolar" exponent="-3" />
     
<unit units="second" exponent="-1" />
   
</units>
   
   
<!--  
    The following component is defined for modelling convenience.  It contains 
    all the universal variables, in this case, only time.
   -->

   
<component name="global_variables">
      
<variable name="time" public_interface="out" units="second" />
   
</component>
  
  
<!--  
    The following components describe all the metabolites - both reactants and 
    products - involved in the TCA cycle.
   -->

   
   
<component name="Phosphoenolpyruvate" cmeta:id="Phosphoenolpyruvate">
      
<variable name="Phosphoenolpyruvate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Phosphoenolpyruvate_rxn11" public_interface="in" units="flux" />
      
<variable name="delta_Phosphoenolpyruvate_rxn0" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Phosphoenolpyruvate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Phosphoenolpyruvate_rxn11</ci>
               
<ci>delta_Phosphoenolpyruvate_rxn0</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
 
   
<component name="Pyruvate" cmeta:id="Pyruvate">
      
<variable name="Pyruvate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Pyruvate_rxn0" public_interface="in" units="flux" />
      
<variable name="delta_Pyruvate_rxn1" public_interface="in" units="flux" />
      
<variable name="delta_Pyruvate_rxn2" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Pyruvate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Pyruvate_rxn0</ci>
               
<ci>delta_Pyruvate_rxn1</ci>
               
<ci>delta_Pyruvate_rxn2</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Oxaloacetate" cmeta:id="Oxaloacetate">
      
<variable name="Oxaloacetate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Oxaloacetate_rxn1" public_interface="in" units="flux" />
      
<variable name="delta_Oxaloacetate_rxn10" public_interface="in" units="flux" />
      
<variable name="delta_Oxaloacetate_rxn3" public_interface="in" units="flux" />
      
<variable name="delta_Oxaloacetate_rxn11" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Oxaloacetate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Oxaloacetate_rxn1</ci>
               
<ci>delta_Oxaloacetate_rxn10</ci>
               
<ci>delta_Oxaloacetate_rxn3</ci>
               
<ci>delta_Oxaloacetate_rxn11</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Acetyl_coenzyme_A" cmeta:id="Acetyl_coenzyme_A">
      
<variable name="Acetyl_coenzyme_A" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Acetyl_coenzyme_A_rxn2" public_interface="in" units="flux" />
      
<variable name="delta_Acetyl_coenzyme_A_rxn3" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Acetyl_coenzyme_A</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Acetyl_coenzyme_A_rxn2</ci>
               
<ci>delta_Acetyl_coenzyme_A_rxn3</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Citrate" cmeta:id="Citrate">
      
<variable name="Citrate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Citrate_rxn3" public_interface="in" units="flux" />
      
<variable name="delta_Citrate_rxn4" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Citrate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Citrate_rxn3</ci>
               
<ci>delta_Citrate_rxn4</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Isocitrate" cmeta:id="Isocitrate">
      
<variable name="Isocitrate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Isocitrate_rxn4" public_interface="in" units="flux" />
      
<variable name="delta_Isocitrate_rxn5" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Isocitrate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Isocitrate_rxn4</ci>
               
<ci>delta_Isocitrate_rxn5</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Oxoglutarate_2" cmeta:id="Oxoglutarate_2">
      
<variable name="Oxoglutarate_2" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Oxoglutarate_2_rxn5" public_interface="in" units="flux" />
      
<variable name="delta_Oxoglutarate_2_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_Oxoglutarate_2_rxn12" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Oxoglutarate_2</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Oxoglutarate_2_rxn5</ci>
               
<ci>delta_Oxoglutarate_2_rxn6</ci>
               
<ci>delta_Oxoglutarate_2_rxn12</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Glutamate" cmeta:id="Glutamate">
      
<variable name="Glutamate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Glutamate_rxn12" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Glutamate</ci>
            
</apply>
            
<ci>delta_Glutamate_rxn12</ci>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Succinyl_CoA" cmeta:id="Succinyl_CoA">
      
<variable name="Succinyl_CoA" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Succinyl_CoA_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_Succinyl_CoA_rxn7" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Succinyl_CoA</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Succinyl_CoA_rxn6</ci>
               
<ci>delta_Succinyl_CoA_rxn7</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="Succinate" cmeta:id="Succinate">
      
<variable name="Succinate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Succinate_rxn7" public_interface="in" units="flux" />
      
<variable name="delta_Succinate_rxn8" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Succinate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Succinate_rxn7</ci>
               
<ci>delta_Succinate_rxn8</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="Fumarate" cmeta:id="Fumarate">
      
<variable name="Fumarate" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_Fumarate_rxn8" public_interface="in" units="flux" />
      
<variable name="delta_Fumarate_rxn9" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>Fumarate</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_Fumarate_rxn8</ci>
               
<ci>delta_Fumarate_rxn9</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
   
   
<component name="NADH" cmeta:id="NADH">
      
<variable name="NADH" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_NADH_rxn2" public_interface="in" units="flux" />
      
<variable name="delta_NADH_rxn5" public_interface="in" units="flux" />
      
<variable name="delta_NADH_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_NADH_rxn10" public_interface="in" units="flux" />
      
<variable name="delta_NADH_rxn12" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>NADH</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_NADH_rxn2</ci>
               
<ci>delta_NADH_rxn5</ci>
               
<ci>delta_NADH_rxn6</ci>
               
<ci>delta_NADH_rxn10</ci>
               
<ci>delta_NADH_rxn12</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="NAD" cmeta:id="NAD">
      
<variable name="NAD" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_NAD_rxn12" public_interface="in" units="flux" />
      
<variable name="delta_NAD_rxn2" public_interface="in" units="flux" />
      
<variable name="delta_NAD_rxn5" public_interface="in" units="flux" />
      
<variable name="delta_NAD_rxn6" public_interface="in" units="flux" />
      
<variable name="delta_NAD_rxn10" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>NAD</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_NAD_rxn12</ci>
               
<ci>delta_NAD_rxn2</ci>
               
<ci>delta_NAD_rxn5</ci>
               
<ci>delta_NAD_rxn6</ci>
               
<ci>delta_NAD_rxn10</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="H" cmeta:id="H">
      
<variable name="H" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_H_rxn0" public_interface="in" units="flux" />
      
<variable name="delta_H_rxn2" public_interface="in" units="flux" />
      
<variable name="delta_H_rxn3" public_interface="in" units="flux" />
      
<variable name="delta_H_rxn10" public_interface="in" units="flux" />
      
<variable name="delta_H_rxn12" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>H</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_H_rxn0</ci>
               
<ci>delta_H_rxn2</ci>
               
<ci>delta_H_rxn3</ci>
               
<ci>delta_H_rxn10</ci>
               
<ci>delta_H_rxn12</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="GTP" cmeta:id="GTP">
      
<variable name="GTP" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_GTP_rxn7" public_interface="in" units="flux" />
      
<variable name="delta_GTP_rxn11" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>
               
<diff />
               
<bvar>
                  
<ci>time</ci>
               
</bvar>
               
<ci>GTP</ci>
            
</apply>
            
<apply>
               
<plus />
               
<ci>delta_GTP_rxn7</ci>
               
<ci>delta_GTP_rxn11</ci>
            
</apply>
         
</apply>
      
</math>
   
</component>
  
   
<component name="GDP" cmeta:id="GDP">
      
<variable name="GDP" public_interface="out" initial_value="1.0" units="micromolar" />
      
<variable name="delta_GDP_rxn11" public_interface="in" units="flux" />
      
<variable name="delta_GDP_rxn7" public_interface="in" units="flux" />
      
<variable name="time" public_interface="in" units="second" />
      
<math xmlns="http://www.w3.org/1998/Math/MathML">
         
<apply>
            
<eq />
            
<apply>