COPASI API  4.40.278
CMathReaction Class Reference

#include <CMathReaction.h>

Public Types

typedef CVector< std::pair< C_FLOAT64 *, C_FLOAT64 > > Balance
typedef std::set< std::pair< const CMathObject *, C_FLOAT64 > > ObjectBalance
typedef std::pair< C_FLOAT64 *, C_FLOAT64SpeciesBalance

Public Member Functions

 CMathReaction ()
 CMathReaction (const CMathReaction &src)
void copy (const CMathReaction &src, CMathContainer &container)
void fire ()
void fireMultiple (const C_FLOAT64 &count)
const CObjectInterface::ObjectSetgetChangedObjects () const
const CMathObjectgetFluxObject () const
const CReactiongetModelReaction () const
const BalancegetNumberBalance () const
const ObjectBalancegetObjectBalance () const
const CMathObjectgetParticleFluxObject () const
const CMathObjectgetPropensityObject () const
void initialize (const CReaction *pReaction, CMathContainer &container)
bool isFast () const
void relocate (const CMathContainer *pContainer, const std::vector< CMath::sRelocate > &relocations)
 ~CMathReaction ()

Private Attributes

CObjectInterface::ObjectSet mChangedSpecies
Balance mNumberBalance
ObjectBalance mObjectBalance
const CReactionmpReaction

Member Typedef Documentation

◆ Balance

typedef CVector< std::pair< C_FLOAT64 *, C_FLOAT64 > > CMathReaction::Balance

◆ ObjectBalance

typedef std::set< std::pair < const CMathObject *, C_FLOAT64 > > CMathReaction::ObjectBalance

◆ SpeciesBalance

Constructor & Destructor Documentation

◆ CMathReaction() [1/2]

CMathReaction::CMathReaction ( )


◆ CMathReaction() [2/2]

CMathReaction::CMathReaction ( const CMathReaction src)

Copy constructor

◆ ~CMathReaction()

CMathReaction::~CMathReaction ( )


Member Function Documentation

◆ copy()

void CMathReaction::copy ( const CMathReaction src,
CMathContainer container 

Copy an existing object

constCMathReaction & src
CMathContainer& container

◆ fire()

void CMathReaction::fire ( )

Fire the reaction count times. Note count must not necessarily be an integer

References CVectorCore< CType >::array(), mNumberBalance, and CVectorCore< CType >::size().

Referenced by CHybridMethodODE45::fireReaction().

◆ fireMultiple()

void CMathReaction::fireMultiple ( const C_FLOAT64 count)

Fire the reaction count times. Note count must not necessarily be an integer

constC_FLOAT64 & count

References CVectorCore< CType >::array(), mNumberBalance, and CVectorCore< CType >::size().

Referenced by CTauLeapMethod::updateSystem().

◆ getChangedObjects()

const CObjectInterface::ObjectSet & CMathReaction::getChangedObjects ( ) const

Retrieve the set of particle number objects changed when the reaction fires.

const CObjectInterface::ObjectSet & changedObjects

References mChangedSpecies.

Referenced by CStochDirectMethod::start(), CStochMethod::start(), and CTrajAdaptiveSA::start().

◆ getFluxObject()

const CMathObject * CMathReaction::getFluxObject ( ) const

Retrieve a pointer to the mathematical object for the flux.

const CMathObject * pFluxObject

References mpFlux.

◆ getModelReaction()

const CReaction * CMathReaction::getModelReaction ( ) const

Retrieve a pointer to the model reaction

const CReaction * pModelReaction

References mpReaction.

◆ getNumberBalance()

◆ getObjectBalance()

const CMathReaction::ObjectBalance & CMathReaction::getObjectBalance ( ) const

Retrieve the set of modified species objects

CMathReaction::ObjectBalance & objectBalance

References mObjectBalance.

Referenced by CMathContainer::getLargestReactionCompartment(), and CHybridMethod::setupDependencyGraph().

◆ getParticleFluxObject()

const CMathObject * CMathReaction::getParticleFluxObject ( ) const

Retrieve a pointer to the mathematical object for the particle flux.

const CMathObject * pParticleFluxObject

References mpParticleFlux.

Referenced by CHybridMethod::calculateDerivative(), and CSteadyStateMethod::isEquilibrium().

◆ getPropensityObject()

const CMathObject * CMathReaction::getPropensityObject ( ) const

Retrieve a pointer to the mathematical object for the propensity.

const CMathObject * pPropensityObject

References mpPropensity.

Referenced by CHybridMethodODE45::partitionSystem(), and CHybridMethod::updatePriorityQueue().

◆ initialize()

◆ isFast()

bool CMathReaction::isFast ( ) const

Check whether the reaction is fast

bool isFast

References CReaction::isFast(), and mpReaction.

◆ relocate()

void CMathReaction::relocate ( const CMathContainer pContainer,
const std::vector< CMath::sRelocate > &  relocations 

Member Data Documentation

◆ mChangedSpecies

CObjectInterface::ObjectSet CMathReaction::mChangedSpecies

The set of changed species

Referenced by getChangedObjects(), initialize(), and relocate().

◆ mNumberBalance

Balance CMathReaction::mNumberBalance

Information for updating the species particle numbers when the reaction fires.

Referenced by fire(), fireMultiple(), getNumberBalance(), initialize(), and relocate().

◆ mObjectBalance

ObjectBalance CMathReaction::mObjectBalance

The set of modified species and their change per reaction event

Referenced by getObjectBalance(), initialize(), and relocate().

◆ mpFlux

CMathObject* CMathReaction::mpFlux

A pointer to the mathematical flux.

Referenced by getFluxObject(), initialize(), and relocate().

◆ mpParticleFlux

CMathObject* CMathReaction::mpParticleFlux

A pointer to the mathematical particle flux.

Referenced by getParticleFluxObject(), initialize(), and relocate().

◆ mpPropensity

CMathObject* CMathReaction::mpPropensity

A pointer to the mathematical propensity.

Referenced by getPropensityObject(), initialize(), and relocate().

◆ mpReaction

const CReaction* CMathReaction::mpReaction

A pointer to model reaction.

Referenced by getModelReaction(), initialize(), and isFast().

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