1*> \brief \b CLACP2 copies all or part of a real two-dimensional array to a complex array. 2* 3* =========== DOCUMENTATION =========== 4* 5* Online html documentation available at 6* http://www.netlib.org/lapack/explore-html/ 7* 8*> \htmlonly 9*> Download CLACP2 + dependencies 10*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/clacp2.f"> 11*> [TGZ]</a> 12*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/clacp2.f"> 13*> [ZIP]</a> 14*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/clacp2.f"> 15*> [TXT]</a> 16*> \endhtmlonly 17* 18* Definition: 19* =========== 20* 21* SUBROUTINE CLACP2( UPLO, M, N, A, LDA, B, LDB ) 22* 23* .. Scalar Arguments .. 24* CHARACTER UPLO 25* INTEGER LDA, LDB, M, N 26* .. 27* .. Array Arguments .. 28* REAL A( LDA, * ) 29* COMPLEX B( LDB, * ) 30* .. 31* 32* 33*> \par Purpose: 34* ============= 35*> 36*> \verbatim 37*> 38*> CLACP2 copies all or part of a real two-dimensional matrix A to a 39*> complex matrix B. 40*> \endverbatim 41* 42* Arguments: 43* ========== 44* 45*> \param[in] UPLO 46*> \verbatim 47*> UPLO is CHARACTER*1 48*> Specifies the part of the matrix A to be copied to B. 49*> = 'U': Upper triangular part 50*> = 'L': Lower triangular part 51*> Otherwise: All of the matrix A 52*> \endverbatim 53*> 54*> \param[in] M 55*> \verbatim 56*> M is INTEGER 57*> The number of rows of the matrix A. M >= 0. 58*> \endverbatim 59*> 60*> \param[in] N 61*> \verbatim 62*> N is INTEGER 63*> The number of columns of the matrix A. N >= 0. 64*> \endverbatim 65*> 66*> \param[in] A 67*> \verbatim 68*> A is REAL array, dimension (LDA,N) 69*> The m by n matrix A. If UPLO = 'U', only the upper trapezium 70*> is accessed; if UPLO = 'L', only the lower trapezium is 71*> accessed. 72*> \endverbatim 73*> 74*> \param[in] LDA 75*> \verbatim 76*> LDA is INTEGER 77*> The leading dimension of the array A. LDA >= max(1,M). 78*> \endverbatim 79*> 80*> \param[out] B 81*> \verbatim 82*> B is COMPLEX array, dimension (LDB,N) 83*> On exit, B = A in the locations specified by UPLO. 84*> \endverbatim 85*> 86*> \param[in] LDB 87*> \verbatim 88*> LDB is INTEGER 89*> The leading dimension of the array B. LDB >= max(1,M). 90*> \endverbatim 91* 92* Authors: 93* ======== 94* 95*> \author Univ. of Tennessee 96*> \author Univ. of California Berkeley 97*> \author Univ. of Colorado Denver 98*> \author NAG Ltd. 99* 100*> \ingroup complexOTHERauxiliary 101* 102* ===================================================================== 103 SUBROUTINE CLACP2( UPLO, M, N, A, LDA, B, LDB ) 104* 105* -- LAPACK auxiliary routine -- 106* -- LAPACK is a software package provided by Univ. of Tennessee, -- 107* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 108* 109* .. Scalar Arguments .. 110 CHARACTER UPLO 111 INTEGER LDA, LDB, M, N 112* .. 113* .. Array Arguments .. 114 REAL A( LDA, * ) 115 COMPLEX B( LDB, * ) 116* .. 117* 118* ===================================================================== 119* 120* .. Local Scalars .. 121 INTEGER I, J 122* .. 123* .. External Functions .. 124 LOGICAL LSAME 125 EXTERNAL LSAME 126* .. 127* .. Intrinsic Functions .. 128 INTRINSIC MIN 129* .. 130* .. Executable Statements .. 131* 132 IF( LSAME( UPLO, 'U' ) ) THEN 133 DO 20 J = 1, N 134 DO 10 I = 1, MIN( J, M ) 135 B( I, J ) = A( I, J ) 136 10 CONTINUE 137 20 CONTINUE 138* 139 ELSE IF( LSAME( UPLO, 'L' ) ) THEN 140 DO 40 J = 1, N 141 DO 30 I = J, M 142 B( I, J ) = A( I, J ) 143 30 CONTINUE 144 40 CONTINUE 145* 146 ELSE 147 DO 60 J = 1, N 148 DO 50 I = 1, M 149 B( I, J ) = A( I, J ) 150 50 CONTINUE 151 60 CONTINUE 152 END IF 153* 154 RETURN 155* 156* End of CLACP2 157* 158 END 159