LAPACK 3.11.0 LAPACK: Linear Algebra PACKage
Searching...
No Matches

## ◆ clarscl2()

 subroutine clarscl2 ( integer M, integer N, real, dimension( * ) D, complex, dimension( ldx, * ) X, integer LDX )

CLARSCL2 performs reciprocal diagonal scaling on a matrix.

Purpose:
``` CLARSCL2 performs a reciprocal diagonal scaling on a matrix:
x <-- inv(D) * x
where the REAL diagonal matrix D is stored as a vector.

Eventually to be replaced by BLAS_cge_diag_scale in the new BLAS
standard.```
Parameters
 [in] M ``` M is INTEGER The number of rows of D and X. M >= 0.``` [in] N ``` N is INTEGER The number of columns of X. N >= 0.``` [in] D ``` D is REAL array, length M Diagonal matrix D, stored as a vector of length M.``` [in,out] X ``` X is COMPLEX array, dimension (LDX,N) On entry, the matrix X to be scaled by D. On exit, the scaled matrix.``` [in] LDX ``` LDX is INTEGER The leading dimension of the matrix X. LDX >= M.```

Definition at line 90 of file clarscl2.f.

91*
92* -- LAPACK computational routine --
93* -- LAPACK is a software package provided by Univ. of Tennessee, --
94* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
95*
96* .. Scalar Arguments ..
97 INTEGER M, N, LDX
98* ..
99* .. Array Arguments ..
100 COMPLEX X( LDX, * )
101 REAL D( * )
102* ..
103*
104* =====================================================================
105*
106* .. Local Scalars ..
107 INTEGER I, J
108* ..
109* .. Executable Statements ..
110*
111 DO j = 1, n
112 DO i = 1, m
113 x( i, j ) = x( i, j ) / d( i )
114 END DO
115 END DO
116
117 RETURN