MEX 函数源代码示例表
下列各表包含用于创建示例 MEX 函数的源代码文件的列表。您可将这些示例作为起点来创建您自己的 MEX 函数。这些表包含以下信息。
示例名称 - 一个链接,您可以通过该链接直接在 MATLAB® 编辑器中打开示例源文件。您可以使用任何代码开发编辑器来创建源 MEX 文件。
示例子文件夹 -
matlabroot
/extern/examples
中包含示例的子文件夹。将文件复制到可写文件夹时使用此子文件夹名称。描述 - 描述该示例。
详细信息 - 指向有关描述或使用该示例的主题的链接,或指向示例中使用的 API 函数的链接。
快速入门
使用 mex
命令编译示例。请确保您安装了 MATLAB 支持的编译器。要验证为源代码语言 lang
选择的编译器,请键入:
mex -setup lang
使用以下命令语法将文件复制到路径上的一个可写文件夹中。filename
是示例的名称,foldername
是子文件夹名称。
copyfile(fullfile(matlabroot,'extern','examples','foldername','filename'),'.','f')
例如,要复制 arrayProduct.c
,请键入:
copyfile(fullfile(matlabroot,'extern','examples','mex','arrayProduct.c'),'.','f')
C、C++ 和 Fortran MEX 函数
要在 MATLAB 中或在您的操作系统提示符下编译示例 MEX 函数,请使用以下命令语法。filename
是示例名称,release-option
指定示例使用的 API。有关 MATLAB API 的信息,请参阅 选择 MEX 应用程序。
mex -v -release-option filename
MEX 函数调用 Fortran 子例程
此中的示例从 MEX 函数调用 LAPACK 或 BLAS 函数。这些示例链接到 Fortran 库 mwlapack
或 mwblas
或者同时链接到这两个库。要编译 MEX 函数,请按照详细信息列中列出的主题中的说明进行操作。
示例名称 | 示例子文件夹 | 描述 | 更多信息 |
---|---|---|---|
dotProductComplexIC.c dotProductComplexIC.F dotProductComplex.c | refbook | 为通过 C 或 Fortran MEX 文件调用的函数处理 Fortran 复数返回类型。dotProductComplexIC.c 和 dotProductComplexIC.F 使用交错式复矩阵 API。dotProductComplex.c 使用分离式复矩阵 API。 | Handle Fortran Complex Return Type — dotProductComplex |
matrixDivide.c | refbook | 调用 LAPACK 函数。 | 保留修改后的输入值 |
matrixDivideComplex.c | refbook | 使用复数调用 LAPACK 函数。 | Pass Complex Variables — matrixDivideComplex |
matrixMultiply.c | refbook | 调用 BLAS 函数。 | 将参量从 C/C++ 程序传递给 Fortran 函数 |
utdu_slv.c | refbook | 将 LAPACK 用于对称不定因式分解。 | Symmetric Indefinite Factorization Using LAPACK — utdu_slv |