diff options
author | Julien Langou <julien.langou@ucdenver.edu> | 2016-11-03 08:48:54 +0100 |
---|---|---|
committer | Julien Langou <julien.langou@ucdenver.edu> | 2016-11-03 08:48:54 +0100 |
commit | bbff7393714b29a6ff70e8c1565784cb16a0e746 (patch) | |
tree | 146d4bc89db9148abc4b19e2e453623f1a6c7bbe /SRC/cgeqr.f | |
parent | bd47060bcb3a470520622de69ac1426ca4186f5e (diff) | |
download | lapack-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.f | 78 |
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 |