BLAS Level 2 Routines
?gbmv
computes a matrix-vector product using a general band matrix and performs one of the following matrix-vector operations:
?gemv
computes a matrix-vector product using a general matrix and performs one of the following matrix-vector operations:
?ger
performs a rank-1 update of a general
?gerc
performs a rank-1 update of a general
?geru
performs a rank-1 update of a general
?hbmv
computes a matrix-vector product using a Hermitian band matrix:
?hemv
computes a matrix-vector product using a Hermitian matrix:
?her
performs a rank-1 update of an
?her2
performs a rank-2 update of an
?hpmv
computes a matrix-vector product using a Hermitian packed matrix:
?hpr
performs a rank-1 update of an
?hpr2
performs a rank-2 update of an
?sbmv
computes a matrix-vector product using a symmetric band matrix:
?spmv
computes a matrix-vector product using a packed symmetric matrix:
?spr
performs a rank-1 update of an
?spr2
performs a rank-2 update of an
?symv
computes a matrix-vector product for a symmetric matrix:
?syr
performs a rank-1 update of an
?syr2
performs a rank-2 update of an
?tbmv
computes a matrix-vector product using a triangular band matrix.
Here
?tbsv
solves a system of linear equations whose coefficients are in a triangular band matrix.
?tpmv
computes a matrix-vector product using a triangular packed matrix.
?tpsv
solves a system of linear equations whose coefficients are in a triangular packed matrix.
?trmv
computes a matrix-vector product using a triangular matrix.
?trsv
solves a system of linear equations whose coefficients are in a triangular matrix.
y := alpha*a*x + beta*y
for trans =
'N'or'n';
y := alpha*a'*x + beta*y
for trans =
'T'or't';
y := alpha*conjg(a')*x + beta*y
for trans =
'C'or'c'.
Here a is an
m-by-n
band matrix with
ku
superdiagonals and
kl
subdiagonals,
x and
y are vectors,
alpha and
beta are scalars.
call sgbmv (trans, m, n, kl, ku, alpha, a, lda, x, inxc, beta, y, incy)
call dgbmv (trans, m, n, kl, ku, alpha, a, lda, x, inxc, beta, y, incy)
call cgbmv (trans, m, n, kl, ku, alpha, a, lda, x, inxc, beta, y, incy)
call zgbmv (trans, m, n, kl, ku, alpha, a, lda, x, inxc, beta, y, incy)
y := alpha*a*x + beta*y
for trans =
'N'or'n';
y := alpha*a'*x + beta*y
for trans =
'T'or't';
y := alpha*conjg(a')*x + beta*y
for trans =
'C'or'c'.
Here a is an
m-by-n
band matrix,
x and
y are vectors,
alpha and
beta are scalars.
call sgemv (trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
call dgemv (trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
call cgemv (trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
call zgemv (trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
m-by-n
matrix a:
a :=
alpha*x*y' +
a.
call sger (m, n, alpha, x, incx, y, incy, a, lda)
call dger (m, n, alpha, x, incx, y, incy, a, lda)
m-by-n
matrix a, with conjugation:
a :=
alpha*x*conjg(y')
+ a.
call cgerc (m, n, alpha, x, incx, y, incy, a, lda)
call zgerc (m, n, alpha, x, incx, y, incy, a, lda)
m-by-n
matrix a, without conjugation:
a :=
alpha*x*y' +
a.
call cgeru (m, n, alpha, x, incx, y, incy, a, lda)
call zgeru (m, n, alpha, x, incx, y, incy, a, lda)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
Hermitian band matrix with
k
superdiagonals,
x and
y are n-element vectors,
alpha and
beta are scalars.
call chbmv (uplo, n, k, alpha, a, lda, x, incx, beta, y, incy)
call zhbmv (uplo, n, k, alpha, a, lda, x, incx, beta, y, incy)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
Hermitian band matrix with
k
superdiagonals,
x and
y are n-element vectors,
alpha and
beta are scalars.
call chemv (uplo, n, alpha, a, lda, x, incx, beta, y, incy)
call zhemv (uplo, n, alpha, a, lda, x, incx, beta, y, incy)
n-by-n
Hermitian matrix a:
a :=
alpha*x*conjg(x')
+ a.
call cher (uplo, n, alpha, x, incx, a, lda)
call zher (uplo, n, alpha, x, incx, a, lda)
n-by-n
Hermitian matrix a:
a :=
alpha*x*conjg(y') + conjg(alpha)*y*conjg(x')
+ a.
call cher2 (uplo, n, alpha, x, incx, y, incy, a, lda)
call zher2 (uplo, n, alpha, x, incx, y, incy, a, lda)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
packed Hermitian matrix,
x and
y are n-element vectors,
alpha and
beta are scalars.
call chpmv (uplo, n, alpha, ap, x, incx, beta, y, incy)
call zhpmv (uplo, n, alpha, ap, x, incx, beta, y, incy)
n-by-n
packed Hermitian matrix a:
a :=
alpha*x*conjg(x') + a.
call chpr (uplo, n, alpha, x, incx, ap)
call zhpr (uplo, n, alpha, x, incx, ap)
n-by-n
packed Hermitian matrix a:
a :=
alpha*x*conjg(y') + conjg(alpha)*y*conjg(x')
+ a.
call chpr2 (uplo, n, alpha, x, incx, y, incy, ap)
call zhpr2 (uplo, n, alpha, x, incx, y, incy, ap)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
symmetric band matrix with
k
superdiagonals,
x and
y are n-element vectors,
alpha and
beta are scalars.
call ssbmv (uplo, n, k, alpha, a, lda, x, incx, beta, y, incy)
call dsbmv (uplo, n, k, alpha, a, lda, x, incx, beta, y, incy)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
packed symmetric matrix;
x and y are n-element vectors,
alpha and
beta are scalars.
call sspmv (uplo, n, alpha, ap, x, incx, beta, y, incy)
call dspmv (uplo, n, alpha, ap, x, incx, beta, y, incy)
n-by-n
packed symmetric matrix a:
a
:= alpha*x*x'
+ a.
call sspr (uplo, n, alpha, x, incx, ap)
call dspr (uplo, n, alpha, x, incx, ap)
n-by-n
packed symmetric matrix a:
a :=
alpha*x*y' + alpha*y*x'
+ a.
call sspr2 (uplo, n, alpha, x, incx, y, incy, ap)
call dspr2 (uplo, n, alpha, x, incx, y, incy, ap)
y
:= alpha*a*x
+ beta*y.
Here a is an
n-by-n
symmetric matrix;
x and y are n-element vectors,
alpha and
beta are scalars.
call ssymv (uplo, n, alpha, a, lda, x, incx, beta, y, incy)
call dsymv (uplo, n, alpha, a, lda, x, incx, beta, y, incy)
n-by-n
symmetric matrix a:
a
:= alpha*x*x'
+ a.
call ssyr (uplo, n, alpha, x, incx, a, lda)
call dsyr (uplo, n, alpha, x, incx, a, lda)
n-by-n
symmetric matrix a:
a :=
alpha*x*y' + alpha*y*x'
+ a.
call ssyr2 (uplo, n, alpha, x, incx, y, incy, a, lda)
call dsyr2 (uplo, n, alpha, x, incx, y, incy, a, lda)
a is an
n-by-n
triangular band matrix with (k + 1) diagonals.
call stbmv (uplo, trans, diag, n, k, a, lda, x, incx)
call dtbmv (uplo, trans, diag, n, k, a, lda, x, incx)
call ctbmv (uplo, trans, diag, n, k, a, lda, x, incx)
call ztbmv (uplo, trans, diag, n, k, a, lda, x, incx)
call stbsv (uplo, trans, diag, n, k, a, lda, x, incx)
call dtbsv (uplo, trans, diag, n, k, a, lda, x, incx)
call ctbsv (uplo, trans, diag, n, k, a, lda, x, incx)
call ztbsv (uplo, trans, diag, n, k, a, lda, x, incx)
call stpmv (uplo, trans, diag, n, ap, x, incx)
call dtpmv (uplo, trans, diag, n, ap, x, incx)
call ctpmv (uplo, trans, diag, n, ap, x, incx)
call ztpmv (uplo, trans, diag, n, ap, x, incx)
call stpsv (uplo, trans, diag, n, ap, x, incx)
call dtpsv (uplo, trans, diag, n, ap, x, incx)
call ctpsv (uplo, trans, diag, n, ap, x, incx)
call ztpsv (uplo, trans, diag, n, ap, x, incx)
call strmv (uplo, trans, diag, n, a, lda, x, incx)
call dtrmv (uplo, trans, diag, n, a, lda, x, incx)
call ctrmv (uplo, trans, diag, n, a, lda, x, incx)
call ztrmv (uplo, trans, diag, n, a, lda, x, incx)
call strsv (uplo, trans, diag, n, a, lda, x, incx)
call dtrsv (uplo, trans, diag, n, a, lda, x, incx)
call ctrsv (uplo, trans, diag, n, a, lda, x, incx)
call ztrsv (uplo, trans, diag, n, a, lda, x, incx)
* Legal Information © 1999, 2002-2004, Intel Corporation