LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
slartv.f
Go to the documentation of this file.
00001 *> \brief \b SLARTV
00002 *
00003 *  =========== DOCUMENTATION ===========
00004 *
00005 * Online html documentation available at 
00006 *            http://www.netlib.org/lapack/explore-html/ 
00007 *
00008 *> \htmlonly
00009 *> Download SLARTV + dependencies 
00010 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/slartv.f"> 
00011 *> [TGZ]</a> 
00012 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/slartv.f"> 
00013 *> [ZIP]</a> 
00014 *> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/slartv.f"> 
00015 *> [TXT]</a>
00016 *> \endhtmlonly 
00017 *
00018 *  Definition:
00019 *  ===========
00020 *
00021 *       SUBROUTINE SLARTV( N, X, INCX, Y, INCY, C, S, INCC )
00022 * 
00023 *       .. Scalar Arguments ..
00024 *       INTEGER            INCC, INCX, INCY, N
00025 *       ..
00026 *       .. Array Arguments ..
00027 *       REAL               C( * ), S( * ), X( * ), Y( * )
00028 *       ..
00029 *  
00030 *
00031 *> \par Purpose:
00032 *  =============
00033 *>
00034 *> \verbatim
00035 *>
00036 *> SLARTV applies a vector of real plane rotations to elements of the
00037 *> real vectors x and y. For i = 1,2,...,n
00038 *>
00039 *>    ( x(i) ) := (  c(i)  s(i) ) ( x(i) )
00040 *>    ( y(i) )    ( -s(i)  c(i) ) ( y(i) )
00041 *> \endverbatim
00042 *
00043 *  Arguments:
00044 *  ==========
00045 *
00046 *> \param[in] N
00047 *> \verbatim
00048 *>          N is INTEGER
00049 *>          The number of plane rotations to be applied.
00050 *> \endverbatim
00051 *>
00052 *> \param[in,out] X
00053 *> \verbatim
00054 *>          X is REAL array,
00055 *>                         dimension (1+(N-1)*INCX)
00056 *>          The vector x.
00057 *> \endverbatim
00058 *>
00059 *> \param[in] INCX
00060 *> \verbatim
00061 *>          INCX is INTEGER
00062 *>          The increment between elements of X. INCX > 0.
00063 *> \endverbatim
00064 *>
00065 *> \param[in,out] Y
00066 *> \verbatim
00067 *>          Y is REAL array,
00068 *>                         dimension (1+(N-1)*INCY)
00069 *>          The vector y.
00070 *> \endverbatim
00071 *>
00072 *> \param[in] INCY
00073 *> \verbatim
00074 *>          INCY is INTEGER
00075 *>          The increment between elements of Y. INCY > 0.
00076 *> \endverbatim
00077 *>
00078 *> \param[in] C
00079 *> \verbatim
00080 *>          C is REAL array, dimension (1+(N-1)*INCC)
00081 *>          The cosines of the plane rotations.
00082 *> \endverbatim
00083 *>
00084 *> \param[in] S
00085 *> \verbatim
00086 *>          S is REAL array, dimension (1+(N-1)*INCC)
00087 *>          The sines of the plane rotations.
00088 *> \endverbatim
00089 *>
00090 *> \param[in] INCC
00091 *> \verbatim
00092 *>          INCC is INTEGER
00093 *>          The increment between elements of C and S. INCC > 0.
00094 *> \endverbatim
00095 *
00096 *  Authors:
00097 *  ========
00098 *
00099 *> \author Univ. of Tennessee 
00100 *> \author Univ. of California Berkeley 
00101 *> \author Univ. of Colorado Denver 
00102 *> \author NAG Ltd. 
00103 *
00104 *> \date November 2011
00105 *
00106 *> \ingroup realOTHERauxiliary
00107 *
00108 *  =====================================================================
00109       SUBROUTINE SLARTV( N, X, INCX, Y, INCY, C, S, INCC )
00110 *
00111 *  -- LAPACK auxiliary routine (version 3.4.0) --
00112 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
00113 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
00114 *     November 2011
00115 *
00116 *     .. Scalar Arguments ..
00117       INTEGER            INCC, INCX, INCY, N
00118 *     ..
00119 *     .. Array Arguments ..
00120       REAL               C( * ), S( * ), X( * ), Y( * )
00121 *     ..
00122 *
00123 *  =====================================================================
00124 *
00125 *     .. Local Scalars ..
00126       INTEGER            I, IC, IX, IY
00127       REAL               XI, YI
00128 *     ..
00129 *     .. Executable Statements ..
00130 *
00131       IX = 1
00132       IY = 1
00133       IC = 1
00134       DO 10 I = 1, N
00135          XI = X( IX )
00136          YI = Y( IY )
00137          X( IX ) = C( IC )*XI + S( IC )*YI
00138          Y( IY ) = C( IC )*YI - S( IC )*XI
00139          IX = IX + INCX
00140          IY = IY + INCY
00141          IC = IC + INCC
00142    10 CONTINUE
00143       RETURN
00144 *
00145 *     End of SLARTV
00146 *
00147       END
 All Files Functions