numerics 0.1.0
Loading...
Searching...
No Matches
qr.hpp
Go to the documentation of this file.
1/// @file qr.hpp
2/// @brief QR factorization via Householder reflections.
3#pragma once
4
5#include "core/matrix.hpp"
6#include "core/policy.hpp"
7
8namespace num {
9
10/// @brief QR factorization \f$A=QR\f$.
11struct QRResult {
14};
15
16/// @brief Factor \f$A\in\mathbb{R}^{m\times n}\f$ as \f$A=QR\f$.
17QRResult qr(const Matrix& A, Backend backend = lapack_backend);
18
19/// @brief Solve \f$\min_x \|Ax-b\|_2\f$.
20void qr_solve(const QRResult& f, const Vector& b, Vector& x);
21
22} // namespace num
Backend enum and default backend selection.
Dense row-major matrix templated over scalar type T.
void qr_solve(const QRResult &f, const Vector &b, Vector &x)
Solve .
Definition qr.cpp:19
Backend
Definition policy.hpp:7
QRResult qr(const Matrix &A, Backend backend=lapack_backend)
Factor as .
Definition qr.cpp:10
constexpr Backend lapack_backend
Definition policy.hpp:66
QR factorization .
Definition qr.hpp:11
Matrix R
Definition qr.hpp:13
Matrix Q
Definition qr.hpp:12