NAME

dtbmv - perform one of the matrix-vector operations x := A*x, or x := A'*x


SYNOPSIS

  SUBROUTINE DTBMV( UPLO, TRANSA, DIAG, N, NDIAG, A, LDA, Y, INCY)
  CHARACTER * 1 UPLO, TRANSA, DIAG
  INTEGER N, NDIAG, LDA, INCY
  DOUBLE PRECISION A(LDA,*), Y(*)
  SUBROUTINE DTBMV_64( UPLO, TRANSA, DIAG, N, NDIAG, A, LDA, Y, INCY)
  CHARACTER * 1 UPLO, TRANSA, DIAG
  INTEGER*8 N, NDIAG, LDA, INCY
  DOUBLE PRECISION A(LDA,*), Y(*)

F95 INTERFACE

  SUBROUTINE TBMV( UPLO, [TRANSA], DIAG, [N], NDIAG, A, [LDA], Y, 
 *       [INCY])
  CHARACTER(LEN=1) :: UPLO, TRANSA, DIAG
  INTEGER :: N, NDIAG, LDA, INCY
  REAL(8), DIMENSION(:) :: Y
  REAL(8), DIMENSION(:,:) :: A
  SUBROUTINE TBMV_64( UPLO, [TRANSA], DIAG, [N], NDIAG, A, [LDA], Y, 
 *       [INCY])
  CHARACTER(LEN=1) :: UPLO, TRANSA, DIAG
  INTEGER(8) :: N, NDIAG, LDA, INCY
  REAL(8), DIMENSION(:) :: Y
  REAL(8), DIMENSION(:,:) :: A

C INTERFACE

#include <sunperf.h>

void dtbmv(char uplo, char transa, char diag, int n, int ndiag, double *a, int lda, double *y, int incy);

void dtbmv_64(char uplo, char transa, char diag, long n, long ndiag, double *a, long lda, double *y, long incy);


PURPOSE

dtbmv performs one of the matrix-vector operations x := A*x, or x := A'*x, where x is an n element vector and A is an n by n unit, or non-unit, upper or lower triangular band matrix, with ( ndiag + 1 ) diagonals.


ARGUMENTS