MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
MMEnzyme1 Class Reference

#include <RateTerm.h>

+ Inheritance diagram for MMEnzyme1:
+ Collaboration diagram for MMEnzyme1:

Public Member Functions

RateTermcopyWithVolScaling (double vol, double sub, double prd) const
 
unsigned int getReactants (vector< unsigned int > &molIndex) const
 
 MMEnzyme1 (double Km, double kcat, unsigned int enz, unsigned int sub)
 
double operator() (const double *S) const
 Computes the rate. The argument is the molecule array. More...
 
- Public Member Functions inherited from MMEnzymeBase
unsigned int getEnzIndex () const
 
double getR1 () const
 Used by Zombie to return rate terms. More...
 
double getR2 () const
 Used by Zombie to return rate terms. More...
 
 MMEnzymeBase (double Km, double kcat, unsigned int enz)
 
void rescaleVolume (short comptIndex, const vector< short > &compartmentLookup, double ratio)
 
void setKcat (double kcat)
 
void setKm (double Km)
 
void setR1 (double Km)
 Used by Zombie to assign rate terms. More...
 
void setR2 (double kcat)
 Used by Zombie to assign rate terms. More...
 
void setRates (double Km, double kcat)
 
- Public Member Functions inherited from RateTerm
 RateTerm ()
 
virtual ~RateTerm ()
 

Private Attributes

unsigned int sub_
 

Additional Inherited Members

- Static Public Attributes inherited from RateTerm
static const double EPSILON = 1.0e-6
 
- Protected Attributes inherited from MMEnzymeBase
unsigned int enz_
 
double kcat_
 
double Km_
 

Detailed Description

Definition at line 139 of file RateTerm.h.

Constructor & Destructor Documentation

MMEnzyme1::MMEnzyme1 ( double  Km,
double  kcat,
unsigned int  enz,
unsigned int  sub 
)
inline

Definition at line 142 of file RateTerm.h.

Referenced by copyWithVolScaling().

144  : MMEnzymeBase( Km, kcat, enz ), sub_( sub )
145  {
146  ;
147  }
MMEnzymeBase(double Km, double kcat, unsigned int enz)
Definition: RateTerm.h:84
unsigned int sub_
Definition: RateTerm.h:169

+ Here is the caller graph for this function:

Member Function Documentation

RateTerm* MMEnzyme1::copyWithVolScaling ( double  vol,
double  sub,
double  prd 
) const
inlinevirtual

Duplicates rate term and then applies volume scaling. Arguments are volume of reference voxel, product of vol/refVol for all substrates: applied to R1 product of vol/refVol for all products: applied to R2

Note that unless the reaction is cross-compartment, the vol/refVol will be one.

Implements RateTerm.

Definition at line 161 of file RateTerm.h.

References MMEnzymeBase::enz_, MMEnzymeBase::kcat_, MMEnzymeBase::Km_, MMEnzyme1(), NA, and sub_.

163  {
164  double ratio = vol * sub * NA;
165  return new MMEnzyme1( ratio * Km_, kcat_, enz_, sub_);
166  }
unsigned int enz_
Definition: RateTerm.h:135
MMEnzyme1(double Km, double kcat, unsigned int enz, unsigned int sub)
Definition: RateTerm.h:142
const double NA
Definition: consts.cpp:15
unsigned int sub_
Definition: RateTerm.h:169
double Km_
Definition: RateTerm.h:133
double kcat_
Definition: RateTerm.h:134

+ Here is the call graph for this function:

unsigned int MMEnzyme1::getReactants ( vector< unsigned int > &  molIndex) const
inlinevirtual

This function finds the reactant indices in the vector S. It returns the number of substrates found, which are the first entries in molIndex. The products are the remaining ones. Note that it does NOT find products for unidirectional reactions, which is a bit of a problem.

Implements RateTerm.

Definition at line 154 of file RateTerm.h.

References MMEnzymeBase::enz_, and sub_.

154  {
155  molIndex.resize( 2 );
156  molIndex[0] = enz_;
157  molIndex[1] = sub_;
158  return 2;
159  }
unsigned int enz_
Definition: RateTerm.h:135
unsigned int sub_
Definition: RateTerm.h:169
double MMEnzyme1::operator() ( const double *  S) const
inlinevirtual

Computes the rate. The argument is the molecule array.

Implements RateTerm.

Definition at line 149 of file RateTerm.h.

References MMEnzymeBase::enz_, MMEnzymeBase::kcat_, MMEnzymeBase::Km_, and sub_.

149  {
150  // assert( S[ sub_ ] >= -EPSILON );
151  return ( kcat_ * S[ sub_ ] * S[ enz_ ] ) / ( Km_ + S[ sub_ ] );
152  }
unsigned int enz_
Definition: RateTerm.h:135
unsigned int sub_
Definition: RateTerm.h:169
double Km_
Definition: RateTerm.h:133
double kcat_
Definition: RateTerm.h:134

Member Data Documentation

unsigned int MMEnzyme1::sub_
private

Definition at line 169 of file RateTerm.h.

Referenced by copyWithVolScaling(), getReactants(), and operator()().


The documentation for this class was generated from the following file: