- FactorizationQR
- FactorizationQRNonNeg
- FactorizationQRPivot
- FactorizationLQ
- FactorizationQL
- FactorizationRQ
FactorizationQRPivot
Вычисляет QR-разложение общей матрицы размера m на n с перестановкой столбцов: A * P = Q * R. LAPACK-функция GEQP3.
Вычисления для типа matrix<double>
bool matrix::FactorizationQRPivot(
|
Вычисления для типа matrix<float>
bool matrix::FactorizationQRPivot(
|
Вычисления для типа matrix<complex>
bool matrix::FactorizationQRPivot(
|
Вычисления для типа matrix<complexf>
bool matrix::FactorizationQRPivot(
|
Параметры
reduced
[in] Режим вычислений. Если параметр reduced установлен в значение true, тогда матрицы Q и R вычисляются с размерностями (M,K), (K,N). Если параметр reduced установлен в значение false, выполняется полный расчет матриц Q, R с размерностями (M,M), (M,N).
jpvt
[in] Целочисленный массив размерности n. Если jpvt(i) ≠ 0, то i-й столбец матрицы A перемещается в начало матрицы AP до начала вычислений и фиксируется на этом месте в ходе разложения. Если jpvt(i) = 0, то i-й столбец матрицы A считается свободным (т.е. он может быть перестановлен с любым другим свободным столбцом во время вычислений). Если массив jpvt имеет нулевой размер (или не инициализирован), предполагается, что все столбцы матрицы A свободны.
Q
[out] Ортогональная или унитарная матрица Q.
R
[out] Верхнетреугольная матрица R.
P
[out] Матрица перестановок P размером n на n.
Возвращаемое значение
Возвращает true в случае успеха, иначе false в случае ошибки.
Примечание
Если reduced = true
При m >= n матрица Q имеет размер m на n, матрица R — n на n.
При m < n матрица Q имеет размер m на m, матрица R — m на n.
Если параметр reduced = false, матрица Q имеет размер m на m, а матрица R — m на n.