BidirectionalReaction Class Reference

#include <RateTerm.h>

Inheritance diagram for BidirectionalReaction:
Inheritance graph
[legend]
Collaboration diagram for BidirectionalReaction:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 BidirectionalReaction (ZeroOrder *forward, ZeroOrder *backward)
 ~BidirectionalReaction ()
double operator() (const double *S) const
 Computes the rate. The argument is the molecule array.
void setRates (double kf, double kb)
void setR1 (double kf)
 Used by Zombie to assign rate terms.
void setR2 (double kb)
 Used by Zombie to assign rate terms.
double getR1 () const
 Used by Zombie to return rate terms.
double getR2 () const
 Used by Zombie to return rate terms.
unsigned int getReactants (vector< unsigned int > &molIndex) const
void rescaleVolume (short comptIndex, const vector< short > &compartmentLookup, double ratio)
RateTermcopyWithVolScaling (double vol, double sub, double prd) const

Constructor & Destructor Documentation

BidirectionalReaction::BidirectionalReaction ( ZeroOrder forward,
ZeroOrder backward 
) [inline]

Referenced by copyWithVolScaling().

BidirectionalReaction::~BidirectionalReaction (  )  [inline]

Member Function Documentation

RateTerm* BidirectionalReaction::copyWithVolScaling ( double  vol,
double  sub,
double  prd 
) const [inline, virtual]

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.

References BidirectionalReaction(), and ZeroOrder::copyWithVolScaling().

Here is the call graph for this function:

double BidirectionalReaction::getR1 (  )  const [inline, virtual]

Used by Zombie to return rate terms.

Implements RateTerm.

References ZeroOrder::getR1().

Here is the call graph for this function:

double BidirectionalReaction::getR2 (  )  const [inline, virtual]

Used by Zombie to return rate terms.

Implements RateTerm.

References ZeroOrder::getR1().

Here is the call graph for this function:

unsigned int BidirectionalReaction::getReactants ( vector< unsigned int > &  molIndex  )  const [inline, virtual]

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.

References ZeroOrder::getReactants().

Here is the call graph for this function:

double BidirectionalReaction::operator() ( const double *  S  )  const [inline, virtual]

Computes the rate. The argument is the molecule array.

Implements RateTerm.

void BidirectionalReaction::rescaleVolume ( short  comptIndex,
const vector< short > &  compartmentLookup,
double  ratio 
) [inline, virtual]

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.

References ZeroOrder::rescaleVolume().

Here is the call graph for this function:

void BidirectionalReaction::setR1 ( double  k1  )  [inline, virtual]

Used by Zombie to assign rate terms.

Implements RateTerm.

References ZeroOrder::setK().

Here is the call graph for this function:

void BidirectionalReaction::setR2 ( double  k2  )  [inline, virtual]

Used by Zombie to assign rate terms.

Implements RateTerm.

References ZeroOrder::setK().

Here is the call graph for this function:

void BidirectionalReaction::setRates ( double  k1,
double  k2 
) [inline, virtual]

Assign the rates.

Implements RateTerm.

References ZeroOrder::setK().

Here is the call graph for this function:


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

Generated on 1 Jul 2015 for MOOSE by  doxygen 1.6.1