LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
zdscal.f
Go to the documentation of this file.
00001 *> \brief \b ZDSCAL
00002 *
00003 *  =========== DOCUMENTATION ===========
00004 *
00005 * Online html documentation available at 
00006 *            http://www.netlib.org/lapack/explore-html/ 
00007 *
00008 *  Definition:
00009 *  ===========
00010 *
00011 *       SUBROUTINE ZDSCAL(N,DA,ZX,INCX)
00012 * 
00013 *       .. Scalar Arguments ..
00014 *       DOUBLE PRECISION DA
00015 *       INTEGER INCX,N
00016 *       ..
00017 *       .. Array Arguments ..
00018 *       COMPLEX*16 ZX(*)
00019 *       ..
00020 *  
00021 *
00022 *> \par Purpose:
00023 *  =============
00024 *>
00025 *> \verbatim
00026 *>
00027 *>    ZDSCAL scales a vector by a constant.
00028 *> \endverbatim
00029 *
00030 *  Authors:
00031 *  ========
00032 *
00033 *> \author Univ. of Tennessee 
00034 *> \author Univ. of California Berkeley 
00035 *> \author Univ. of Colorado Denver 
00036 *> \author NAG Ltd. 
00037 *
00038 *> \date November 2011
00039 *
00040 *> \ingroup complex16_blas_level1
00041 *
00042 *> \par Further Details:
00043 *  =====================
00044 *>
00045 *> \verbatim
00046 *>
00047 *>     jack dongarra, 3/11/78.
00048 *>     modified 3/93 to return if incx .le. 0.
00049 *>     modified 12/3/93, array(1) declarations changed to array(*)
00050 *> \endverbatim
00051 *>
00052 *  =====================================================================
00053       SUBROUTINE ZDSCAL(N,DA,ZX,INCX)
00054 *
00055 *  -- Reference BLAS level1 routine (version 3.4.0) --
00056 *  -- Reference BLAS is a software package provided by Univ. of Tennessee,    --
00057 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
00058 *     November 2011
00059 *
00060 *     .. Scalar Arguments ..
00061       DOUBLE PRECISION DA
00062       INTEGER INCX,N
00063 *     ..
00064 *     .. Array Arguments ..
00065       COMPLEX*16 ZX(*)
00066 *     ..
00067 *
00068 *  =====================================================================
00069 *
00070 *     .. Local Scalars ..
00071       INTEGER I,NINCX
00072 *     ..
00073 *     .. Intrinsic Functions ..
00074       INTRINSIC DCMPLX
00075 *     ..
00076       IF (N.LE.0 .OR. INCX.LE.0) RETURN
00077       IF (INCX.EQ.1) THEN
00078 *
00079 *        code for increment equal to 1
00080 *
00081          DO I = 1,N
00082             ZX(I) = DCMPLX(DA,0.0d0)*ZX(I)
00083          END DO
00084       ELSE
00085 *
00086 *        code for increment not equal to 1
00087 *
00088          NINCX = N*INCX
00089          DO I = 1,NINCX,INCX
00090             ZX(I) = DCMPLX(DA,0.0d0)*ZX(I)
00091          END DO
00092       END IF
00093       RETURN
00094       END
 All Files Functions