Skip to content

num::kernel::rotg

Defined in header <kernel/vector.hpp>

template <std::floating_point T>
void rotg(T a, T b, T &c, T &s) noexcept;

Constructs Givens rotation parameters \((c, s)\) such that:

\[ \begin{bmatrix} c & s \\ -s & c \end{bmatrix} \begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} r \\ 0 \end{bmatrix}, \qquad c^2 + s^2 = 1 \]