GamR
0.0.0
GammaROOT
Loading...
Searching...
No Matches
Solver.cc
Go to the documentation of this file.
1
#include "
Nucleus.hh
"
2
#include "
Scheme.hh
"
3
#include "
Solver.hh
"
4
5
namespace
GamR
{
6
namespace
Bateman
{
7
8
void
Solver::solve
(
Scheme
&scheme) {
9
std::vector<double> x;
10
for
(
int
i=0; i<scheme.
nuclei
.size(); ++i) {
11
x.push_back(
N0
* scheme.
nuclei
[i]->N0);
12
}
13
14
double
time = 0.0;
15
int
step = 0;
16
while
(time <
max_time
) {
17
rk
.do_step(scheme, x, time,
stepsize
);
18
for
(
int
i=0; i<scheme.
nuclei
.size(); ++i) {
19
scheme.
nuclei
[i]->population[step] = x[i];
20
}
21
++step;
22
time +=
stepsize
;
23
}
24
}
25
}
26
}
27
Nucleus.hh
Scheme.hh
Solver.hh
GamR::Bateman::Scheme
Definition
Scheme.hh:13
GamR::Bateman::Scheme::nuclei
std::vector< Nucleus * > nuclei
Definition
Scheme.hh:15
GamR::Bateman::Solver::rk
boost::numeric::odeint::runge_kutta4< std::vector< double > > rk
Definition
Solver.hh:13
GamR::Bateman::Solver::solve
void solve(Scheme &scheme)
Definition
Solver.cc:8
GamR::Bateman::Solver::stepsize
double stepsize
Definition
Solver.hh:14
GamR::Bateman::Solver::N0
double N0
Definition
Solver.hh:15
GamR::Bateman::Solver::max_time
double max_time
Definition
Solver.hh:16
GamR::Bateman
Definition
Nucleus.cc:4
GamR
Definition
Gain.cc:19
src
lib
bateman
Solver.cc
Generated on Tue Feb 10 2026 23:03:42 for GamR by
1.13.2