org.systemsbiology.chem
Class SimulatorStochasticGibsonBruck

java.lang.Object
  extended byorg.systemsbiology.chem.Simulator
      extended byorg.systemsbiology.chem.SimulatorStochasticBase
          extended byorg.systemsbiology.chem.SimulatorStochasticGibsonBruck
All Implemented Interfaces:
IAliasableClass, ISimulator

public final class SimulatorStochasticGibsonBruck
extends SimulatorStochasticBase
implements IAliasableClass, ISimulator

Implementation of the Gibson-Bruck "Next Reaction" algorithm. Note: If the Model contains M reactions with custom reaction rate expressions, the Gibson algorithm will require M^2 memory because each of the M reactions will need to be recomputed when any of the other reactions occurs.

Author:
Stephen Ramsey

Field Summary
static String CLASS_ALIAS
           
 
Fields inherited from class org.systemsbiology.chem.SimulatorStochasticBase
DEFAULT_ENSEMBLE_SIZE, DEFAULT_FLAG_GET_FINAL_SYMBOL_FLUCTUATIONS, DEFAULT_NUM_HISTORY_BINS, mDynamicSymbolDelayedReactionAssociations, mPoissonEventGenerator, mRandomNumberGenerator
 
Fields inherited from class org.systemsbiology.chem.Simulator
DEFAULT_MIN_NUM_MILLISECONDS_FOR_UPDATE, mDelayedReactionSolvers, mDynamicSymbolAdjustmentVectors, mDynamicSymbolNames, mDynamicSymbols, mDynamicSymbolValues, mInitialDynamicSymbolValues, mInitialized, mIsStochasticSimulator, mMinNumMillisecondsForUpdate, mModelName, mNonDynamicSymbolExpressionValues, mNonDynamicSymbolValues, mReactionProbabilities, mReactionRates, mReactions, mReactionsDelayedReactionAssociations, mReactionsLocalParamSymbolsMaps, mReactionsProductsDynamic, mReactionsProductsSpecies, mReactionsProductsStoichiometries, mReactionsReactantsDynamic, mReactionsReactantsSpecies, mReactionsReactantsStoichiometries, mReactionSymbols, mSimulationController, mSimulationProgressReporter, mSymbolEvaluator, mSymbolMap, mUseExpressionValueCaching, NULL_REACTION
 
Fields inherited from interface org.systemsbiology.chem.ISimulator
MIN_NUM_RESULTS_TIME_POINTS
 
Constructor Summary
SimulatorStochasticGibsonBruck()
           
 
Method Summary
 String getAlias()
           
 void initialize(Model pModel)
           
protected  double iterate(MutableInteger pLastReactionIndex)
           
protected  void modifyDefaultSimulatorParameters(SimulatorParameters pSimulatorParameters)
           
protected  void prepareForStochasticSimulation(double pStartTime, SimulatorParameters pSimulatorParameters)
           
 
Methods inherited from class org.systemsbiology.chem.SimulatorStochasticBase
allowsInterrupt, checkDynamicalSymbolsValues, checkSimulationParametersImpl, chooseDeltaTimeToNextReaction, chooseIndexOfNextReaction, getDefaultSimulatorParameters, getNextDelayedReactionIndex, getPoissonEvent, getRandomNumberGenerator, getRandomNumberUniformInterval, initializePoissonEventGenerator, initializeRandomNumberGenerator, initializeSimulatorStochastic, isStochasticSimulator, setRandomNumberGenerator, simulate, updateSymbolValuesForReaction
 
Methods inherited from class org.systemsbiology.chem.Simulator
addRequestedSymbolValues, canComputeFluctuations, checkSimulationParameters, checkSimulationParametersForDeterministicSimulator, clearExpressionValueCaches, clearSimulatorState, computeDerivative, computeRatePartialDerivativeExpression, computeReactionProbabilities, createRequestedSymbolArray, createSimulationResults, createTimesArray, getDelayedReactionEstimatedAverageFutureRate, getMinDelayedReactionDelay, getReactionRateExpressions, hasDelayedReactionSolvers, initializeDynamicSymbolAdjustmentVectors, initializeSimulator, isInitialized, prepareForSimulation, resizeDelayedReactionSolvers, setController, setInitialized, setMinNumMillisecondsForUpdate, setProgressReporter, setStatusUpdateIntervalSeconds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.systemsbiology.chem.ISimulator
allowsInterrupt, canComputeFluctuations, checkSimulationParameters, getDefaultSimulatorParameters, isInitialized, setController, setProgressReporter, setStatusUpdateIntervalSeconds, simulate
 

Field Detail

CLASS_ALIAS

public static final String CLASS_ALIAS
See Also:
Constant Field Values
Constructor Detail

SimulatorStochasticGibsonBruck

public SimulatorStochasticGibsonBruck()
Method Detail

prepareForStochasticSimulation

protected void prepareForStochasticSimulation(double pStartTime,
                                              SimulatorParameters pSimulatorParameters)
                                       throws DataNotFoundException
Specified by:
prepareForStochasticSimulation in class SimulatorStochasticBase
Throws:
DataNotFoundException

iterate

protected double iterate(MutableInteger pLastReactionIndex)
                  throws DataNotFoundException,
                         IllegalStateException
Specified by:
iterate in class SimulatorStochasticBase
Throws:
DataNotFoundException
IllegalStateException

initialize

public void initialize(Model pModel)
                throws DataNotFoundException,
                       InvalidInputException
Specified by:
initialize in interface ISimulator
Throws:
DataNotFoundException
InvalidInputException

modifyDefaultSimulatorParameters

protected void modifyDefaultSimulatorParameters(SimulatorParameters pSimulatorParameters)
Specified by:
modifyDefaultSimulatorParameters in class SimulatorStochasticBase

getAlias

public String getAlias()
Specified by:
getAlias in interface ISimulator
Specified by:
getAlias in class Simulator