Reaktoro 
A unified framework for modeling chemically reactive systems
Reaktoro::DaeSolver Class Reference

Detailed Description

A class for solving differential-algebraic equations (DAE).

See also
DaeProblem, DaeOptions

#include <DaeSolver.hpp>

Public Member Functions

 DaeSolver ()
 Construct a default DaeSolver instance.
 
 DaeSolver (const DaeSolver &other)
 Construct a copy of an DaeSolver instance.
 
virtual ~DaeSolver ()
 Destroy this DaeSolver instance.
 
auto operator= (DaeSolver other) -> DaeSolver &
 Assign a DaeSolver instance to this instance.
 
auto setOptions (const DaeOptions &options) -> void
 Set the options for the ODE solver. More...
 
auto setProblem (const DaeProblem &problem) -> void
 Set the ODE problem. More...
 
auto initialize (double tstart, const Vector &y) -> void
 Initializes the ODE solver. More...
 
auto integrate (double &t, Vector &y) -> void
 Integrate the ODE performing a single step. More...
 
auto integrate (double &t, Vector &y, double tfinal) -> void
 Integrate the ODE performing a single step not going over a given time. More...
 
auto solve (double &t, double dt, Vector &y) -> void
 Solve the ODE equations from a given start time to a final one. More...
 

Member Function Documentation

auto Reaktoro::DaeSolver::setOptions ( const DaeOptions options) -> void

Set the options for the ODE solver.

See also
DaeOptions
auto Reaktoro::DaeSolver::setProblem ( const DaeProblem problem) -> void

Set the ODE problem.

See also
DaeProblem
auto Reaktoro::DaeSolver::initialize ( double  tstart,
const Vector y 
) -> void

Initializes the ODE solver.

This method should be invoked whenever the user intends to make a call to DaeSolver::integrate.

Parameters
tstartThe start time of the integration.
yThe initial values of the variables
auto Reaktoro::DaeSolver::integrate ( double &  t,
Vector y 
) -> void

Integrate the ODE performing a single step.

Parameters
[in,out]tThe current time of the integration as input, the new current time as output
[in,out]yThe current variables as input, the new current variables as output
auto Reaktoro::DaeSolver::integrate ( double &  t,
Vector y,
double  tfinal 
) -> void

Integrate the ODE performing a single step not going over a given time.

Parameters
[in,out]tThe current time of the integration as input, the new current time as output
[in,out]yThe current variables as input, the new current variables as output
tfinalThe final time that the integration must satisfy
auto Reaktoro::DaeSolver::solve ( double &  t,
double  dt,
Vector y 
) -> void

Solve the ODE equations from a given start time to a final one.

Parameters
[in,out]tThe current time of the integration as input, the new current time as output
dtThe value of the time step
[in,out]yThe current variables as input, the new current variables as output

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