f06sdf (zhbmv) (PDF version)
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
NAG Library Manual
Keyword Search:
NAG Library Routine Document
f06sdf (zhbmv)
▸
▿
Contents
1
Purpose
2
Specification
3
Description
4
References
5
Arguments
6
Error Indicators and Warnings
7
Accuracy
8
Parallelism and Performance
9
Further Comments
10
Example
1
Purpose
f06sdf (zhbmv)
computes the matrix-vector product for a complex Hermitian band matrix.
2
Specification
Fortran Interface
Subroutine f06sdf (
uplo
,
n
,
k
,
alpha
,
a
,
lda
,
x
,
incx
,
beta
,
y
,
incy
)
Integer, Intent (In)
::
n
,
k
,
lda
,
incx
,
incy
Complex (Kind=nag_wp), Intent (In)
::
alpha
,
a(lda,*)
,
x(*)
,
beta
Complex (Kind=nag_wp), Intent (Inout)
::
y(*)
Character (1), Intent (In)
::
uplo
C Header Interface
#include nagmk26.h
void
f06sdf_ (
const char *
uplo
,
const Integer *
n
,
const Integer *
k
,
const Complex *
alpha
,
const Complex
a
[]
,
const Integer *
lda
,
const Complex
x
[]
,
const Integer *
incx
,
const Complex *
beta
,
Complex
y
[]
,
const Integer *
incy
,
const Charlen
length_uplo
)
The routine may be called by its BLAS name
zhbmv
.
3
Description
f06sdf (zhbmv)
performs the matrix-vector operation
y
←
α
A
x
+
β
y
,
where
A
is an
n
by
n
complex Hermitian band matrix with
k
subdiagonals and
k
superdiagonals,
x
and
y
are
n
-element complex vectors, and
α
and
β
are complex scalars.
4
References
None.
5
Arguments
1:
uplo
– Character(1)
Input
On entry
: specifies whether the upper or lower triangular part of
A
is stored.
uplo
=
'U'
The upper triangular part of
A
is stored.
uplo
=
'L'
The lower triangular part of
A
is stored.
Constraint
:
uplo
=
'U'
or
'L'
.
2:
n
– Integer
Input
On entry
:
n
, the order of the matrix
A
.
Constraint
:
n
≥
0
.
3:
k
– Integer
Input
On entry
:
k
, the number of subdiagonals or superdiagonals of the matrix
A
.
Constraint
:
k
≥
0
.
4:
alpha
– Complex (Kind=nag_wp)
Input
On entry
: the scalar
α
.
5:
a
lda
*
– Complex (Kind=nag_wp) array
Input
Note:
the second dimension of the array
a
must be at least
n
.
On entry
: the
n
by
n
Hermitian band matrix
A
.
The matrix is stored in rows
1
to
k
+
1
, more precisely,
if
uplo
=
'U'
, the elements of the upper triangle of
A
within the band must be stored with element
A
i
j
in
a
k
+
1
+
i
-
j
j
for
max
1
,
j
-
k
≤
i
≤
j
;
if
uplo
=
'L'
, the elements of the lower triangle of
A
within the band must be stored with element
A
i
j
in
a
1
+
i
-
j
j
for
j
≤
i
≤
min
n
,
j
+
k
.
6:
lda
– Integer
Input
On entry
: the first dimension of the array
a
as declared in the (sub)program from which
f06sdf (zhbmv)
is called.
Constraint
:
lda
≥
k
+
1
.
7:
x
*
– Complex (Kind=nag_wp) array
Input
Note:
the dimension of the array
x
must be at least
max
1
,
1
+
n
-
1
×
incx
.
On entry
: the
n
-element vector
x
.
If
incx
>
0
,
x
i
must be stored in
x
1
+
i
-
1
×
incx
, for
i
=
1
,
2
,
…
,
n
.
If
incx
<
0
,
x
i
must be stored in
x
1
-
n
-
i
×
incx
, for
i
=
1
,
2
,
…
,
n
.
Intermediate elements of
x
are not referenced.
8:
incx
– Integer
Input
On entry
: the increment in the subscripts of
x
between successive elements of
x
.
Constraint
:
incx
≠
0
.
9:
beta
– Complex (Kind=nag_wp)
Input
On entry
: the scalar
β
.
10:
y
*
– Complex (Kind=nag_wp) array
Input/Output
Note:
the dimension of the array
y
must be at least
max
1
,
1
+
n
-
1
×
incy
.
On entry
: the
n
-element vector
y
, if
beta
=
0
,
y
need not be set.
If
incy
>
0
,
y
i
must be stored in
y
1
+
i
–
1
×
incy
, for
i
=
1
,
2
,
…
,
n
.
If
incy
<
0
,
y
i
must be stored in
y
1
–
n
–
i
×
incy
, for
i
=
1
,
2
,
…
,
n
.
On exit
: the updated vector
y
stored in the array elements used to supply the original vector
y
.
11:
incy
– Integer
Input
On entry
: the increment in the subscripts of
y
between successive elements of
y
.
Constraint
:
incy
≠
0
.
6
Error Indicators and Warnings
None.
7
Accuracy
Not applicable.
8
Parallelism and Performance
f06sdf (zhbmv)
is not threaded in any implementation.
9
Further Comments
None.
10
Example
None.
f06sdf (zhbmv) (PDF version)
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
NAG Library Manual
© The Numerical Algorithms Group Ltd, Oxford, UK. 2017