QR decomposition with constrained diagonal phases (Lapack interface)

バージョン 1.3.0.0 (21.6 KB) 作成者: Sung-Eun Jo
The code computes the QR decomposition with specific diagonal phases.
ダウンロード: 572
更新 2014/9/22

ライセンスの表示

Matlab provides QR decomposition routines based on Lapack subroutines ZGEQRF/ZGEQPF and ZUNGQR. Such routines make the diagonal entries be real.
For general diagonal conditions, this code 'qr_lapack' supports that any given diagonal complex phases are allowed in QR decomposition such as all non-negative, the same as in the original matrix A, or any others. For example,
DIAG_VEC = diag(A);
[Q, R] = qr_lapack (A, ECON, DIAG_VEC);
This code accesses Lapack routines directly, not using matlab command qr. After QR decomposion based on Lapack, Q and R are recomputed to have specific phases of the diagonal entries of R.
There are other sample codes for specific tests:
* qr_diag_pos.m: QR making diagonal positive real.
* qr_diag_phase.m: QR making the same diagonal phases as in A.
* qr_diag_arg.m: another implementation using argment measure.

Note that qr_lapack.m uses the code in qr_diag_phase.m for control the diagonal phases.

qrd.m file provides options to select user subroutines among qr_lapack, qr_diag_pos, qr or others. Now we can use:
[Q, R] = qrd (A, ECON, DIAG_VEC);

test_qrd.m is for usage examples.

For fat matrices, it computes the LQ decomposition of A = L*Q, where A' = Q'*L' and [L,Q] = qr_lapack (A).

引用

Sung-Eun Jo (2026). QR decomposition with constrained diagonal phases (Lapack interface) (https://jp.mathworks.com/matlabcentral/fileexchange/47875-qr-decomposition-with-constrained-diagonal-phases-lapack-interface), MATLAB Central File Exchange. 取得日: .

MATLAB リリースの互換性
作成: R2013a
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersOperating on Diagonal Matrices についてさらに検索
タグ タグを追加
バージョン 公開済み リリース ノート
1.3.0.0

revised qr_diag_arg.m by using sind and cosd functions.

1.2.0.0

updated comments.

1.1.0.0

added LQ decomposition for fat matrices.
added qrd.m for multiple routine options.
added test_qrd.m for usage exmples for qrd.m

1.0.0.0