01:       SUBROUTINE DLARTV( N, X, INCX, Y, INCY, C, S, INCC )
02: *
03: *  -- LAPACK auxiliary routine (version 3.2) --
04: *     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
05: *     November 2006
06: *
07: *     .. Scalar Arguments ..
08:       INTEGER            INCC, INCX, INCY, N
09: *     ..
10: *     .. Array Arguments ..
11:       DOUBLE PRECISION   C( * ), S( * ), X( * ), Y( * )
12: *     ..
13: *
14: *  Purpose
15: *  =======
16: *
17: *  DLARTV applies a vector of real plane rotations to elements of the
18: *  real vectors x and y. For i = 1,2,...,n
19: *
20: *     ( x(i) ) := (  c(i)  s(i) ) ( x(i) )
21: *     ( y(i) )    ( -s(i)  c(i) ) ( y(i) )
22: *
23: *  Arguments
24: *  =========
25: *
26: *  N       (input) INTEGER
27: *          The number of plane rotations to be applied.
28: *
29: *  X       (input/output) DOUBLE PRECISION array,
30: *                         dimension (1+(N-1)*INCX)
31: *          The vector x.
32: *
33: *  INCX    (input) INTEGER
34: *          The increment between elements of X. INCX > 0.
35: *
36: *  Y       (input/output) DOUBLE PRECISION array,
37: *                         dimension (1+(N-1)*INCY)
38: *          The vector y.
39: *
40: *  INCY    (input) INTEGER
41: *          The increment between elements of Y. INCY > 0.
42: *
43: *  C       (input) DOUBLE PRECISION array, dimension (1+(N-1)*INCC)
44: *          The cosines of the plane rotations.
45: *
46: *  S       (input) DOUBLE PRECISION array, dimension (1+(N-1)*INCC)
47: *          The sines of the plane rotations.
48: *
49: *  INCC    (input) INTEGER
50: *          The increment between elements of C and S. INCC > 0.
51: *
52: *  =====================================================================
53: *
54: *     .. Local Scalars ..
55:       INTEGER            I, IC, IX, IY
56:       DOUBLE PRECISION   XI, YI
57: *     ..
58: *     .. Executable Statements ..
59: *
60:       IX = 1
61:       IY = 1
62:       IC = 1
63:       DO 10 I = 1, N
64:          XI = X( IX )
65:          YI = Y( IY )
66:          X( IX ) = C( IC )*XI + S( IC )*YI
67:          Y( IY ) = C( IC )*YI - S( IC )*XI
68:          IX = IX + INCX
69:          IY = IY + INCY
70:          IC = IC + INCC
71:    10 CONTINUE
72:       RETURN
73: *
74: *     End of DLARTV
75: *
76:       END
77: