next up previous contents
Next: quit Up: リファレンスマニュアル Previous: qr

  
qr_p

【目的】
qr_p - 並べ替え付きQR分解
【形式】
{Q,R,P} = qr_p(A)
   Matrix Q,R,P;
   Matrix A;
【詳細】
qr_p()は,行列 A の並べ替え付きQR分解を求める。この分解は, 正方行列にも非正方行列にも行える。 {Q,R,P} = qr_p(A)は,A と同じ大きさの上三角行列 R と直交行列 (ユニタリ行列) Q,置換行列 P を求める。これらの行列の間には, A * P = Q * R,Q# * Q = I の関係がある。上三角行列 R の対角成分 は,減少する順に並べられる。
【算法】
文献 1 の算法を使う。
【例題】
4 * 3 の行列 A の並べ替え付きQR分解を求める。
>> A = [[1 2 3][4 5 6][7 8 9][10 11 12]];
>> {Q,R} = qr_p(A);
>> print Q,R,P;
=== [Q] : (  4,  4) ===
           (  1)         (  2)         (  3)         (  4)     
(  1) -1.825741E-01 -8.164965E-01  3.471390E-01 -4.236678E-01
(  2) -3.651483E-01 -4.082482E-01 -1.470686E-01  8.236326E-01
(  3) -5.477225E-01 -4.996003E-16 -7.472798E-01 -3.762617E-01
(  4) -7.302967E-01  4.082482E-01  5.472094E-01 -2.370309E-02
=== [R] : (  4,  3) ===
           (  1)         (  2)         (  3)     
(  1) -1.643167E+01 -1.278019E+01 -1.460593E+01
(  2)  0.000000E+00  1.632993E+00  8.164965E-01
(  3)  0.000000E+00  0.000000E+00  8.400361E-16
(  4)  0.000000E+00  0.000000E+00  0.000000E+00
=== [P] : (  3,  3) ===
           (  1)         (  2)         (  3)     
(  1)  0.000000E+00  1.000000E+00  0.000000E+00
(  2)  0.000000E+00  0.000000E+00  1.000000E+00
(  3)  1.000000E+00  0.000000E+00  0.000000E+00
【参照】
hess(2.91), qr(2.168), qz(2.171)
【参考文献】
1.
Gene H. Golub and Charles F. Van Loan. Matrix Computations. The Johns Hopkins University Press, 1989


Masanobu KOGA 平成11年10月2日