summaryrefslogtreecommitdiff
path: root/SRC/cgeqr.f
diff options
context:
space:
mode:
authorJulien Langou <julien.langou@ucdenver.edu>2016-11-03 08:48:54 +0100
committerJulien Langou <julien.langou@ucdenver.edu>2016-11-03 08:48:54 +0100
commitbbff7393714b29a6ff70e8c1565784cb16a0e746 (patch)
tree146d4bc89db9148abc4b19e2e453623f1a6c7bbe /SRC/cgeqr.f
parentbd47060bcb3a470520622de69ac1426ca4186f5e (diff)
downloadlapack-bbff7393714b29a6ff70e8c1565784cb16a0e746.tar.gz
lapack-bbff7393714b29a6ff70e8c1565784cb16a0e746.tar.bz2
lapack-bbff7393714b29a6ff70e8c1565784cb16a0e746.zip
Lots of trailing whitespaces in the files of Syd. Cleaning this. No big deal.
Diffstat (limited to 'SRC/cgeqr.f')
-rw-r--r--SRC/cgeqr.f78
1 files changed, 39 insertions, 39 deletions
diff --git a/SRC/cgeqr.f b/SRC/cgeqr.f
index c5151408..330fda5c 100644
--- a/SRC/cgeqr.f
+++ b/SRC/cgeqr.f
@@ -1,26 +1,26 @@
-*
+*
* Definition:
* ===========
*
* SUBROUTINE CGEQR( M, N, A, LDA, WORK1, LWORK1, WORK2, LWORK2,
* INFO)
-*
+*
* .. Scalar Arguments ..
* INTEGER INFO, LDA, M, N, LWORK1, LWORK2
* ..
* .. Array Arguments ..
* COMPLEX A( LDA, * ), WORK1( * ), WORK2( * )
* ..
-*
+*
*
*> \par Purpose:
* =============
*>
*> \verbatim
-*>
-*> CGEQR computes a QR factorization of an M-by-N matrix A,
-*> using CLATSQR when A is tall and skinny
-*> (M sufficiently greater than N), and otherwise CGEQRT:
+*>
+*> CGEQR computes a QR factorization of an M-by-N matrix A,
+*> using CLATSQR when A is tall and skinny
+*> (M sufficiently greater than N), and otherwise CGEQRT:
*> A = Q * R .
*> \endverbatim
*
@@ -44,7 +44,7 @@
*> A is COMPLEX array, dimension (LDA,N)
*> On entry, the M-by-N matrix A.
*> On exit, the elements on and above the diagonal of the array
-*> contain the min(M,N)-by-N upper trapezoidal matrix R
+*> contain the min(M,N)-by-N upper trapezoidal matrix R
*> (R is upper triangular if M >= N);
*> the elements below the diagonal represent Q (see Further Details).
*> \endverbatim
@@ -59,13 +59,13 @@
*> \verbatim
*> WORK1 is COMPLEX array, dimension (MAX(1,LWORK1))
*> WORK1 contains part of the data structure used to store Q.
-*> WORK1(1): algorithm type = 1, to indicate output from
+*> WORK1(1): algorithm type = 1, to indicate output from
*> CLATSQR or CGEQRT
*> WORK1(2): optimum size of WORK1
*> WORK1(3): minimum size of WORK1
*> WORK1(4): row block size
*> WORK1(5): column block size
-*> WORK1(6:LWORK1): data structure needed for Q, computed by
+*> WORK1(6:LWORK1): data structure needed for Q, computed by
*> CLATSQR or CGEQRT
*> \endverbatim
*>
@@ -73,25 +73,25 @@
*> \verbatim
*> LWORK1 is INTEGER
*> The dimension of the array WORK1.
-*> If LWORK1 = -1, then a query is assumed. In this case the
+*> If LWORK1 = -1, then a query is assumed. In this case the
*> routine calculates the optimal size of WORK1 and
-*> returns this value in WORK1(2), and calculates the minimum
-*> size of WORK1 and returns this value in WORK1(3).
-*> No error message related to LWORK1 is issued by XERBLA when
+*> returns this value in WORK1(2), and calculates the minimum
+*> size of WORK1 and returns this value in WORK1(3).
+*> No error message related to LWORK1 is issued by XERBLA when
*> LWORK1 = -1.
*> \endverbatim
*>
*> \param[out] WORK2
*> \verbatim
-*> (workspace) COMPLEX array, dimension (MAX(1,LWORK2))
+*> (workspace) COMPLEX array, dimension (MAX(1,LWORK2))
*> \endverbatim
*>
*> \param[in] LWORK2
*> \verbatim
*> LWORK2 is INTEGER
*> The dimension of the array WORK2.
-*> If LWORK2 = -1, then a query is assumed. In this case the
-*> routine calculates the optimal size of WORK2 and
+*> If LWORK2 = -1, then a query is assumed. In this case the
+*> routine calculates the optimal size of WORK2 and
*> returns this value in WORK2(1), and calculates the minimum
*> size of WORK2 and returns this value in WORK2(2).
*> No error message related to LWORK2 is issued by XERBLA when
@@ -120,19 +120,19 @@
*> Depending on the matrix dimensions M and N, and row and column
*> block sizes MB and NB returned by ILAENV, GEQR will use either
*> LATSQR (if the matrix is tall-and-skinny) or GEQRT to compute
-*> the QR decomposition.
+*> the QR decomposition.
*> The output of LATSQR or GEQRT representing Q is stored in A and in
-*> array WORK1(6:LWORK1) for later use.
-*> WORK1(2:5) contains the matrix dimensions M,N and block sizes MB,NB
-*> which are needed to interpret A and WORK1(6:LWORK1) for later use.
-*> WORK1(1)=1 indicates that the code needed to take WORK1(2:5) and
-*> decide whether LATSQR or GEQRT was used is the same as used below in
+*> array WORK1(6:LWORK1) for later use.
+*> WORK1(2:5) contains the matrix dimensions M,N and block sizes MB,NB
+*> which are needed to interpret A and WORK1(6:LWORK1) for later use.
+*> WORK1(1)=1 indicates that the code needed to take WORK1(2:5) and
+*> decide whether LATSQR or GEQRT was used is the same as used below in
*> GEQR. For a detailed description of A and WORK1(6:LWORK1), see
*> Further Details in LATSQR or GEQRT.
*> \endverbatim
*>
* =====================================================================
- SUBROUTINE CGEQR( M, N, A, LDA, WORK1, LWORK1, WORK2, LWORK2,
+ SUBROUTINE CGEQR( M, N, A, LDA, WORK1, LWORK1, WORK2, LWORK2,
$ INFO)
*
* -- LAPACK computational routine (version 3.5.0) --
@@ -174,8 +174,8 @@
*
LQUERY = ( LWORK1.EQ.-1 .OR. LWORK2.EQ.-1 )
*
-* Determine the block size
-*
+* Determine the block size
+*
IF ( MIN(M,N).GT.0 ) THEN
MB = ILAENV( 1, 'CGEQR ', ' ', M, N, 1, -1)
NB = ILAENV( 1, 'CGEQR ', ' ', M, N, 2, -1)
@@ -197,18 +197,18 @@
END IF
*
* Determine if the workspace size satisfies minimum size
-*
+*
LMINWS = .FALSE.
- IF((LWORK1.LT.MAX(1, NB*N*NBLCKS+5)
- $ .OR.(LWORK2.LT.NB*N)).AND.(LWORK2.GE.N).AND.(LWORK1.GT.N+5)
+ IF((LWORK1.LT.MAX(1, NB*N*NBLCKS+5)
+ $ .OR.(LWORK2.LT.NB*N)).AND.(LWORK2.GE.N).AND.(LWORK1.GT.N+5)
$ .AND.(.NOT.LQUERY)) THEN
IF (LWORK1.LT.MAX(1, NB * N * NBLCKS+5)) THEN
LMINWS = .TRUE.
NB = 1
- END IF
+ END IF
IF (LWORK1.LT.MAX(1, N * NBLCKS+5)) THEN
LMINWS = .TRUE.
- MB = M
+ MB = M
END IF
IF (LWORK2.LT.NB*N) THEN
LMINWS = .TRUE.
@@ -222,13 +222,13 @@
INFO = -2
ELSE IF( LDA.LT.MAX( 1, M ) ) THEN
INFO = -4
- ELSE IF( LWORK1.LT.MAX( 1, NB * N * NBLCKS + 5 )
+ ELSE IF( LWORK1.LT.MAX( 1, NB * N * NBLCKS + 5 )
$ .AND.(.NOT.LQUERY).AND.(.NOT.LMINWS)) THEN
INFO = -6
- ELSE IF( (LWORK2.LT.MAX(1,N*NB)).AND.(.NOT.LQUERY)
+ ELSE IF( (LWORK2.LT.MAX(1,N*NB)).AND.(.NOT.LQUERY)
$ .AND.(.NOT.LMINWS)) THEN
- INFO = -8
- END IF
+ INFO = -8
+ END IF
*
IF( INFO.EQ.0) THEN
WORK1(1) = 1
@@ -257,12 +257,12 @@
IF((M.LE.N).OR.(MB.LE.N).OR.(MB.GE.M)) THEN
CALL CGEQRT( M, N, NB, A, LDA, WORK1(6), NB, WORK2, INFO)
RETURN
- ELSE
- CALL CLATSQR( M, N, MB, NB, A, LDA, WORK1(6), NB, WORK2,
+ ELSE
+ CALL CLATSQR( M, N, MB, NB, A, LDA, WORK1(6), NB, WORK2,
$ LWORK2, INFO)
END IF
RETURN
-*
+*
* End of CGEQR
*
- END \ No newline at end of file
+ END