Purpose
=======
DLAQPS computes a step of QR factorization with column pivoting
of a real M-by-N matrix A by using Blas-3. It tries to factorize
NB columns from A starting from the row OFFSET+1, and updates all
of the matrix with Blas-3 xGEMM.
In some cases, due to catastrophic cancellations, it cannot
factorize NB columns. Hence, the actual number of factorized
columns is returned in KB.
Block A(1:OFFSET,1:N) is accordingly pivoted, but not factorized.
Namespace: DotNumerics.LinearAlgebra.CSLapackAssembly: DWSIM.MathOps.DotNumerics (in DWSIM.MathOps.DotNumerics.dll) Version: 1.0.0.0 (1.0.0.0)
Syntax public void Run(
int M,
int N,
int OFFSET,
int NB,
ref int KB,
ref double[] A,
int offset_a,
int LDA,
ref int[] JPVT,
int offset_jpvt,
ref double[] TAU,
int offset_tau,
ref double[] VN1,
int offset_vn1,
ref double[] VN2,
int offset_vn2,
ref double[] AUXV,
int offset_auxv,
ref double[] F,
int offset_f,
int LDF
)
Public Sub Run (
M As Integer,
N As Integer,
OFFSET As Integer,
NB As Integer,
ByRef KB As Integer,
ByRef A As Double(),
offset_a As Integer,
LDA As Integer,
ByRef JPVT As Integer(),
offset_jpvt As Integer,
ByRef TAU As Double(),
offset_tau As Integer,
ByRef VN1 As Double(),
offset_vn1 As Integer,
ByRef VN2 As Double(),
offset_vn2 As Integer,
ByRef AUXV As Double(),
offset_auxv As Integer,
ByRef F As Double(),
offset_f As Integer,
LDF As Integer
)
Request Example
View SourceParameters
- M Int32
-
(input) INTEGER
The number of rows of the matrix A. M .GE. 0.
- N Int32
-
(input) INTEGER
The number of columns of the matrix A. N .GE. 0
- OFFSET Int32
-
(input) INTEGER
The number of rows of A that have been factorized in
previous steps.
- NB Int32
-
(input) INTEGER
The number of columns to factorize.
- KB Int32
-
(output) INTEGER
The number of columns actually factorized.
- A Double
-
(input/output) DOUBLE PRECISION array, dimension (LDA,N)
On entry, the M-by-N matrix A.
On exit, block A(OFFSET+1:M,1:KB) is the triangular
factor obtained and block A(1:OFFSET,1:N) has been
accordingly pivoted, but no factorized.
The rest of the matrix, block A(OFFSET+1:M,KB+1:N) has
been updated.
- offset_a Int32
-
- LDA Int32
-
(input) INTEGER
The leading dimension of the array A. LDA .GE. max(1,M).
- JPVT Int32
-
(input/output) INTEGER array, dimension (N)
JPVT(I) = K .LE.=.GT. Column K of the full matrix A has been
permuted into position I in AP.
- offset_jpvt Int32
-
- TAU Double
-
(output) DOUBLE PRECISION array, dimension (KB)
The scalar factors of the elementary reflectors.
- offset_tau Int32
-
- VN1 Double
-
(input/output) DOUBLE PRECISION array, dimension (N)
The vector with the partial column norms.
- offset_vn1 Int32
-
- VN2 Double
-
(input/output) DOUBLE PRECISION array, dimension (N)
The vector with the exact column norms.
- offset_vn2 Int32
-
- AUXV Double
-
(input/output) DOUBLE PRECISION array, dimension (NB)
Auxiliar vector.
- offset_auxv Int32
-
- F Double
-
(input/output) DOUBLE PRECISION array, dimension (LDF,NB)
Matrix F' = L*Y'*A.
- offset_f Int32
-
- LDF Int32
-
(input) INTEGER
The leading dimension of the array F. LDF .GE. max(1,N).
See Also