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

◆ slar2v()

subroutine slar2v ( integer n,
real, dimension( * ) x,
real, dimension( * ) y,
real, dimension( * ) z,
integer incx,
real, dimension( * ) c,
real, dimension( * ) s,
integer incc )

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

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

Purpose:
!>
!> SLAR2V applies a vector of real plane rotations from both sides to
!> a sequence of 2-by-2 real symmetric matrices, defined by the elements
!> of the vectors x, y and z. For i = 1,2,...,n
!>
!>    ( x(i)  z(i) ) := (  c(i)  s(i) ) ( x(i)  z(i) ) ( c(i) -s(i) )
!>    ( z(i)  y(i) )    ( -s(i)  c(i) ) ( 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 REAL array,
!>                         dimension (1+(N-1)*INCX)
!>          The vector x.
!> 
[in,out]Y
!>          Y is REAL array,
!>                         dimension (1+(N-1)*INCX)
!>          The vector y.
!> 
[in,out]Z
!>          Z is REAL 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 REAL 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.

Definition at line 107 of file slar2v.f.

108*
109* -- LAPACK auxiliary routine --
110* -- LAPACK is a software package provided by Univ. of Tennessee, --
111* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
112*
113* .. Scalar Arguments ..
114 INTEGER INCC, INCX, N
115* ..
116* .. Array Arguments ..
117 REAL C( * ), S( * ), X( * ), Y( * ), Z( * )
118* ..
119*
120* =====================================================================
121*
122* .. Local Scalars ..
123 INTEGER I, IC, IX
124 REAL CI, SI, T1, T2, T3, T4, T5, T6, XI, YI, ZI
125* ..
126* .. Executable Statements ..
127*
128 ix = 1
129 ic = 1
130 DO 10 i = 1, n
131 xi = x( ix )
132 yi = y( ix )
133 zi = z( ix )
134 ci = c( ic )
135 si = s( ic )
136 t1 = si*zi
137 t2 = ci*zi
138 t3 = t2 - si*xi
139 t4 = t2 + si*yi
140 t5 = ci*xi + t1
141 t6 = ci*yi - t1
142 x( ix ) = ci*t5 + si*t4
143 y( ix ) = ci*t6 - si*t3
144 z( ix ) = ci*t4 - si*t5
145 ix = ix + incx
146 ic = ic + incc
147 10 CONTINUE
148*
149* End of SLAR2V
150*
151 RETURN
Here is the caller graph for this function: