QR decomposition with constrained diagonal phases (Lapack interface)
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).
Zitieren als
Sung-Eun Jo (2024). QR decomposition with constrained diagonal phases (Lapack interface) (https://www.mathworks.com/matlabcentral/fileexchange/47875-qr-decomposition-with-constrained-diagonal-phases-lapack-interface), MATLAB Central File Exchange. Abgerufen .
Kompatibilität der MATLAB-Version
Plattform-Kompatibilität
Windows macOS LinuxKategorien
Tags
Quellenangaben
Inspiriert von: lapack, Bidiagonalization of a matrix based on Lapack interface
Inspiriert: Trigonometric function errors at pi or pi/2 such as sin(pi) or cos(pi/2)
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
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.
|
||
1.0.0.0 |