F06SAF (ZGEMV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual

NAG Library Routine Document

F06SAF (ZGEMV)

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
    9  Example

1  Purpose

F06SAF (ZGEMV) computes the matrix-vector product for a complex general matrix, its transpose or its conjugate transpose.

2  Specification

SUBROUTINE F06SAF ( TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
INTEGER  M, N, LDA, INCX, INCY
COMPLEX (KIND=nag_wp)  ALPHA, A(LDA,*), X(*), BETA, Y(*)
CHARACTER(1)  TRANS
The routine may be called by its BLAS name zgemv.

3  Description

F06SAF (ZGEMV) performs one of the matrix-vector operations
y←αAx + βy ,   y←αATx + βy   or   y←αAHx + βy ,
where A is an m by n complex matrix, x and y are complex vectors, and α and β are complex 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←αAx+βy.
TRANS='T'
y←αATx+βy.
TRANS='C'
y←αAHx+βy.
Constraint: TRANS='N', 'T' or 'C'.
2:     M – INTEGERInput
On entry: m, the number of rows of the matrix A.
Constraint: M≥0.
3:     N – INTEGERInput
On entry: n, the number of columns of the matrix A.
Constraint: N≥0.
4:     ALPHA – COMPLEX (KIND=nag_wp)Input
On entry: the scalar α.
5:     A(LDA,*) – COMPLEX (KIND=nag_wp) arrayInput
Note: the second dimension of the array A must be at least N.
On entry: the m by n matrix A.
6:     LDA – INTEGERInput
On entry: the first dimension of the array A as declared in the (sub)program from which F06SAF (ZGEMV) is called.
Constraint: LDA≥ max1,M .
7:     X(*) – COMPLEX (KIND=nag_wp) arrayInput
Note: the dimension of the array X must be at least max1, 1+ N-1 ×INCX if TRANS='N' and at least max1, 1+ M-1 ×INCX if TRANS='T' or 'C'.
On entry: the vector x.
If TRANS='N',
  • if INCX>0, xi must be stored in X1+i-1×INCX, for i=1,2,…,N;
  • if INCX<0, xi must be stored in X1-N-i×INCX, for i=1,2,…,N.
If TRANS='T' or 'C',
  • if INCX>0, xi must be stored in X1+i-1×INCX, for i=1,2,…,M;
  • if INCX<0, xi must be stored in X1-M-i×INCX, for i=1,2,…,M.
8:     INCX – INTEGERInput
On entry: the increment in the subscripts of X between successive elements of x.
Constraint: INCX≠0.
9:     BETA – COMPLEX (KIND=nag_wp)Input
On entry: the scalar β.
10:   Y(*) – COMPLEX (KIND=nag_wp) arrayInput/Output
Note: the dimension of the array Y must be at least max1,1+M-1 ×INCY if TRANS='N' and at least max1,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, yi must be stored in Y1+i-1×INCY, for i=1,2,…,M;
  • if INCY<0, yi must be stored in Y1-M-i×INCY, for i=1,2,…,M.
If TRANS='T' or 'C',
  • if INCY>0, yi must be stored in Y1+i-1×INCY, for i=1,2,…,N;
  • if INCY<0, yi must be stored in Y1-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.
11:   INCY – INTEGERInput
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.

F06SAF (ZGEMV) (PDF version)
F06 Chapter Contents
F06 Chapter Introduction
NAG Library Manual

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