F06PBF (DGBMV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual
NAG Library Routine Document
F06PBF (DGBMV)
Note:
before using this routine, please read the Users' Note for your implementation to check the interpretation of
bold italicised
terms and other implementation-dependent details.
+
−
Contents
1
Purpose
2
Specification
3
Description
4
References
5
Parameters
6
Error Indicators and Warnings
7
Accuracy
8
Further Comments
9
Example
1 Purpose
F06PBF (DGBMV) computes the matrix-vector product for a real general band matrix or its transpose.
2 Specification
SUBROUTINE F06PBF (
TRANS
,
M
,
N
,
KL
,
KU
,
ALPHA
,
A
,
LDA
,
X
,
INCX
,
BETA
,
Y
,
INCY
)
INTEGER
M, N, KL, KU, LDA, INCX, INCY
REAL (KIND=nag_wp)
ALPHA, A(LDA,*), X(*), BETA, Y(*)
CHARACTER(1)
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 Parameters
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 Further Comments
None.
9 Example
None.
F06PBF (DGBMV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual
© The Numerical Algorithms Group Ltd, Oxford, UK. 2012