SyTen

◆ solve()

template<typename Matrix , typename Vector , typename OrthoPolicy , typename SolverPolicy >
template<typename... Params>
IterativeExit syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::solve ( IterativeConfig const &  conf,
Vector &  result,
Params &&...  params 
)
inline

Solve the problem obeying configuration conf.

The result is stored in result. params are passed to the SolverPolicy which is expected to generate a series of coefficients.

References syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::a, syten::Timer::add(), syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::b, std::vector< T >::back(), syten::Converged, syten::Timer::end(), syten::IterativeExit::error, syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::get_projected_matrix(), syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::initial_norm, syten::isnan(), syten::IterativeExit::iter, syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::krylov, syten::logTV(), syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::matrix, syten::MaxIterations, syten::MaxPossible, syten::IterativeExit::message, syten::Timer::middle(), std::move(), syten::Krylov::norm(), syten::orthogonalise(), syten::Krylov::overlap(), std::vector< T >::push_back(), syten::real(), syten::IterativeExit::reason, std::vector< T >::size(), syten::Timer::start(), syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::test_solve_now(), syten::to_string_rd(), syten::underThreshold(), syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::vec_stored, and syten::Krylov::Standard< Matrix, Vector, OrthoPolicy, SolverPolicy >::vec_valid.

Referenced by syten::Krylov::Evolution::fwd_continue_evolution(), syten::Krylov::Evolution::fwd_evolve(), and syten::Krylov::Evolution::fwd_evolve_kss().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: