tpmv(3F)

dtpmv, stpmv, ztpmv, ctpmv, dtpsv, stpsv, ztpsv, ctpsv - BLAS Level Two Matrix-Vector Product and Solution of System of Equations

As shipped in IRIX 6.5. First release of IRIX 6.5.

NAME
     dtpmv, stpmv, ztpmv, ctpmv, dtpsv, stpsv, ztpsv, ctpsv - BLAS Level Two
     Matrix-Vector Product  and  Solution of System of Equations


FORTRAN 77 SYNOPSIS
     subroutine dtpmv( uplo, trans, diag, n, ap, x, incx )
     subroutine dtpsv( uplo, trans, diag, n, ap, x, incx )
           character*1        uplo, trans, diag
           integer            n, incx
           double precision   ap(*), x(*)

     subroutine stpmv( uplo, trans, diag, n, ap, x, incx )
     subroutine stpsv( uplo, trans, diag, n, ap, x, incx )
           character*1        uplo, trans, diag
           integer            n, incx
           real               ap(*), x(*)

     subroutine ztpmv( uplo, trans, diag, n, ap, x, incx )
     subroutine ztpsv( uplo, trans, diag, n, ap, x, incx )
           character*1        uplo, trans, diag
           integer            n, incx
           double complex     ap(*), x(*)

     subroutine ctpmv( uplo, trans, diag, n, ap, x, incx )
     subroutine ctpsv( uplo, trans, diag, n, ap, x, incx )
           character*1        uplo, trans, diag
           integer            n, incx
           complex            ap(*), x(*)


FORTRAN 77 SYNOPSIS
     void dtpmv( uplo, trans, diag, n, ap, x, incx )
     void dtpsv( uplo, trans, diag, n, ap, x, incx )
           MatrixTriangle        uplo;
           MatrixTranspose       trans;
           MatrixUnitTriangular  diag;
           Integer               n, incx;
           double               (*ap[ n ], (*x)[ n ];

     void stpmv( uplo, trans, diag, n, ap, x, incx )
     void stpsv( uplo, trans, diag, n, ap, x, incx )
           MatrixTriangle        uplo;
           MatrixTranspose       trans;
           MatrixUnitTriangular  diag;
           Integer               n, incx;
           float                (*ap[ n ], (*x)[ n ];

     void ztpmv( uplo, trans, diag, n, ap, x, incx )
     void ztpsv( uplo, trans, diag, n, ap, x, incx )
           MatrixTriangle        uplo;
           MatrixTranspose       trans;
           MatrixUnitTriangular  diag;
           Integer               n, incx;
           Zomplex               (*ap[ n ], (*x)[ n ];

     void ctpmv( uplo, trans, diag, n, ap, x, incx )
     void ctpsv( uplo, trans, diag, n, ap, x, incx )
           MatrixTriangle        uplo;
           MatrixTranspose       trans;
           MatrixUnitTriangular  diag;
           Integer               n, incx;
           Complex               (*ap[ n ], (*x)[ n ];



DESCRIPTION
     dtpmv, stpmv, ztpmv and ctpmv perform one of the matrix-vector operations

           x := A*x,   or   x := A'*x,   or   x := conjg( A' )*x,

     where x is an n element vector and A is an n by n unit, or non-unit,
     upper or lower triangular matrix, supplied in packed form.

     dtpsv, stpsv, ztpsv and ctpsv solve one of the systems of equations

           A*x = b,   or   A'*x = b,   or   conjg( A' )*x = b,

     where b and x are n element vectors and A is an n by n unit, or non-unit,
     upper or lower triangular matrix, supplied in packed form. No test for
     singularity or near-singularity is included in this routine. Such tests
     must be performed before calling this routine.


PARAMETERS
     uplo    On entry, uplo specifies whether the matrix is an upper or lower
             triangular matrix as follows:

                  FORTRAN
                  uplo = 'U' or 'u'        A is an upper triangular matrix.
                  uplo = 'L' or 'l'        A is a lower triangular matrix.

                  C
                  uplo = UpperTriangle     A is an upper triangular matrix.
                  uplo = LowerTriangle     A is a lower triangular matrix.

             Unchanged on exit.

     trans   On entry, trans specifies the operation to be

                  FORTRAN
                  trans = 'N' or 'n'       x := A*x /  A*x = b.
                  trans = 'T' or 't'       x := A'*x / A'*x = b.
                  trans = 'C' or 'c'       x := conjg( A' )*x  /
                                                conjg( A' )*x = b.

                  C
                  trans = NoTranspose           x := A*x /  A*x = b.
                  trans = Transpose             x := A'*x / A'*x = b.
                  trans = ConjugateTranspose    x := conjg( A' )*x
                                                conjg( A' )*x = b.

             For real value matrices, trans='C' and trans='T' has the same
             meaning.

             Unchanged on exit.

     diag    On entry, diag specifies whether or not A is unit triangular as
             follows:

                  FORTRAN
                  diag = 'U' or 'u'   A is assumed to be unit triangular.
                  diag = 'N' or 'n'   A is not assumed to be unit triangular.

                  C
                  diag = UnitTriangular    A is assumed to be unit
                                           triangular.
                  diag = NotUnitTriangular A is not assumed to be unit
                                           triangular.

             Unchanged on exit.

     n       On entry, n specifies the order of the matrix A. n must be at
             least zero.
             Unchanged on exit.

     ap      Array of size at least ( ( n*( n + 1 ) )/2 ).
             Before entry with uplo = 'U' or 'u' or the array ap must contain
             the upper triangular matrix packed sequentially, column by
             column, so that ap( 1 ) contains A( 1, 1 ), ap( 2 ) and ap( 3 )
             contain A( 1, 2 ) and A( 2, 2 ) respectively, and so on.

             Before entry with UPLO = 'L' or 'l' or , the array ap must
             contain the lower triangular matrix packed sequentially, column
             by column, so that ap( 1 ) contains A( 1, 1 ), ap( 2 ) and ap( 3
             ) contain A( 2, 1 ) and A( 3, 1 ) respectively, and so on.

             Note that when diag = 'U' or 'u' or , the elements of a
             corresponding to the diagonal elements of the matrix A are not
             referenced either, but are assumed to be unity.

             Unchanged on exit.

     x       Array of size at least ( 1 + ( n - 1 )*abs( incx ) ). Before
             entry, the incremented array x must contain the n element vector
             x. On exit, x is overwritten with the transformed/solution vector
             x.

     incx    On entry, incx specifies the increment for the elements of x.
             incx must not be zero.
             Unchanged on exit.


AUTHORS
          Jack Dongarra, Argonne National Laboratory.
          Iain Duff, AERE Harwell.
          Jeremy Du Croz, Numerical Algorithms Group Ltd.
          Sven Hammarling, Numerical Algorithms Group Ltd.