|
template<typename... Args> |
IterativeExit | solve (IterativeConfig const &conf, Vector &result, Args...args) |
| Solves the problem once the input vector is known. More...
|
|
template<typename... Args> |
auto | solve (Vector &v, Args...args) |
| Solves the problem using only the currently existing Krylov space. More...
|
|
template<typename... Args> |
IterativeExit | solve (Vector v, IterativeConfig const &conf, Vector &result, Args...args) |
| Initialises the starting vector and solves the problem. More...
|
|
template<typename... Args> |
std::tuple< IterativeExit, std::vector< Vector >, DenseTensor< 2, SDef > > | solve_kss (Vector v, IterativeConfig const &conf, Vector &result, Args...args) |
|
| TensorNetworks ()=default |
| Default ctor. More...
|
|
| TensorNetworks (Matrix m) |
| Standard ctor: Pass in the matrix to be solved. More...
|
|
template<typename... Params> |
void | wrapup (Params &&... params) |
| Hook to evaluate data at completion of the current Krylov space calculation. More...
|
|
template<typename Matrix, typename Vector, typename OrthoPolicy, typename HEffPolicy, typename SolverPolicy, typename ApplicationPolicy = TensorNetworksImpl::ApplyThenOrtho>
class syten::Krylov::TensorNetworks< Matrix, Vector, OrthoPolicy, HEffPolicy, SolverPolicy, ApplicationPolicy >
Krylov implementation optimised for tensor network applications where calculating \( x^T \cdot A \cdot y \) does not require a matrix-vector application.
- Template Parameters
-
Matrix | type of the input matrix |
Vector | type of the input vector |
OrthoPolicy | policy class used to orthogonalise the Krylov space |
HEffPolicy | policy class which returns the projected effective matrix |
SolverPolicy | policy class which tests for convergence and returns the solution once the projected effective matrix is known. |