Scine::Kinetx
3.0.0
Kinetic models for reaction networks.
|
Base class for all Runge-Kutta methods/implementations. More...
#include <Integrator.h>
Public Member Functions | |
virtual void | propagate (Eigen::VectorXd &concentrations, Eigen::VectorXd &yFlux, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, double &t, double &dt) const =0 |
Propagate the numerical integration by one time step. More... | |
virtual Eigen::MatrixXd | runIntegration (Eigen::VectorXd y, double tStart, double dt, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, const unsigned int batchInterval=1000, const unsigned int nBatches=100000, const double convergenceConcentrationChange=1e-10)=0 |
Run the numerical integration until a maximum number of steps or convergence is reached. More... | |
virtual Eigen::MatrixXd | runIntegrationByTime (Eigen::VectorXd y, double tStart, double dt, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, const double tMax, const unsigned int batchInterval=1000, const double convergenceConcentrationChange=1e-10)=0 |
Run the numerical integration until a maximum time or convergence is reached. More... | |
Base class for all Runge-Kutta methods/implementations.
|
pure virtual |
Propagate the numerical integration by one time step.
concentrations | The current concentrations. Updated inplace. |
yFlux | The current vertex (aggregate) flux. Updated inplace. |
rFlux | The current total edge (reaction) flux. Updated inplace. |
rForwardFlux | The current forward edge flux. Updated inplace. |
rBackwardFlux | The current backward edge flux. Updated inplace. |
t | The current time. Updated inplace. |
dt | The time increment. This may be updated inplace depending on the integration algorithm. |
Implemented in Scine::Kinetx::Cvode::Impl, Scine::Kinetx::IntegratorBase, Scine::Kinetx::Cvode, and Scine::Kinetx::RungeKutta.
|
pure virtual |
Run the numerical integration until a maximum number of steps or convergence is reached.
y | The input concentration. |
tStart | The start time. |
dt | The time increment. |
rFlux | The reaction edge flux (total). |
rForwardFlux | The forward reaction edge flux. |
rBackwardFlux | The backward reaction edge flux. |
batchInterval | The number of steps per batch. |
nBatches | The number of integration batches. |
convergenceConcentrationChange | The concentration convergence threshold. |
Implemented in Scine::Kinetx::IntegratorBase, and Scine::Kinetx::Cvode.
|
pure virtual |
Run the numerical integration until a maximum time or convergence is reached.
y | The input concentration. |
tStart | The start time. |
dt | The time increment. |
rFlux | The reaction edge flux (total). |
rForwardFlux | The forward reaction edge flux. |
rBackwardFlux | The backward reaction edge flux. |
tMax | The final time to integrate to. |
batchInterval | The number of steps per batch. |
convergenceConcentrationChange | The concentration convergence threshold. |
Implemented in Scine::Kinetx::IntegratorBase, and Scine::Kinetx::Cvode.