LAPACK  3.9.0
LAPACK: Linear Algebra PACKage

◆ F77_strmv()

void F77_strmv ( int *  layout,
char *  uplow,
char *  transp,
char *  diagn,
int *  n,
float *  a,
int *  lda,
float *  x,
int *  incx 
)

Definition at line 63 of file c_sblas2.c.

64  {
65  float *A;
66  int i,j,LDA;
67  CBLAS_TRANSPOSE trans;
68  CBLAS_UPLO uplo;
69  CBLAS_DIAG diag;
70 
71  get_transpose_type(transp,&trans);
72  get_uplo_type(uplow,&uplo);
73  get_diag_type(diagn,&diag);
74 
75  if (*layout == TEST_ROW_MJR) {
76  LDA = *n+1;
77  A = ( float* )malloc( (*n)*LDA*sizeof( float ) );
78  for( i=0; i<*n; i++ )
79  for( j=0; j<*n; j++ )
80  A[ LDA*i+j ]=a[ (*lda)*j+i ];
81  cblas_strmv(CblasRowMajor, uplo, trans, diag, *n, A, LDA, x, *incx);
82  free(A);
83  }
84  else if (*layout == TEST_COL_MJR)
85  cblas_strmv(CblasColMajor, uplo, trans, diag, *n, a, *lda, x, *incx);
86  else {
87  cblas_strmv(UNDEFINED, uplo, trans, diag, *n, a, *lda, x, *incx);
88  }
89 }
Here is the call graph for this function:
CBLAS_TRANSPOSE
CBLAS_TRANSPOSE
Definition: cblas.h:20
UNDEFINED
#define UNDEFINED
Definition: cblas_test.h:19
CBLAS_DIAG
CBLAS_DIAG
Definition: cblas.h:22
LDA
#define LDA
Definition: example_user.c:12
cblas_strmv
void cblas_strmv(CBLAS_LAYOUT layout, CBLAS_UPLO Uplo, CBLAS_TRANSPOSE TransA, CBLAS_DIAG Diag, const int N, const float *A, const int lda, float *X, const int incX)
Definition: cblas_strmv.c:11
CblasColMajor
Definition: cblas.h:19
CblasRowMajor
Definition: cblas.h:19
get_uplo_type
void get_uplo_type(char *type, CBLAS_UPLO *uplo)
Definition: auxiliary.c:18
TEST_COL_MJR
#define TEST_COL_MJR
Definition: cblas_test.h:16
TEST_ROW_MJR
#define TEST_ROW_MJR
Definition: cblas_test.h:12
CBLAS_UPLO
CBLAS_UPLO
Definition: cblas.h:21
get_diag_type
void get_diag_type(char *type, CBLAS_DIAG *diag)
Definition: auxiliary.c:25
get_transpose_type
void get_transpose_type(char *type, CBLAS_TRANSPOSE *trans)
Definition: auxiliary.c:8