scasum(3)
real
Description
single_blas_level1
NAME
single_blas_level1 - real
SYNOPSIS
Functions
real function
sasum (N, SX, INCX)
SASUM
subroutine saxpy (N, SA, SX, INCX, SY, INCY)
SAXPY
real function scabs1 (Z)
SCABS1
real function scasum (N, CX, INCX)
SCASUM
subroutine scopy (N, SX, INCX, SY, INCY)
SCOPY
real function sdot (N, SX, INCX, SY, INCY)
SDOT
real function sdsdot (N, SB, SX, INCX, SY, INCY)
SDSDOT
subroutine srot (N, SX, INCX, SY, INCY, C, S)
SROT
subroutine srotm (N, SX, INCX, SY, INCY, SPARAM)
SROTM
subroutine srotmg (SD1, SD2, SX1, SY1, SPARAM)
SROTMG
subroutine sscal (N, SA, SX, INCX)
SSCAL
subroutine sswap (N, SX, INCX, SY, INCY)
SSWAP
Detailed Description
This is the group of real LEVEL 1 BLAS routines.
Function Documentation
real function sasum (integer N, real, dimension(*) SX, integer INCX)
SASUM
Purpose:
SASUM takes the
sum of the absolute values.
uses unrolled loops for increment equal to one.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 3/93 to return if incx .le. 0.
modified 12/3/93, array(1) declarations changed to
array(*)
subroutine saxpy (integer N, real SA, real, dimension(*) SX, integer INCX,real, dimension(*) SY, integer INCY)
SAXPY
Purpose:
SAXPY constant
times a vector plus a vector.
uses unrolled loops for increments equal to one.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SA
SA is REAL
On entry, SA specifies the scalar alpha.
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 12/3/93, array(1) declarations changed to
array(*)
real function scabs1 (complex Z)
SCABS1
Purpose:
SCABS1 computes |Re(.)| + |Im(.)| of a complex number
Parameters
Z
Z is COMPLEX
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
real function scasum (integer N, complex, dimension(*) CX, integer INCX)
SCASUM
Purpose:
SCASUM takes
the sum of the (|Re(.)| + |Im(.)|)’s of a complex
vector and
returns a single precision result.
Parameters
N
N is INTEGER
number of elements in input vector(s)
CX
CX is COMPLEX array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 3/93 to return if incx .le. 0.
modified 12/3/93, array(1) declarations changed to
array(*)
subroutine scopy (integer N, real, dimension(*) SX, integer INCX, real,dimension(*) SY, integer INCY)
SCOPY
Purpose:
SCOPY copies a
vector, x, to a vector, y.
uses unrolled loops for increments equal to 1.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 12/3/93, array(1) declarations changed to
array(*)
real function sdot (integer N, real, dimension(*) SX, integer INCX, real,dimension(*) SY, integer INCY)
SDOT
Purpose:
SDOT forms the
dot product of two vectors.
uses unrolled loops for increments equal to one.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 12/3/93, array(1) declarations changed to
array(*)
real function sdsdot (integer N, real SB, real, dimension(*) SX, integerINCX, real, dimension(*) SY, integer INCY)
SDSDOT
Purpose:
Compute the
inner product of two vectors with extended
precision accumulation.
Returns S.P.
result with dot product accumulated in D.P.
SDSDOT = SB + sum for I = 0 to N-1 of
SX(LX+I*INCX)*SY(LY+I*INCY),
where LX = 1 if INCX .GE. 0, else LX = 1+(1-N)*INCX, and LY
is
defined in a similar way using INCY.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SB
SB is REAL
single precision scalar to be added to inner product
SX
SX is REAL
array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
single precision vector with N elements
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL
array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
single precision vector with N elements
INCY
INCY is INTEGER
storage spacing between elements of SY
Author
Lawson, C. L., (JPL), Hanson, R. J., (SNLA),
Kincaid, D. R., (U. of Texas), Krogh, F. T., (JPL)
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
REFERENCES
C. L. Lawson,
R. J. Hanson, D. R. Kincaid and F. T.
Krogh, Basic linear algebra subprograms for Fortran
usage, Algorithm No. 539, Transactions on Mathematical
Software 5, 3 (September 1979), pp. 308-323.
REVISION HISTORY (YYMMDD)
791001 DATE
WRITTEN
890531 Changed all specific intrinsics to generic. (WRB)
890831 Modified array declarations. (WRB)
890831 REVISION DATE from Version 3.2
891214 Prologue converted to Version 4.0 format. (BAB)
920310 Corrected definition of LX in DESCRIPTION. (WRB)
920501 Reformatted the REFERENCES section. (WRB)
070118 Reformat to LAPACK coding style
subroutine srot (integer N, real, dimension(*) SX, integer INCX, real,dimension(*) SY, integer INCY, real C, real S)
SROT
Purpose:
applies a plane rotation.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
C
C is REAL
S
S is REAL
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 12/3/93, array(1) declarations changed to
array(*)
subroutine srotm (integer N, real, dimension(*) SX, integer INCX, real,dimension(*) SY, integer INCY, real, dimension(5) SPARAM)
SROTM
Purpose:
APPLY THE MODIFIED GIVENS TRANSFORMATION, H, TO THE 2 BY N MATRIX
(SX**T) , WHERE
**T INDICATES TRANSPOSE. THE ELEMENTS OF SX ARE IN
(SX**T)
SX(LX+I*INCX),
I = 0 TO N-1, WHERE LX = 1 IF INCX .GE. 0, ELSE
LX = (-INCX)*N, AND SIMILARLY FOR SY USING USING LY AND
INCY.
WITH SPARAM(1)=SFLAG, H HAS ONE OF THE FOLLOWING FORMS..
SFLAG=-1.E0 SFLAG=0.E0 SFLAG=1.E0 SFLAG=-2.E0
(SH11 SH12)
(1.E0 SH12) (SH11 1.E0) (1.E0 0.E0)
H=( ) ( ) ( ) ( )
(SH21 SH22), (SH21 1.E0), (-1.E0 SH22), (0.E0 1.E0).
SEE SROTMG FOR A DESCRIPTION OF DATA STORAGE IN SPARAM.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
SPARAM
SPARAM is REAL
array, dimension (5)
SPARAM(1)=SFLAG
SPARAM(2)=SH11
SPARAM(3)=SH21
SPARAM(4)=SH12
SPARAM(5)=SH22
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
subroutine srotmg (real SD1, real SD2, real SX1, real SY1, real, dimension(5)SPARAM)
SROTMG
Purpose:
CONSTRUCT THE
MODIFIED GIVENS TRANSFORMATION MATRIX H WHICH ZEROS
THE SECOND COMPONENT OF THE 2-VECTOR
(SQRT(SD1)*SX1,SQRT(SD2)*> SY2)**T.
WITH SPARAM(1)=SFLAG, H HAS ONE OF THE FOLLOWING FORMS..
SFLAG=-1.E0 SFLAG=0.E0 SFLAG=1.E0 SFLAG=-2.E0
(SH11 SH12)
(1.E0 SH12) (SH11 1.E0) (1.E0 0.E0)
H=( ) ( ) ( ) ( )
(SH21 SH22), (SH21 1.E0), (-1.E0 SH22), (0.E0 1.E0).
LOCATIONS 2-4 OF SPARAM CONTAIN SH11,SH21,SH12, AND SH22
RESPECTIVELY. (VALUES OF 1.E0, -1.E0, OR 0.E0 IMPLIED BY THE
VALUE OF SPARAM(1) ARE NOT STORED IN SPARAM.)
THE VALUES OF
GAMSQ AND RGAMSQ SET IN THE DATA STATEMENT MAY BE
INEXACT. THIS IS OK AS THEY ARE ONLY USED FOR TESTING THE
SIZE
OF SD1 AND SD2. ALL ACTUAL SCALING OF DATA IS DONE USING
GAM.
Parameters
SD1
SD1 is REAL
SD2
SD2 is REAL
SX1
SX1 is REAL
SY1
SY1 is REAL
SPARAM
SPARAM is REAL
array, dimension (5)
SPARAM(1)=SFLAG
SPARAM(2)=SH11
SPARAM(3)=SH21
SPARAM(4)=SH12
SPARAM(5)=SH22
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
subroutine sscal (integer N, real SA, real, dimension(*) SX, integer INCX)
SSCAL
Purpose:
SSCAL scales a
vector by a constant.
uses unrolled loops for increment equal to 1.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SA
SA is REAL
On entry, SA specifies the scalar alpha.
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 3/93 to return if incx .le. 0.
modified 12/3/93, array(1) declarations changed to
array(*)
subroutine sswap (integer N, real, dimension(*) SX, integer INCX, real,dimension(*) SY, integer INCY)
SSWAP
Purpose:
SSWAP
interchanges two vectors.
uses unrolled loops for increments equal to 1.
Parameters
N
N is INTEGER
number of elements in input vector(s)
SX
SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
INCX
INCX is INTEGER
storage spacing between elements of SX
SY
SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
INCY
INCY is INTEGER
storage spacing between elements of SY
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Further Details:
jack dongarra,
linpack, 3/11/78.
modified 12/3/93, array(1) declarations changed to
array(*)
Author
Generated automatically by Doxygen for LAPACK from the source code.