1ZLA_GEAMV(1)LAPACK routine (version 3.2) ZLA_GEAMV(1)
2
3
4
6 ZLA_GEAMV - performs one of the matrix-vector operations y :=
7 alpha*abs(A)*abs(x) + beta*abs(y),
8
10 SUBROUTINE ZLA_GEAMV ( TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y,
11 INCY )
12
13 IMPLICIT NONE
14
15 DOUBLE PRECISION ALPHA, BETA
16
17 INTEGER INCX, INCY, LDA, M, N
18
19 INTEGER TRANS
20
21 COMPLEX*16 A( LDA, * ), X( * )
22
23 DOUBLE PRECISION Y( * )
24
26 ZLA_GEAMV performs one of the matrix-vector operations
27 or y := alpha*abs(A)'*abs(x) + beta*abs(y),
28 where alpha and beta are scalars, x and y are vectors and A is an m by
29 n matrix.
30 This function is primarily used in calculating error bounds. To pro‐
31 tect against underflow during evaluation, components in the resulting
32 vector are perturbed away from zero by (N+1) times the underflow
33 threshold. To prevent unnecessarily large errors for block-structure
34 embedded in general matrices,
35 "symbolically" zero components are not perturbed. A zero entry is con‐
36 sidered "symbolic" if all multiplications involved in computing that
37 entry have at least one zero multiplicand.
38
40 TRANS - INTEGER
41 On entry, TRANS specifies the operation to be performed as fol‐
42 lows:
43
44 BLAS_NO_TRANS y := alpha*abs(A)*abs(x) + beta*abs(y)
45 BLAS_TRANS y := alpha*abs(A')*abs(x) +
46 beta*abs(y)
47 BLAS_CONJ_TRANS y := alpha*abs(A')*abs(x) +
48 beta*abs(y) Unchanged on exit.
49
50 M - INTEGER
51 On entry, M specifies the number of rows of the matrix A. M
52 must be at least zero. Unchanged on exit.
53
54 N - INTEGER
55 On entry, N specifies the number of columns of the matrix A. N
56 must be at least zero. Unchanged on exit.
57
58 ALPHA - DOUBLE PRECISION
59 On entry, ALPHA specifies the scalar alpha. Unchanged on exit.
60
61 A - COMPLEX*16 array of DIMENSION ( LDA, n )
62 Before entry, the leading m by n part of the array A must con‐
63 tain the matrix of coefficients. Unchanged on exit.
64
65 LDA - INTEGER
66 On entry, LDA specifies the first dimension of A as declared in
67 the calling (sub) program. LDA must be at least max( 1, m ).
68 Unchanged on exit.
69
70 X - COMPLEX*16 array of DIMENSION at least
71 ( 1 + ( n - 1 )*abs( INCX ) ) when TRANS = 'N' or 'n' and at
72 least ( 1 + ( m - 1 )*abs( INCX ) ) otherwise. Before entry,
73 the incremented array X must contain the vector x. Unchanged on
74 exit.
75
76 INCX - INTEGER
77 On entry, INCX specifies the increment for the elements of X.
78 INCX must not be zero. Unchanged on exit.
79
80 BETA - DOUBLE PRECISION
81 On entry, BETA specifies the scalar beta. When BETA is supplied
82 as zero then Y need not be set on input. Unchanged on exit.
83
84 Y - DOUBLE PRECISION array of DIMENSION at least
85 ( 1 + ( m - 1 )*abs( INCY ) ) when TRANS = 'N' or 'n' and at
86 least ( 1 + ( n - 1 )*abs( INCY ) ) otherwise. Before entry
87 with BETA non-zero, the incremented array Y must contain the
88 vector y. On exit, Y is overwritten by the updated vector y.
89
90 INCY - INTEGER
91 On entry, INCY specifies the increment for the elements of Y.
92 INCY must not be zero. Unchanged on exit. Level 2 Blas rou‐
93 tine.
94
95
96
97 LAPACK routine (version 3.2) November 2008 ZLA_GEAMV(1)