LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ zlag2c()

subroutine zlag2c ( integer  m,
integer  n,
complex*16, dimension( lda, * )  a,
integer  lda,
complex, dimension( ldsa, * )  sa,
integer  ldsa,
integer  info 
)

ZLAG2C converts a complex double precision matrix to a complex single precision matrix.

Download ZLAG2C + dependencies [TGZ] [ZIP] [TXT]

Purpose:
 ZLAG2C converts a COMPLEX*16 matrix, SA, to a COMPLEX matrix, A.

 RMAX is the overflow for the SINGLE PRECISION arithmetic
 ZLAG2C checks that all the entries of A are between -RMAX and
 RMAX. If not the conversion is aborted and a flag is raised.

 This is an auxiliary routine so there is no argument checking.
Parameters
[in]M
          M is INTEGER
          The number of lines of the matrix A.  M >= 0.
[in]N
          N is INTEGER
          The number of columns of the matrix A.  N >= 0.
[in]A
          A is COMPLEX*16 array, dimension (LDA,N)
          On entry, the M-by-N coefficient matrix A.
[in]LDA
          LDA is INTEGER
          The leading dimension of the array A.  LDA >= max(1,M).
[out]SA
          SA is COMPLEX array, dimension (LDSA,N)
          On exit, if INFO=0, the M-by-N coefficient matrix SA; if
          INFO>0, the content of SA is unspecified.
[in]LDSA
          LDSA is INTEGER
          The leading dimension of the array SA.  LDSA >= max(1,M).
[out]INFO
          INFO is INTEGER
          = 0:  successful exit.
          = 1:  an entry of the matrix A is greater than the SINGLE
                PRECISION overflow threshold, in this case, the content
                of SA in exit is unspecified.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 106 of file zlag2c.f.

107*
108* -- LAPACK auxiliary routine --
109* -- LAPACK is a software package provided by Univ. of Tennessee, --
110* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
111*
112* .. Scalar Arguments ..
113 INTEGER INFO, LDA, LDSA, M, N
114* ..
115* .. Array Arguments ..
116 COMPLEX SA( LDSA, * )
117 COMPLEX*16 A( LDA, * )
118* ..
119*
120* =====================================================================
121*
122* .. Local Scalars ..
123 INTEGER I, J
124 DOUBLE PRECISION RMAX
125* ..
126* .. Intrinsic Functions ..
127 INTRINSIC dble, dimag, cmplx
128* ..
129* .. External Functions ..
130 REAL SLAMCH
131 EXTERNAL slamch
132* ..
133* .. Executable Statements ..
134*
135 rmax = slamch( 'O' )
136 DO 20 j = 1, n
137 DO 10 i = 1, m
138 IF( ( dble( a( i, j ) ).LT.-rmax ) .OR.
139 $ ( dble( a( i, j ) ).GT.rmax ) .OR.
140 $ ( dimag( a( i, j ) ).LT.-rmax ) .OR.
141 $ ( dimag( a( i, j ) ).GT.rmax ) ) THEN
142 info = 1
143 GO TO 30
144 END IF
145 sa( i, j ) = cmplx( a( i, j ) )
146 10 CONTINUE
147 20 CONTINUE
148 info = 0
149 30 CONTINUE
150 RETURN
151*
152* End of ZLAG2C
153*
real function slamch(cmach)
SLAMCH
Definition slamch.f:68
Here is the caller graph for this function: