void syten::orthogonalise_arithmetic | ( | T & | vec, |
Iterator | first, | ||
Iterator | last, | ||
bool | assume_norm_one = false , |
||
Truncation const & | trunc = Truncation() |
||
) |
Generic implementation of orthogonalisation against a set of vectors using Gram-Schmidt orthogonalisation.
Attempts to use the truncating implementation if possible, otherwise the generic one.
[in,out] | vec | input vector which is to be orthogonalised and output orthogonal vector |
[in] | first | iterator pointing to the first element of the range of vectors against which we orthogonalise |
[in] | last | iterator pointing one past the end of the range of vectors against which we orthogonalise |
[in] | trunc | truncation specification, if applicable |
[in] | assume_norm_one | assume that the norm of the orthogonal input vectors is 1. |
[*first, *last)
need to be orthogonal. References orthogonalise_arithmetic_imp().
Referenced by orthogonalise_run().