f06pkf (dtbsv) (PDF version)
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
NAG Library Manual
Keyword Search:
NAG Library Routine Document
f06pkf (dtbsv)
▸
▿
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
f06pkf (dtbsv)
solves a real triangular banded system of equations with a single right hand side.
2
Specification
Fortran Interface
Subroutine f06pkf (
uplo
,
trans
,
diag
,
n
,
k
,
a
,
lda
,
x
,
incx
)
Integer, Intent (In)
::
n
,
k
,
lda
,
incx
Real (Kind=nag_wp), Intent (In)
::
a(lda,*)
Real (Kind=nag_wp), Intent (Inout)
::
x(*)
Character (1), Intent (In)
::
uplo
,
trans
,
diag
C Header Interface
#include nagmk26.h
void
f06pkf_ (
const char *
uplo
,
const char *
trans
,
const char *
diag
,
const Integer *
n
,
const Integer *
k
,
const double
a
[]
,
const Integer *
lda
,
double
x
[]
,
const Integer *
incx
,
const Charlen
length_uplo
,
const Charlen
length_trans
,
const Charlen
length_diag
)
The routine may be called by its BLAS name
dtbsv
.
3
Description
f06pkf (dtbsv)
performs one of the matrix-vector operations
x
←
A
-
1
x
or
x
←
A
-
T
x
,
where
A
is an
n
by
n
real triangular band matrix with
k
subdiagonals or superdiagonals, and
x
is an
n
-element real vector.
A
-
T
denotes
A
T
-
1
or equivalently
A
-
1
T
.
No test for singularity or near-singularity of
A
is included in this routine. Such tests must be performed before calling this routine.
4
References
None.
5
Arguments
1:
uplo
– Character(1)
Input
On entry
: specifies whether
A
is upper or lower triangular.
uplo
=
'U'
A
is upper triangular.
uplo
=
'L'
A
is lower triangular.
Constraint
:
uplo
=
'U'
or
'L'
.
2:
trans
– Character(1)
Input
On entry
: specifies the operation to be performed.
trans
=
'N'
x
←
A
-
1
x
.
trans
=
'T'
or
'C'
x
←
A
-
T
x
.
Constraint
:
trans
=
'N'
,
'T'
or
'C'
.
3:
diag
– Character(1)
Input
On entry
: specifies whether
A
has nonunit or unit diagonal elements.
diag
=
'N'
The diagonal elements are stored explicitly.
diag
=
'U'
The diagonal elements are assumed to be
1
, and are not referenced.
Constraint
:
diag
=
'N'
or
'U'
.
4:
n
– Integer
Input
On entry
:
n
, the order of the matrix
A
.
Constraint
:
n
≥
0
.
5:
k
– Integer
Input
On entry
:
k
, the number of subdiagonals or superdiagonals of the matrix
A
.
Constraint
:
k
≥
0
.
6:
a
lda
*
– Real (Kind=nag_wp) array
Input
Note:
the second dimension of the array
a
must be at least
n
.
On entry
: the
n
by
n
triangular 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
.
If
diag
=
'U'
, the diagonal elements of
A
are assumed to be
1
, and are not referenced.
7:
lda
– Integer
Input
On entry
: the first dimension of the array
a
as declared in the (sub)program from which
f06pkf (dtbsv)
is called.
Constraint
:
lda
≥
k
+
1
.
8:
x
*
– Real (Kind=nag_wp) array
Input/Output
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
.
On exit
: the updated vector
x
stored in the array elements used to supply the original vector
x
.
9:
incx
– Integer
Input
On entry
: the increment in the subscripts of
x
between successive elements of
x
.
Constraint
:
incx
≠
0
.
6
Error Indicators and Warnings
None.
7
Accuracy
Not applicable.
8
Parallelism and Performance
f06pkf (dtbsv)
is not threaded in any implementation.
9
Further Comments
None.
10
Example
None.
f06pkf (dtbsv) (PDF version)
F06 (blas) Chapter Contents
F06 (blas) Chapter Introduction
NAG Library Manual
© The Numerical Algorithms Group Ltd, Oxford, UK. 2017