MOOSE - Multiscale Object Oriented Simulation Environment
|
#include <RateTerm.h>
Public Member Functions | |
virtual RateTerm * | copyWithVolScaling (double vol, double sub, double prd) const =0 |
virtual double | getR1 () const =0 |
Used by Zombie to return rate terms. More... | |
virtual double | getR2 () const =0 |
Used by Zombie to return rate terms. More... | |
virtual unsigned int | getReactants (vector< unsigned int > &molIndex) const =0 |
virtual double | operator() (const double *S) const =0 |
Computes the rate. The argument is the molecule array. More... | |
RateTerm () | |
virtual void | rescaleVolume (short comptIndex, const vector< short > &compartmentLookup, double ratio)=0 |
virtual void | setR1 (double k1)=0 |
Used by Zombie to assign rate terms. More... | |
virtual void | setR2 (double k2)=0 |
Used by Zombie to assign rate terms. More... | |
virtual void | setRates (double k1, double k2)=0 |
virtual | ~RateTerm () |
Static Public Attributes | |
static const double | EPSILON = 1.0e-6 |
Definition at line 18 of file RateTerm.h.
|
inline |
Definition at line 21 of file RateTerm.h.
|
inlinevirtual |
Definition at line 22 of file RateTerm.h.
|
pure 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.
Implemented in BidirectionalReaction, StochNOrder, NOrder, StochSecondOrderSingleSubstrate, SecondOrder, FirstOrder, Flux, ZeroOrder, ExternReac, MMEnzyme, MMEnzyme1, FuncReac, and FuncRate.
|
pure virtual |
Used by Zombie to return rate terms.
Implemented in BidirectionalReaction, ZeroOrder, ExternReac, and MMEnzymeBase.
Referenced by Stoich::convertRatesToStochasticForm().
|
pure virtual |
Used by Zombie to return rate terms.
Implemented in BidirectionalReaction, ZeroOrder, ExternReac, and MMEnzymeBase.
|
pure 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.
Implemented in BidirectionalReaction, NOrder, StochSecondOrderSingleSubstrate, SecondOrder, FirstOrder, Flux, ZeroOrder, ExternReac, MMEnzyme, MMEnzyme1, FuncReac, and FuncRate.
Referenced by Gsolve::fillMmEnzDep(), and MMEnzyme::getReactants().
|
pure virtual |
Computes the rate. The argument is the molecule array.
Implemented in BidirectionalReaction, StochNOrder, NOrder, StochSecondOrderSingleSubstrate, SecondOrder, FirstOrder, Flux, ZeroOrder, ExternReac, MMEnzyme, MMEnzyme1, FuncReac, and FuncRate.
|
pure 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
Implemented in BidirectionalReaction, NOrder, StochSecondOrderSingleSubstrate, SecondOrder, FirstOrder, Flux, ZeroOrder, ExternReac, FuncReac, and MMEnzymeBase.
|
pure virtual |
Used by Zombie to assign rate terms.
Implemented in BidirectionalReaction, ZeroOrder, ExternReac, and MMEnzymeBase.
|
pure virtual |
Used by Zombie to assign rate terms.
Implemented in BidirectionalReaction, ZeroOrder, ExternReac, and MMEnzymeBase.
|
pure virtual |
Assign the rates.
Implemented in BidirectionalReaction, ZeroOrder, ExternReac, and MMEnzymeBase.
|
static |
Definition at line 52 of file RateTerm.h.
Referenced by MMEnzyme::operator()().