本书以简洁的语言、丰富的实例系统地介绍了C语言与MATLAB接口函数(称之为:CMEX函数)的编程方法。用实例详细地介绍了MATLAB中所提供的数据类型在CMEX函数中的编程方法。这些数据类型主要包括:双精度(double)以及非双精度(single、uint8、uint16、uint32、uint64、int8、int16、int32、int64)的数值阵列(如:标量、矢量、矩阵及三维阵列)、字符串、structures阵列、cell阵列、sparse阵列等。
同时,介绍了如何在CMEX函数中实现调用MATLAB函数;如何用MATLAB本身所提供的BLAS库函数、LAPACK库函数实现CMEX函数编程;以及如何用外接Intel MKL库函数实现CMEX函数编程。并给出用CMEX函数实现MATLAB中的svd、eig、lu、chol、inv、det等数学函数功能的实例,这些库函数的使用可以明显提高运算速度。同时,本书附录还介绍了在CMEX函数中的错误语法示例、MEX库函数及MX库函数。
本书对CMEX函数的介绍全面,举例详尽。不仅能够成为MATLAB与MEX混合编程的工程人员的参考书,而且可以作为C语言编程者的参考书,同时也可以作为MATLAB培训的课程教材。
目录:
第1章 C-MEX函数介绍
1.1 MATLAB外部接口概述
1.2 maArray结构体
1.3 MATLAB数据类型
1.4 库函数介绍
第2章 编写编译链接C-MEX函数的方法
2.1 MEX指令
2.2 建立MEX环境
2.3 用MATLAB插件在MSVC环境中编写编译链接C-MEX函数
第3章 C-MEX函数的编写方法
3.1 C-MEX函数分析
3.2 标量
3.3 矢量
3.4 矩阵
3.5 三维数组
3.6 字符串
3.7 非双精度数据
3.8 调用MATLAB函数
3.9 Structures陈列
3.10 Cell陈列
3.11 Sparse陈列
第4章 C-MEX函数应用举例
4.1 复数的处理方法
4.2 实现MATLAB中sum函数功能
4.3 实现MATLAB中赋值功能
4.4 实现MATLAB中z=sum(x.*y)功能
4.5 实现MATLAB中z=alpha*x+y功能
第5章 利用BLAS函数编写C-MEX函数
5.1 BLAS函数介绍
5.2 用BLAS实现MATLAB中sum函数功能
5.3 用BLAS实现MATLAB中赋值功能
5.4 用BLAS实现MATLAB中z=sum(x.*y)功能
5.5 用BLAS实现MATLAB中z=alpha*x+y功能
6 利用LAPACK函数编写C-MEX函数
6.1 LAPACK函数介绍
6.2 用LAPACK函数介绍
6.3 用LAPACK实现MATLAB中LU分解
6.4 用LAPACK实现MATLAB中SVD分解
6.5 用LAPACK实现MATLAB中特征分解
6.6 用用LAPACK实现MATLAB中del功能
6.7 用LAPACK实现MATLAB中chol分解
第7章 灵活编写C-MEX函数的方法
7.1 复数complex结构
7.2 用zdotu函数及复数结构指针
7.3 用zaxpy函数及复数结构指针
7.4 建立自己的函数库
第8章 用INTEL MKL编写C-MEX函数
8.1 Intel MKL介绍
8.2 Intel MKL库函数的链接方法
8.3 用Intel MKL及复数结构指针实现
8.4 用Intel MKL及复数结构指针实现MATLAB中z=alpha*x+y功能
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !