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

#include <RateTerm.h>

+ Inheritance diagram for ExternReac:
+ Collaboration diagram for ExternReac:

Public Member Functions

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

Additional Inherited Members

- Static Public Attributes inherited from RateTerm
static const double EPSILON = 1.0e-6
 

Detailed Description

Definition at line 205 of file RateTerm.h.

Member Function Documentation

RateTerm* ExternReac::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 245 of file RateTerm.h.

247  {
248  return new ExternReac();
249  }
double ExternReac::getR1 ( ) const
inlinevirtual

Used by Zombie to return rate terms.

Implements RateTerm.

Definition at line 226 of file RateTerm.h.

226  {
227  return 0.0;
228  }
double ExternReac::getR2 ( ) const
inlinevirtual

Used by Zombie to return rate terms.

Implements RateTerm.

Definition at line 230 of file RateTerm.h.

230  {
231  return 0.0;
232  }
unsigned int ExternReac::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 234 of file RateTerm.h.

234  {
235  molIndex.resize( 0 );
236  return 0;
237  }
double ExternReac::operator() ( const double *  S) const
inlinevirtual

Computes the rate. The argument is the molecule array.

Implements RateTerm.

Definition at line 210 of file RateTerm.h.

210  {
211  double ret = 0.0;
212  return ret;
213  }
void ExternReac::rescaleVolume ( short  comptIndex,
const vector< short > &  compartmentLookup,
double  ratio 
)
inlinevirtual

This is used to rescale the RateTerm kinetics when the compartment volume changes. This is needed because the kinetics are in extensive units, that is, mol numbers, rather than in intensive units like concentration. So when the volume changes the rate terms change. Each Rate term checks if any of its reactant molecules are affected, and if so, rescales. Ratio is newVol / oldVol

Implements RateTerm.

Definition at line 239 of file RateTerm.h.

241  {
242  return; // Need to figure out what to do here.
243  }
void ExternReac::setR1 ( double  k1)
inlinevirtual

Used by Zombie to assign rate terms.

Implements RateTerm.

Definition at line 218 of file RateTerm.h.

218  {
219  ;
220  }
void ExternReac::setR2 ( double  k2)
inlinevirtual

Used by Zombie to assign rate terms.

Implements RateTerm.

Definition at line 222 of file RateTerm.h.

222  {
223  ;
224  }
void ExternReac::setRates ( double  k1,
double  k2 
)
inlinevirtual

Assign the rates.

Implements RateTerm.

Definition at line 214 of file RateTerm.h.

214  {
215  ; // Dummy function to keep compiler happy
216  }

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