|
| GreedyHeuristic ()=default |
| Default ctor. More...
|
|
| GreedyHeuristic (SRDef fac) |
| Adapt the growth factor. More...
|
|
template<typename... WrapUpParams> |
void | do_step (Solver &k, typename Solver::Vector_type &s, Conf &conf, std::string const &suffix, WrapUpParams &&... params) |
| Does one step if the subspace can be recycled does not discard it(hopefully) More...
|
|
template<typename... WrapUpParams> |
void | evolve (Solver k, typename Solver::Vector_type &s, Conf &conf, std::string const &suffix, WrapUpParams &&... params) |
| Builds one Krylov space and evolves within that space as far as possible, recycling it if necessary. More...
|
|
virtual void | init_evolve (Conf &) |
| Hook to initialise the evolution process for subclasses. More...
|
|
template<typename... WrapUpParams> |
void | loop_evolve (typename Solver::Matrix_type o, typename Solver::Vector_type &v, Conf &conf, std::string const &suffix, WrapUpParams &&... params) |
| Constructs the solver and evolves until the target time is reached. More...
|
|
virtual IterativeExit | virt_continue_evolution (Solver &k, typename Solver::Vector_type &s, Conf &conf, SDef dt) |
| Hook for the continued actual evolution, calling out to the external functions by default. More...
|
|
virtual IterativeExit | virt_evolve (Solver &k, typename Solver::Vector_type &s, Conf &conf, SDef dt) |
| Hook for the actual evolution, calling out to the external functions by default. More...
|
|
virtual | ~Evolver () |
| Virtual dtor to allow proper destruction. More...
|
|
template<typename Solver, typename Clock = std::chrono::steady_clock>
class syten::Krylov::Evolution::GreedyHeuristic< Solver, Clock >
Heuristic which takes into account the time to build a new Krylov vector compared to the time to build an entire new subspace.
Only checks the next step, not all steps potentially possible with the new Krylov vector.