slicot_mb04gd

RQ factorization with row pivoting of a matrix.

Syntax

  • [A_OUT, JPVT_OUT, TAU, INFO] = slicot_mb04gd(A_IN, JPVT_IN)

Input argument

  • A_IN - The m-by-n matrix A.

  • JPVT_IN - if JPVT(i) .ne. 0, the i-th row of A is permuted to the bottom of P*A (a trailing row); if JPVT(i) = 0, the i-th row of A is a free row.

Output argument

  • A_OUT - if m less or equal than n, the upper triangle of the subarray A(1:m,n-m+1:n) contains the m-by-m upper triangular matrix R; if m greater or equal than n, the elements on and above the (m-n)-th subdiagonal contain the m-by-n upper trapezoidal matrix R; the remaining elements, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors

  • JPVT_OUT - if JPVT(i) = k, then the i-th row of P*A was the k-th row of A.

  • TAU - The scalar factors of the elementary reflectors.

  • INFO - = 0: successful exit.

Description

To compute an RQ factorization with row pivoting of a real m-by-n matrix A: P * A = R * Q.

Used function(s)

MB04GD

Bibliography

http://slicot.org/objects/software/shared/doc/MB04GD.html

Example

M = 6;
N = 5;
A_IN = [1.    2.    6.    3.    5.;
  -2.   -1.   -1.    0.   -2.;
   5.    5.    1.    5.    1.;
  -2.   -1.   -1.    0.   -2.;
   4.    8.    4.   20.    4.;
  -2.   -1.   -1.    0.   -2.];
JPVT_IN = zeros(1, M);
[A_OUT, JPVT_OUT, TAU, INFO] = slicot_mb04gd(A_IN, JPVT_IN)

History

Version
Description

1.0.0

initial version

Author

SLICOT Documentation

Last updated