184 SUBROUTINE dgbmv(TRANS,M,N,KL,KU,ALPHA,A,LDA,X,INCX,BETA,Y,INCY)
191 DOUBLE PRECISION ALPHA,BETA
192 INTEGER INCX,INCY,KL,KU,LDA,M,N
196 DOUBLE PRECISION A(LDA,*),X(*),Y(*)
202 DOUBLE PRECISION ONE,ZERO
203 parameter(one=1.0d+0,zero=0.0d+0)
206 DOUBLE PRECISION TEMP
207 INTEGER I,INFO,IX,IY,J,JX,JY,K,KUP1,KX,KY,LENX,LENY
223 IF (.NOT.lsame(trans,
'N') .AND. .NOT.lsame(trans,
'T') .AND.
224 + .NOT.lsame(trans,
'C'))
THEN
226 ELSE IF (m.LT.0)
THEN
228 ELSE IF (n.LT.0)
THEN
230 ELSE IF (kl.LT.0)
THEN
232 ELSE IF (ku.LT.0)
THEN
234 ELSE IF (lda.LT. (kl+ku+1))
THEN
236 ELSE IF (incx.EQ.0)
THEN
238 ELSE IF (incy.EQ.0)
THEN
248.EQ..OR..EQ..OR.
IF ((M0) (N0)
249.EQ..AND..EQ.
+ ((ALPHAZERO) (BETAONE))) RETURN
254 IF (LSAME(TRANS,'n
')) THEN
264 KX = 1 - (LENX-1)*INCX
269 KY = 1 - (LENY-1)*INCY
277.NE.
IF (BETAONE) THEN
279.EQ.
IF (BETAZERO) THEN
290.EQ.
IF (BETAZERO) THEN
303.EQ.
IF (ALPHAZERO) RETURN
305 IF (LSAME(TRANS,'n
')) THEN
314 DO 50 I = MAX(1,J-KU),MIN(M,J+KL)
315 Y(I) = Y(I) + TEMP*A(K+I,J)
324 DO 70 I = MAX(1,J-KU),MIN(M,J+KL)
325 Y(IY) = Y(IY) + TEMP*A(K+I,J)
329.GT.
IF (JKU) KY = KY + INCY
341 DO 90 I = MAX(1,J-KU),MIN(M,J+KL)
342 TEMP = TEMP + A(K+I,J)*X(I)
344 Y(JY) = Y(JY) + ALPHA*TEMP
352 DO 110 I = MAX(1,J-KU),MIN(M,J+KL)
353 TEMP = TEMP + A(K+I,J)*X(IX)
356 Y(JY) = Y(JY) + ALPHA*TEMP
358.GT.
IF (JKU) KX = KX + INCX
subroutine dgbmv(trans, m, n, kl, ku, alpha, a, lda, x, incx, beta, y, incy)
DGBMV