LAPACK 3.12.1
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ F77_zgbmv()

void F77_zgbmv ( CBLAS_INT * layout,
char * transp,
CBLAS_INT * m,
CBLAS_INT * n,
CBLAS_INT * kl,
CBLAS_INT * ku,
CBLAS_TEST_ZOMPLEX * alpha,
CBLAS_TEST_ZOMPLEX * a,
CBLAS_INT * lda,
CBLAS_TEST_ZOMPLEX * x,
CBLAS_INT * incx,
CBLAS_TEST_ZOMPLEX * beta,
CBLAS_TEST_ZOMPLEX * y,
CBLAS_INT * incy )

Definition at line 45 of file c_zblas2.c.

52 {
53
55 CBLAS_INT i,j,irow,jcol,LDA;
56 CBLAS_TRANSPOSE trans;
57
58 get_transpose_type(transp, &trans);
59 if (*layout == TEST_ROW_MJR) {
60 LDA = *ku+*kl+2;
61 A=( CBLAS_TEST_ZOMPLEX* )malloc((*n+*kl)*LDA*sizeof(CBLAS_TEST_ZOMPLEX));
62 for( i=0; i<*ku; i++ ){
63 irow=*ku+*kl-i;
64 jcol=(*ku)-i;
65 for( j=jcol; j<*n; j++ ){
66 A[ LDA*(j-jcol)+irow ].real=a[ (*lda)*j+i ].real;
67 A[ LDA*(j-jcol)+irow ].imag=a[ (*lda)*j+i ].imag;
68 }
69 }
70 i=*ku;
71 irow=*ku+*kl-i;
72 for( j=0; j<*n; j++ ){
73 A[ LDA*j+irow ].real=a[ (*lda)*j+i ].real;
74 A[ LDA*j+irow ].imag=a[ (*lda)*j+i ].imag;
75 }
76 for( i=*ku+1; i<*ku+*kl+1; i++ ){
77 irow=*ku+*kl-i;
78 jcol=i-(*ku);
79 for( j=jcol; j<(*n+*kl); j++ ){
80 A[ LDA*j+irow ].real=a[ (*lda)*(j-jcol)+i ].real;
81 A[ LDA*j+irow ].imag=a[ (*lda)*(j-jcol)+i ].imag;
82 }
83 }
84 cblas_zgbmv( CblasRowMajor, trans, *m, *n, *kl, *ku, alpha, A, LDA, x,
85 *incx, beta, y, *incy );
86 free(A);
87 }
88 else if (*layout == TEST_COL_MJR)
89 cblas_zgbmv( CblasColMajor, trans, *m, *n, *kl, *ku, alpha, a, *lda, x,
90 *incx, beta, y, *incy );
91 else
92 cblas_zgbmv( UNDEFINED, trans, *m, *n, *kl, *ku, alpha, a, *lda, x,
93 *incx, beta, y, *incy );
94}
void cblas_zgbmv(CBLAS_LAYOUT layout, CBLAS_TRANSPOSE TransA, const CBLAS_INT M, const CBLAS_INT N, const CBLAS_INT KL, const CBLAS_INT KU, const void *alpha, const void *A, const CBLAS_INT lda, const void *X, const CBLAS_INT incX, const void *beta, void *Y, const CBLAS_INT incY)
Definition cblas_zgbmv.c:12
CBLAS_TRANSPOSE
Definition cblas.h:40
@ CblasColMajor
Definition cblas.h:39
@ CblasRowMajor
Definition cblas.h:39
#define CBLAS_INT
Definition cblas.h:24
#define UNDEFINED
Definition cblas_test.h:28
#define TEST_ROW_MJR
Definition cblas_test.h:21
#define TEST_COL_MJR
Definition cblas_test.h:25
void get_transpose_type(char *type, CBLAS_TRANSPOSE *trans)
Definition auxiliary.c:8
Here is the call graph for this function: