NAG Library Manual, Mark 26
NAG AD Library Manual, Mark 26
NAG C Library Manual, Mark 26
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
NAG Library Routine Document
f06pbf (dgbmv)
Keyword Search:
NAG Library Manual, Mark 26
NAG AD Library Manual, Mark 26
NAG C Library Manual, Mark 26
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
▸
▿
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
© The Numerical Algorithms Group Ltd. 2018
1
Purpose
f06pbf (dgbmv)
computes the matrix-vector product for a real general band matrix or its transpose.
2
Specification
Fortran Interface
Subroutine f06pbf (
trans
,
m
,
n
,
kl
,
ku
,
alpha
,
a
,
lda
,
x
,
incx
,
beta
,
y
,
incy
)
Integer, Intent (In)
::
m
,
n
,
kl
,
ku
,
lda
,
incx
,
incy
Real (Kind=nag_wp), Intent (In)
::
alpha
,
a(lda,*)
,
x(*)
,
beta
Real (Kind=nag_wp), Intent (Inout)
::
y(*)
Character (1), Intent (In)
::
trans
C Header Interface
#include <nagmk26.h>
void
f06pbf_ (
const char *
trans
,
const Integer *
m
,
const Integer *
n
,
const Integer *
kl
,
const Integer *
ku
,
const double *
alpha
,
const double
a
[]
,
const Integer *
lda
,
const double
x
[]
,
const Integer *
incx
,
const double *
beta
,
double
y
[]
,
const Integer *
incy
,
const Charlen
length_trans
)
The routine may be called by its BLAS name
dgbmv
.
3
Description
f06pbf (dgbmv)
performs one of the matrix-vector operations
y
←
α
A
x
+
β
y
or
y
←
α
A
T
x
+
β
y
,
where
A
is an
m
by
n
real band matrix with
k
l
subdiagonals and
k
u
superdiagonals,
x
and
y
are real vectors, and
α
and
β
are real scalars.
If
m
=
0
or
n
=
0
, no operation is performed.
4
References
None.
5
Arguments
1:
trans
– Character(1)
Input
On entry
: specifies the operation to be performed.
trans
=
'N'
y
←
α
A
x
+
β
y
.
trans
=
'T'
or
'C'
y
←
α
A
T
x
+
β
y
.
Constraint
:
trans
=
'N'
,
'T'
or
'C'
.
2:
m
– Integer
Input
On entry
:
m
, the number of rows of the matrix
A
.
Constraint
:
m
≥
0
.
3:
n
– Integer
Input
On entry
:
n
, the number of columns of the matrix
A
.
Constraint
:
n
≥
0
.
4:
kl
– Integer
Input
On entry
:
k
l
, the number of subdiagonals within the band of
A
.
Constraint
:
kl
≥
0
.
5:
ku
– Integer
Input
On entry
:
k
u
, the number of superdiagonals within the band of
A
.
Constraint
:
ku
≥
0
.
6:
alpha
– Real (Kind=nag_wp)
Input
On entry
: the scalar
α
.
7:
a
lda
*
– Real (Kind=nag_wp) array
Input
Note:
the second dimension of the array
a
must be at least
n
.
On entry
: the
m
by
n
band matrix
A
.
The matrix is stored in rows
1
to
k
l
+
k
u
+
1
, more precisely, the element
A
i
j
must be stored in
a
k
u
+
1
+
i
-
j
j
for
max
1
,
j
-
k
u
≤
i
≤
min
m
,
j
+
k
l
.
8:
lda
– Integer
Input
On entry
: the first dimension of the array
a
as declared in the (sub)program from which
f06pbf (dgbmv)
is called.
Constraint
:
lda
≥
kl
+
ku
+
1
.
9:
x
*
– Real (Kind=nag_wp) array
Input
Note:
the dimension of the array
x
must be at least
max
1
,
1
+
n
-
1
×
incx
if
trans
=
'N'
and at least
max
1
,
1
+
m
-
1
×
incx
if
trans
=
'T'
or
'C'
.
On entry
: the vector
x
.
If
trans
=
'N'
,
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
.
If
trans
=
'T'
or
'C'
,
if
incx
>
0
,
x
i
must be stored in
x
1
+
i
-
1
×
incx
, for
i
=
1
,
2
,
…
,
m
;
if
incx
<
0
,
x
i
must be stored in
x
1
-
m
-
i
×
incx
, for
i
=
1
,
2
,
…
,
m
.
10:
incx
– Integer
Input
On entry
: the increment in the subscripts of
x
between successive elements of
x
.
Constraint
:
incx
≠
0
.
11:
beta
– Real (Kind=nag_wp)
Input
On entry
: the scalar
β
.
12:
y
*
– Real (Kind=nag_wp) array
Input/Output
Note:
the dimension of the array
y
must be at least
max
1
,
1
+
m
-
1
×
incy
if
trans
=
'N'
and at least
max
1
,
1
+
n
-
1
×
incy
if
trans
=
'T'
or
'C'
.
On entry
: the vector
y
, if
beta
=
0.0
,
y
need not be set.
If
trans
=
'N'
,
if
incy
>
0
,
y
i
must be stored in
y
1
+
i
-
1
×
incy
, for
i
=
1
,
2
,
…
,
m
;
if
incy
<
0
,
y
i
must be stored in
y
1
-
m
-
i
×
incy
, for
i
=
1
,
2
,
…
,
m
.
If
trans
=
'T'
or
'C'
,
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
.
13:
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
f06pbf (dgbmv)
is not threaded in any implementation.
9
Further Comments
None.
10
Example
None.
NAG Library Manual, Mark 26
NAG AD Library Manual, Mark 26
NAG C Library Manual, Mark 26
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
© The Numerical Algorithms Group Ltd. 2018