12 std::string
name()
const override
14 return "Crank-Nicolson";
28 const std::vector<double>& Tprev,
29 const std::vector<double>& Tcurr,
30 std::vector<double>& Tnext)
const override;
Crank-Nicolson scheme implementation.
void step(const Grid &g, double D, double dt, const std::vector< double > &Tprev, const std::vector< double > &Tcurr, std::vector< double > &Tnext) const override
Advance one time step using Crank-Nicolson scheme.
std::string name() const override
Get human-readable name of the scheme.
bool uses_previous_step() const noexcept override
Indicates if the scheme requires data from time step n-1.
Abstract interface for time-integration schemes solving the 1D heat equation.
Uniform 1D grid on x ∈ [0, L], including both boundary nodes.