30template<VecField Field,
typename Observer>
33 for (
int s = 0; s < p.
nstep; ++s) {
36 obs(s + 1, (s + 1) * p.
dt, u);
41template<VecField Field>
43 for (
int s = 0; s < p.
nstep; ++s) {
Storage and operator concepts for numerical routines.
Universal linear solver callable type.
void advance(Field &u, const LinearSolver &solver, ImplicitParams p, Observer &&obs)
std::function< SolverResult(const Vector &rhs, Vector &x)> LinearSolver
Callable that solves .
Parameters for fixed-step implicit integration.
double dt
step size (reported to observer as t)
int nstep
number of time steps
Dense vector storage and operations.