copasi API  0.1
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends
CTrajectoryMethodDsaLsodar Class Reference

#include <CTrajectoryMethodDsaLsodar.h>

Inheritance diagram for CTrajectoryMethodDsaLsodar:
CLsodaMethod CTrajectoryMethod CCopasiMethod CCopasiParameterGroup CCopasiParameter CCopasiContainer CCopasiObject

List of all members.

Classes

class  CPartition
class  CReactionDependencies

Public Member Functions

 CTrajectoryMethodDsaLsodar (const CTrajectoryMethodDsaLsodar &src, const CCopasiContainer *pParent=NULL)
 ~CTrajectoryMethodDsaLsodar ()
virtual bool elevateChildren ()
virtual void stateChanged ()
virtual Status step (const double &deltaT)
virtual void start (const CState *initialState)
virtual void evalF (const C_FLOAT64 *t, const C_FLOAT64 *y, C_FLOAT64 *ydot)
virtual void evalR (const C_FLOAT64 *t, const C_FLOAT64 *y, const C_INT *nr, C_FLOAT64 *r)
virtual bool isValidProblem (const CCopasiProblem *pProblem)
void cleanup ()
virtual C_FLOAT64 doSingleStep (C_FLOAT64 currentTime, C_FLOAT64 endTime)
void integrateDeterministicPart (const C_FLOAT64 &deltaT)
void fireReaction (const size_t &index)
void calculateAmu (const size_t &index)
void calculatePropensities ()

Protected Member Functions

 CTrajectoryMethodDsaLsodar (const CCopasiMethod::SubType &subType=DsaLsodar, const CCopasiContainer *pParent=NULL)

Protected Attributes

unsigned C_INT32 * mpMaxSteps
C_FLOAT64 * mpLowerLimit
C_FLOAT64 * mpUpperLimit
unsigned C_INT32 * mpPartitioningInterval
C_FLOAT64 * mpPartitioningSteps
CRandommpRandomGenerator
unsigned C_INT32 mFirstReactionSpeciesIndex
bool mMaxStepsReached
unsigned C_INT32 mStepsAfterPartitionSystem
size_t mNumReactions
C_FLOAT64 mNextReactionTime
unsigned C_INT32 mNextReactionIndex
bool mDoCorrection
CVector< C_FLOAT64 > mAmu
C_FLOAT64 mA0
std::vector
< CReactionDependencies > 
mReactionDependencies
CPartition mPartition

Friends

CTrajectoryMethodCTrajectoryMethod::createTrajectoryMethod (CCopasiMethod::SubType subType, CTrajectoryProblem *pProblem)

Constructor & Destructor Documentation

CTrajectoryMethodDsaLsodar::CTrajectoryMethodDsaLsodar ( const CCopasiMethod::SubType subType = DsaLsodar,
const CCopasiContainer pParent = NULL 
) [protected]

Default constructor.

Parameters:
constCCopasiMethod::SubType & subType (default: DsaLsodar)
constCCopasiContainer * pParent (default: NULL)

Default constructor.

CTrajectoryMethodDsaLsodar::CTrajectoryMethodDsaLsodar ( const CTrajectoryMethodDsaLsodar src,
const CCopasiContainer pParent = NULL 
)

Copy constructor

Parameters:
constCTrajectoryMethodDsaLsodar & src
constCCopasiContainer * pParent (default: NULL)
CTrajectoryMethodDsaLsodar::~CTrajectoryMethodDsaLsodar ( )

Destructor.


Member Function Documentation

void CTrajectoryMethodDsaLsodar::calculateAmu ( const size_t &  index)

Calculates an amu value for a given reaction.

Parameters:
constsize_t & index
void CTrajectoryMethodDsaLsodar::calculatePropensities ( )

Calculate the propensities of all stochastic reactions

void CTrajectoryMethodDsaLsodar::cleanup ( )

Cleans up memory, etc.

C_FLOAT64 CTrajectoryMethodDsaLsodar::doSingleStep ( C_FLOAT64  currentTime,
C_FLOAT64  endTime 
) [virtual]

Simulates the system over the next interval of time. The current time and the end time of the current step() are given as arguments.

Parameters:
currentTimeA C_FLOAT64 specifying the current time
endTimeA C_FLOAT64 specifying the end time of the step()
Returns:
A C_FLOAT giving the new time
bool CTrajectoryMethodDsaLsodar::elevateChildren ( ) [virtual]

This methods must be called to elevate subgroups to derived objects. The default implementation does nothing.

Returns:
bool success

Reimplemented from CLsodaMethod.

void CTrajectoryMethodDsaLsodar::evalF ( const C_FLOAT64 *  t,
const C_FLOAT64 *  y,
C_FLOAT64 *  ydot 
) [virtual]

This evaluates the derivatives

Reimplemented from CLsodaMethod.

void CTrajectoryMethodDsaLsodar::evalR ( const C_FLOAT64 *  t,
const C_FLOAT64 *  y,
const C_INT *  nr,
C_FLOAT64 *  r 
) [virtual]

This evaluates the roots

Reimplemented from CLsodaMethod.

void CTrajectoryMethodDsaLsodar::fireReaction ( const size_t &  index)

Executes the specified reaction in the system once.

Parameters:
constsize_t & index

Executes the specified reaction in the system once.

Parameters:
indexA C_INT32 specifying the index of the reaction, which will be fired.
timeThe current time
void CTrajectoryMethodDsaLsodar::integrateDeterministicPart ( const C_FLOAT64 &  deltaT)

Integrates the deterministic reactions of the system over the specified time interval.

Parameters:
constC_FLOAT64 & deltaT.
bool CTrajectoryMethodDsaLsodar::isValidProblem ( const CCopasiProblem pProblem) [virtual]

Check if the method is suitable for this problem

Returns:
bool suitability of the method

Reimplemented from CTrajectoryMethod.

void CTrajectoryMethodDsaLsodar::start ( const CState initialState) [virtual]

This instructs the method to prepare for integration starting with the initialState given.

Parameters:
const CState *initialState

Reimplemented from CLsodaMethod.

void CTrajectoryMethodDsaLsodar::stateChanged ( ) [virtual]

Inform the trajectory method that the state has changed outside its control

Reimplemented from CLsodaMethod.

CTrajectoryMethod::Status CTrajectoryMethodDsaLsodar::step ( const double &  deltaT) [virtual]

This instructs the method to calculate a time step of deltaT starting with the current state, i.e., the result of the previous step. The new state (after deltaT) is expected in the current state. The return value is the actual time step taken.

Parameters:
const double &deltaT
Returns:
Status status

Reimplemented from CLsodaMethod.


Friends And Related Function Documentation

CTrajectoryMethod* CTrajectoryMethod::createTrajectoryMethod ( CCopasiMethod::SubType  subType,
CTrajectoryProblem pProblem 
) [friend]

Reimplemented from CLsodaMethod.


Member Data Documentation

C_FLOAT64 CTrajectoryMethodDsaLsodar::mA0 [protected]

Total propensity (sum over mAmu[i])

CVector< C_FLOAT64 > CTrajectoryMethodDsaLsodar::mAmu [protected]

A vector of reaction propensities

A boolean flag indicating whether correction for higher order reactions need to be applied

Index of the first species determined by reactions in CState

unsigned C_INT32 CTrajectoryMethodDsaLsodar::mNextReactionIndex [protected]

The index of the next reaction which fires

The time the next reaction fires

The particle and reaction numbers

The partition of the system

Pointer to the method parameter "Lower Limit"

unsigned C_INT32* CTrajectoryMethodDsaLsodar::mpMaxSteps [protected]

Pointer to the method parameter "Max Internal Steps"

Pointer to the method parameter "Partitioning Interval"

Pointer to the method parameter "Partitioning Stepsize"

The random number generator.

Pointer to the method parameter "Upper Limit"

std::vector< CReactionDependencies > CTrajectoryMethodDsaLsodar::mReactionDependencies [protected]

A vector containing dependency information to minimize the required updates.

Number of elementary steps after the last partitioning.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines