SyTen
syten::Krylov::Evolution::ConcaveHeuristic< Solver > Class Template Reference

Concavity assumption: Number of vectors needed for the next step is at most as large as the number of vectors needed for the previous step. More...

#include <krylov_evolve.h>

+ Inheritance diagram for syten::Krylov::Evolution::ConcaveHeuristic< Solver >:
+ Collaboration diagram for syten::Krylov::Evolution::ConcaveHeuristic< Solver >:

Public Member Functions

virtual bool do_recycle (Conf const &) const override
 override More...
 
virtual void init_evolve (Conf &conf) override
 override: need to re-initialise the number of vectors used/stored so far. More...
 
virtual IterativeExit virt_continue_evolution (Solver &k, typename Solver::Vector_type &s, Conf &conf, SDef dt) override
 override More...
 
virtual IterativeExit virt_evolve (Solver &k, typename Solver::Vector_type &s, Conf &conf, SDef dt) override
 override More...
 
- Public Member Functions inherited from syten::Krylov::Evolution::Evolver< Solver >
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...
 
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 ~Evolver ()
 Virtual dtor to allow proper destruction. More...
 

Private Attributes

Index nMax =Maximum()
 maximally allowed number of vectors More...
 
Index nPenult {0}
 number of vectors during second-to-last iteration More...
 
Index nUlt {1}
 number of vectors during last iteration More...
 

Additional Inherited Members

- Public Attributes inherited from syten::Krylov::Evolution::Evolver< Solver >
Index count {}
 number of steps taken More...
 

Detailed Description

template<typename Solver>
class syten::Krylov::Evolution::ConcaveHeuristic< Solver >

Concavity assumption: Number of vectors needed for the next step is at most as large as the number of vectors needed for the previous step.


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