F06SKF (ZTBSV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual

NAG Library Routine Document

F06SKF (ZTBSV)

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
    7  Accuracy
    10  Example

1  Purpose

F06SKF (ZTBSV) solves a complex triangular banded system of equations with a single right hand side.

2  Specification

SUBROUTINE F06SKF ( UPLO, TRANS, DIAG, N, K, A, LDA, X, INCX)
INTEGER  N, K, LDA, INCX
COMPLEX (KIND=nag_wp)  A(LDA,*), X(*)
CHARACTER(1)  UPLO, TRANS, DIAG
The routine may be called by its BLAS name ztbsv.

3  Description

F06SKF (ZTBSV) performs one of the matrix-vector operations
xA-1x ,   xA-Tx   or   xA-Hx ,  
where A is an n by n complex triangular band matrix with k subdiagonals or superdiagonals, and x is an n-element complex vector. A-T  denotes AT-1  or equivalently A-1T ; A-H  denotes AH-1  or equivalently A-1H .
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  Parameters

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'
xA-1x.
TRANS='T'
xA-Tx.
TRANS='C'
xA-Hx.
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 – INTEGERInput
On entry: n, the order of the matrix A.
Constraint: N0.
5:     K – INTEGERInput
On entry: k, the number of subdiagonals or superdiagonals of the matrix A.
Constraint: K0.
6:     ALDA* – COMPLEX (KIND=nag_wp) arrayInput
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 Aij in Ak+1+i-jj​ for ​max1,j-kij;
  • if UPLO='L', the elements of the lower triangle of A within the band must be stored with element Aij in A1+i-jj​ for ​jiminn,j+k.
If DIAG='U', the diagonal elements of A are assumed to be 1, and are not referenced.
7:     LDA – INTEGERInput
On entry: the first dimension of the array A as declared in the (sub)program from which F06SKF (ZTBSV) is called.
Constraint: LDAK+1.
8:     X* – COMPLEX (KIND=nag_wp) arrayInput/Output
Note: the dimension of the array X must be at least max1, 1+N-1 ×INCX .
On entry: the vector x.
If INCX>0, xi must be stored in X1+i1×INCX , for i=1,2,,N.
If INCX<0, xi must be stored in X1Ni×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 – INTEGERInput
On entry: the increment in the subscripts of X between successive elements of x.
Constraint: INCX0.

6  Error Indicators and Warnings

None.

7  Accuracy

Not applicable.

8  Parallelism and Performance

Not applicable.

9  Further Comments

None.

10  Example

None.

F06SKF (ZTBSV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2015