Skip to content

Commit 23cda45

Browse files
authored
Implement truncated QR with pivoting (Reference-LAPACK PR 891)
1 parent d36b86a commit 23cda45

13 files changed

Lines changed: 11006 additions & 1 deletion

File tree

lapack-netlib/SRC/cgeqp3rk.f

Lines changed: 1091 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/claqp2rk.f

Lines changed: 726 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/claqp3rk.f

Lines changed: 947 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/dgeqp3rk.f

Lines changed: 1081 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/dlaqp2rk.f

Lines changed: 713 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/dlaqp3rk.f

Lines changed: 935 additions & 0 deletions
Large diffs are not rendered by default.

lapack-netlib/SRC/ilaenv.f

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@
132132
*> \author Univ. of Colorado Denver
133133
*> \author NAG Ltd.
134134
*
135-
*> \ingroup OTHERauxiliary
135+
*> \ingroup ilaenv
136136
*
137137
*> \par Further Details:
138138
* =====================
@@ -355,6 +355,12 @@ INTEGER FUNCTION ILAENV( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
355355
ELSE
356356
NB = 64
357357
END IF
358+
ELSE IF( SUBNAM( 4: 7 ).EQ.'QP3RK' ) THEN
359+
IF( SNAME ) THEN
360+
NB = 32
361+
ELSE
362+
NB = 32
363+
END IF
358364
END IF
359365
ELSE IF( C2.EQ.'PO' ) THEN
360366
IF( C3.EQ.'TRF' ) THEN
@@ -541,7 +547,14 @@ INTEGER FUNCTION ILAENV( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
541547
ELSE
542548
NBMIN = 2
543549
END IF
550+
ELSE IF( SUBNAM( 4: 7 ).EQ.'QP3RK' ) THEN
551+
IF( SNAME ) THEN
552+
NBMIN = 2
553+
ELSE
554+
NBMIN = 2
555+
END IF
544556
END IF
557+
545558
ELSE IF( C2.EQ.'SY' ) THEN
546559
IF( C3.EQ.'TRF' ) THEN
547560
IF( SNAME ) THEN
@@ -618,6 +631,12 @@ INTEGER FUNCTION ILAENV( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
618631
ELSE
619632
NX = 128
620633
END IF
634+
ELSE IF( SUBNAM( 4: 7 ).EQ.'QP3RK' ) THEN
635+
IF( SNAME ) THEN
636+
NX = 128
637+
ELSE
638+
NX = 128
639+
END IF
621640
END IF
622641
ELSE IF( C2.EQ.'SY' ) THEN
623642
IF( SNAME .AND. C3.EQ.'TRD' ) THEN

0 commit comments

Comments
 (0)