Orthonormalisation policies used by StandardKrylov and TensorNetworksKrylov. More...
Classes | |
struct | AllButLast |
Orthogonalises only against the first N-2 vectors of the set of size N, i.e. More... | |
struct | Arithmetic |
Arithmetic orthonormalisation. More... | |
struct | Combined |
Uses two different implementations to first orthonormalise against the last two vectors of the orthogonalisation set and then against all vectors of that set. More... | |
struct | Complete |
Completely orthogonalises the space using the specified OrthoImpl class method. More... | |
struct | LastTwo |
Orthogonalises only against the last two vectors of the orthogonalisation set. More... | |
struct | None |
Does nothing when called to orthonormalise or orthogonalise(). More... | |
struct | TwoSiteVariational |
Two-site variational orthonormalisation. More... | |
struct | Variational |
Variational orthonormalisation. More... | |
Orthonormalisation policies used by StandardKrylov and TensorNetworksKrylov.
The interface provided by the completed policy classes are:
orthonormalise()
function which takes the desired vector, a vector of vectors against which to orthonormalise, the iterative config to use and the iterative exit object to encode the return value.orthogonalise()
function which orthogonalises but does not orthonormalise.invSubspaceSufficient()
function which returns true if the orthogonalisation procedure is such that a resulting zero norm is only due to actual linear dependence and not other effects such as a limited variational space. In other words, if this function returns true, encountering an invariant subspace within Krylov implies that the problem was solved exactly.