⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cblas_example2.c

📁 基本的C语言线性代数函数库,在linux下可直接编译;在windows下要显示地申明包含
💻 C
字号:
/* cblas_example2.c */#include <stdio.h>#include <stdlib.h>#include "cblas.h"#include "cblas_f77.h"#define INVALID -1int main (int argc, char **argv ){   int rout=-1,info=0,m,n,k,lda,ldb,ldc;   double A[2] = {0.0,0.0},           B[2] = {0.0,0.0},           C[2] = {0.0,0.0},           ALPHA=0.0, BETA=0.0;             if (argc > 2){      rout = atoi(argv[1]);      info = atoi(argv[2]);   }      if (rout == 1) {      if (info==0) {         printf("Checking if cblas_dgemm fails on parameter 4\n");         cblas_dgemm( CblasRowMajor,  CblasTrans, CblasNoTrans, INVALID, 0, 0,                   ALPHA, A, 1, B, 1, BETA, C, 1 );      }      if (info==1) {         printf("Checking if cblas_dgemm fails on parameter 5\n");         cblas_dgemm( CblasRowMajor,  CblasNoTrans, CblasTrans, 0, INVALID, 0,                   ALPHA, A, 1, B, 1, BETA, C, 1 );      }      if (info==2) {         printf("Checking if cblas_dgemm fails on parameter 9\n");         cblas_dgemm( CblasRowMajor,  CblasNoTrans, CblasNoTrans, 0, 0, 2,                   ALPHA, A, 1, B, 1, BETA, C, 2 );      }      if (info==3) {         printf("Checking if cblas_dgemm fails on parameter 11\n");         cblas_dgemm( CblasRowMajor,  CblasNoTrans, CblasNoTrans, 0, 2, 2,                   ALPHA, A, 1, B, 1, BETA, C, 1 );      }   } else {      if (info==0) {         printf("Checking if F77_dgemm fails on parameter 3\n");         m=INVALID; n=0; k=0; lda=1; ldb=1; ldc=1;         F77_dgemm( "T", "N", &m, &n, &k,                   &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );      }      if (info==1) {         m=0; n=INVALID; k=0; lda=1; ldb=1; ldc=1;         printf("Checking if F77_dgemm fails on parameter 4\n");         F77_dgemm( "N", "T", &m, &n, &k,                   &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );      }      if (info==2) {         printf("Checking if F77_dgemm fails on parameter 8\n");         m=2; n=0; k=0; lda=1; ldb=1; ldc=2;         F77_dgemm( "N", "N" , &m, &n, &k,                   &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );      }      if (info==3) {         printf("Checking if F77_dgemm fails on parameter 10\n");         m=0; n=0; k=2; lda=1; ldb=1; ldc=1;         F77_dgemm( "N", "N" , &m, &n, &k,                   &ALPHA, A, &lda, B, &ldb, &BETA, C, &ldc );      }   }             return 1;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -