Refs #247. Included lapack source codes. Avoid downloading tar.gz from netlib.org
Based on 3.4.2 version, apply patch.for_lapack-3.4.2.
This commit is contained in:
119
lapack-netlib/SRC/slascl2.f
Normal file
119
lapack-netlib/SRC/slascl2.f
Normal file
@@ -0,0 +1,119 @@
|
||||
*> \brief \b SLASCL2 performs diagonal scaling on a vector.
|
||||
*
|
||||
* =========== DOCUMENTATION ===========
|
||||
*
|
||||
* Online html documentation available at
|
||||
* http://www.netlib.org/lapack/explore-html/
|
||||
*
|
||||
*> \htmlonly
|
||||
*> Download SLASCL2 + dependencies
|
||||
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.tgz?format=tgz&filename=/lapack/lapack_routine/slascl2.f">
|
||||
*> [TGZ]</a>
|
||||
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.zip?format=zip&filename=/lapack/lapack_routine/slascl2.f">
|
||||
*> [ZIP]</a>
|
||||
*> <a href="http://www.netlib.org/cgi-bin/netlibfiles.txt?format=txt&filename=/lapack/lapack_routine/slascl2.f">
|
||||
*> [TXT]</a>
|
||||
*> \endhtmlonly
|
||||
*
|
||||
* Definition:
|
||||
* ===========
|
||||
*
|
||||
* SUBROUTINE SLASCL2 ( M, N, D, X, LDX )
|
||||
*
|
||||
* .. Scalar Arguments ..
|
||||
* INTEGER M, N, LDX
|
||||
* ..
|
||||
* .. Array Arguments ..
|
||||
* REAL D( * ), X( LDX, * )
|
||||
* ..
|
||||
*
|
||||
*
|
||||
*> \par Purpose:
|
||||
* =============
|
||||
*>
|
||||
*> \verbatim
|
||||
*>
|
||||
*> SLASCL2 performs a diagonal scaling on a vector:
|
||||
*> x <-- D * x
|
||||
*> where the diagonal matrix D is stored as a vector.
|
||||
*>
|
||||
*> Eventually to be replaced by BLAS_sge_diag_scale in the new BLAS
|
||||
*> standard.
|
||||
*> \endverbatim
|
||||
*
|
||||
* Arguments:
|
||||
* ==========
|
||||
*
|
||||
*> \param[in] M
|
||||
*> \verbatim
|
||||
*> M is INTEGER
|
||||
*> The number of rows of D and X. M >= 0.
|
||||
*> \endverbatim
|
||||
*>
|
||||
*> \param[in] N
|
||||
*> \verbatim
|
||||
*> N is INTEGER
|
||||
*> The number of columns of D and X. N >= 0.
|
||||
*> \endverbatim
|
||||
*>
|
||||
*> \param[in] D
|
||||
*> \verbatim
|
||||
*> D is REAL array, length M
|
||||
*> Diagonal matrix D, stored as a vector of length M.
|
||||
*> \endverbatim
|
||||
*>
|
||||
*> \param[in,out] X
|
||||
*> \verbatim
|
||||
*> X is REAL array, dimension (LDX,N)
|
||||
*> On entry, the vector X to be scaled by D.
|
||||
*> On exit, the scaled vector.
|
||||
*> \endverbatim
|
||||
*>
|
||||
*> \param[in] LDX
|
||||
*> \verbatim
|
||||
*> LDX is INTEGER
|
||||
*> The leading dimension of the vector X. LDX >= 0.
|
||||
*> \endverbatim
|
||||
*
|
||||
* Authors:
|
||||
* ========
|
||||
*
|
||||
*> \author Univ. of Tennessee
|
||||
*> \author Univ. of California Berkeley
|
||||
*> \author Univ. of Colorado Denver
|
||||
*> \author NAG Ltd.
|
||||
*
|
||||
*> \date September 2012
|
||||
*
|
||||
*> \ingroup realOTHERcomputational
|
||||
*
|
||||
* =====================================================================
|
||||
SUBROUTINE SLASCL2 ( M, N, D, X, LDX )
|
||||
*
|
||||
* -- LAPACK computational routine (version 3.4.2) --
|
||||
* -- LAPACK is a software package provided by Univ. of Tennessee, --
|
||||
* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
|
||||
* September 2012
|
||||
*
|
||||
* .. Scalar Arguments ..
|
||||
INTEGER M, N, LDX
|
||||
* ..
|
||||
* .. Array Arguments ..
|
||||
REAL D( * ), X( LDX, * )
|
||||
* ..
|
||||
*
|
||||
* =====================================================================
|
||||
*
|
||||
* .. Local Scalars ..
|
||||
INTEGER I, J
|
||||
* ..
|
||||
* .. Executable Statements ..
|
||||
*
|
||||
DO J = 1, N
|
||||
DO I = 1, M
|
||||
X( I, J ) = X( I, J ) * D( I )
|
||||
END DO
|
||||
END DO
|
||||
|
||||
RETURN
|
||||
END
|
||||
Reference in New Issue
Block a user