Skip to content

num::householder_vector_strided

Defined in header <linear/factorization/qr.hpp>

template <std::floating_point T>
void householder_vector_strided(T *v, T &beta, const T *A, idx lda, idx offset,
                                idx m) noexcept;

Householder reflector for a strided column of a matrix.

The column is copied into v and the reflector formed there in place. Not a call to householder_vector(v, beta, v, m): that passes one buffer as two restrict parameters, and at -O3 the compiler is entitled to read x[0] after v[0] has been overwritten with 1.