SyTen

◆ solve() [1/3]

template<typename Matrix , typename Vector , typename OrthoPolicy , typename HEffPolicy , typename SolverPolicy , typename ApplicationPolicy = TensorNetworksImpl::ApplyThenOrtho>
template<typename... Args>
IterativeExit syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::solve ( IterativeConfig const &  conf,
Vector &  result,
Args...  args 
)
inline

Solves the problem once the input vector is known.

Template Parameters
Argstype pack of arguments to be forwarded to the effective matrix generator and the solver policy
Parameters
confconfiguration object to abide by
resultreference in which to return the resulting vector
argsarguments to be forwarded to the effective matrix generator and the solver policy
Returns
an IterativeExit object describing the calculation
Remarks
Reuses the existing Krylov space.

References syten::abs(), syten::Timer::add(), syten::Converged, std::vector< T >::emplace_back(), syten::Timer::end(), syten::IterativeExit::error, syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::H, syten::InexactArithmetic, syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::initialNorm, std::isnan(), syten::IterativeExit::iter, syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::krylov, syten::logTV(), syten::MaxIterations, syten::MaxPossible, syten::IterativeExit::message, syten::Timer::middle(), std::move(), syten::nan, syten::IterativeExit::reason, std::vector< T >::size(), syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::solveAtThisStep(), syten::Timer::start(), SYTEN_SMALL_THRESHOLD, and syten::to_string_rd().

Referenced by syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >::solve().

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