LAPACK  3.6.1
LAPACK: Linear Algebra PACKage
subroutine clar2v ( integer  N,
complex, dimension( * )  X,
complex, dimension( * )  Y,
complex, dimension( * )  Z,
integer  INCX,
real, dimension( * )  C,
complex, dimension( * )  S,
integer  INCC 
)

CLAR2V applies a vector of plane rotations with real cosines and complex sines from both sides to a sequence of 2-by-2 symmetric/Hermitian matrices.

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

Purpose:
 CLAR2V applies a vector of complex plane rotations with real cosines
 from both sides to a sequence of 2-by-2 complex Hermitian matrices,
 defined by the elements of the vectors x, y and z. For i = 1,2,...,n

    (       x(i)  z(i) ) :=
    ( conjg(z(i)) y(i) )

      (  c(i) conjg(s(i)) ) (       x(i)  z(i) ) ( c(i) -conjg(s(i)) )
      ( -s(i)       c(i)  ) ( conjg(z(i)) y(i) ) ( s(i)        c(i)  )
Parameters
[in]N
          N is INTEGER
          The number of plane rotations to be applied.
[in,out]X
          X is COMPLEX array, dimension (1+(N-1)*INCX)
          The vector x; the elements of x are assumed to be real.
[in,out]Y
          Y is COMPLEX array, dimension (1+(N-1)*INCX)
          The vector y; the elements of y are assumed to be real.
[in,out]Z
          Z is COMPLEX array, dimension (1+(N-1)*INCX)
          The vector z.
[in]INCX
          INCX is INTEGER
          The increment between elements of X, Y and Z. INCX > 0.
[in]C
          C is REAL array, dimension (1+(N-1)*INCC)
          The cosines of the plane rotations.
[in]S
          S is COMPLEX array, dimension (1+(N-1)*INCC)
          The sines of the plane rotations.
[in]INCC
          INCC is INTEGER
          The increment between elements of C and S. INCC > 0.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
September 2012

Definition at line 113 of file clar2v.f.

113 *
114 * -- LAPACK auxiliary routine (version 3.4.2) --
115 * -- LAPACK is a software package provided by Univ. of Tennessee, --
116 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
117 * September 2012
118 *
119 * .. Scalar Arguments ..
120  INTEGER incc, incx, n
121 * ..
122 * .. Array Arguments ..
123  REAL c( * )
124  COMPLEX s( * ), x( * ), y( * ), z( * )
125 * ..
126 *
127 * =====================================================================
128 *
129 * .. Local Scalars ..
130  INTEGER i, ic, ix
131  REAL ci, sii, sir, t1i, t1r, t5, t6, xi, yi, zii,
132  $ zir
133  COMPLEX si, t2, t3, t4, zi
134 * ..
135 * .. Intrinsic Functions ..
136  INTRINSIC aimag, cmplx, conjg, real
137 * ..
138 * .. Executable Statements ..
139 *
140  ix = 1
141  ic = 1
142  DO 10 i = 1, n
143  xi = REAL( X( IX ) )
144  yi = REAL( Y( IX ) )
145  zi = z( ix )
146  zir = REAL( zi )
147  zii = aimag( zi )
148  ci = c( ic )
149  si = s( ic )
150  sir = REAL( si )
151  sii = aimag( si )
152  t1r = sir*zir - sii*zii
153  t1i = sir*zii + sii*zir
154  t2 = ci*zi
155  t3 = t2 - conjg( si )*xi
156  t4 = conjg( t2 ) + si*yi
157  t5 = ci*xi + t1r
158  t6 = ci*yi - t1r
159  x( ix ) = ci*t5 + ( sir*REAL( t4 )+sii*aimag( t4 ) )
160  y( ix ) = ci*t6 - ( sir*REAL( t3 )-sii*aimag( t3 ) )
161  z( ix ) = ci*t3 + conjg( si )*cmplx( t6, t1i )
162  ix = ix + incx
163  ic = ic + incc
164  10 CONTINUE
165  RETURN
166 *
167 * End of CLAR2V
168 *

Here is the caller graph for this function: