Sundials implementation called CVODE.
More...
#include <Cvode.h>
|
| | Cvode (Network &net) |
| | Constructor. More...
|
| |
|
| ~Cvode () |
| | Destructor.
|
| |
| Eigen::MatrixXd | runIntegrationByTime (Eigen::VectorXd y, double t, double dt, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, const double tMax, const unsigned int batchInterval, const double convergenceConcentrationChange) |
| | Run the numerical integration until a maximum time or convergence is reached. More...
|
| |
| Eigen::MatrixXd | runIntegration (Eigen::VectorXd y, double t, double dt, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, const unsigned int batchInterval, const unsigned int nBatches, const double convergenceConcentrationChange) |
| | Run the numerical integration until a maximum number of steps or convergence is reached. More...
|
| |
| void | propagate (Eigen::VectorXd &concentrations, Eigen::VectorXd &yFlux, Eigen::VectorXd &rFlux, Eigen::VectorXd &rForwardFlux, Eigen::VectorXd &rBackwardFlux, double &t, double &dt) const |
| | Propagate the numerical integration by one time step. More...
|
| |
Sundials implementation called CVODE.
| Scine::Kinetx::Cvode::Cvode |
( |
Network & |
net | ) |
|
Constructor.
- Parameters
-
| net | The network of reactions. |
| void Scine::Kinetx::Cvode::propagate |
( |
Eigen::VectorXd & |
concentrations, |
|
|
Eigen::VectorXd & |
yFlux, |
|
|
Eigen::VectorXd & |
rFlux, |
|
|
Eigen::VectorXd & |
rForwardFlux, |
|
|
Eigen::VectorXd & |
rBackwardFlux, |
|
|
double & |
t, |
|
|
double & |
dt |
|
) |
| const |
|
virtual |
Propagate the numerical integration by one time step.
- Parameters
-
| 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. |
Implements Scine::Kinetx::Integrator.
| Eigen::MatrixXd Scine::Kinetx::Cvode::runIntegration |
( |
Eigen::VectorXd |
y, |
|
|
double |
tStart, |
|
|
double |
dt, |
|
|
Eigen::VectorXd & |
rFlux, |
|
|
Eigen::VectorXd & |
rForwardFlux, |
|
|
Eigen::VectorXd & |
rBackwardFlux, |
|
|
const unsigned int |
batchInterval, |
|
|
const unsigned int |
nBatches, |
|
|
const double |
convergenceConcentrationChange |
|
) |
| |
|
virtual |
Run the numerical integration until a maximum number of steps or convergence is reached.
- Parameters
-
| 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. |
- Returns
- The final concentrations, max. concentrations, and vertex fluxes as a matrix with columns in this order.
Implements Scine::Kinetx::Integrator.
| Eigen::MatrixXd Scine::Kinetx::Cvode::runIntegrationByTime |
( |
Eigen::VectorXd |
y, |
|
|
double |
tStart, |
|
|
double |
dt, |
|
|
Eigen::VectorXd & |
rFlux, |
|
|
Eigen::VectorXd & |
rForwardFlux, |
|
|
Eigen::VectorXd & |
rBackwardFlux, |
|
|
const double |
tMax, |
|
|
const unsigned int |
batchInterval, |
|
|
const double |
convergenceConcentrationChange |
|
) |
| |
|
virtual |
Run the numerical integration until a maximum time or convergence is reached.
- Parameters
-
| 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. |
- Returns
- The final concentrations, max. concentrations, and vertex fluxes as a matrix with columns in this order.
Implements Scine::Kinetx::Integrator.
The documentation for this class was generated from the following files: