1、MATLAB外部接口主要包括3部分内容:
(1)、MEX文件:外部程序调用接口;
MEX文件是MATLAB解释器可以自动加载和运行的动态链接过程,MATLAB可以像调用内部函数一样调用它们。用户通过MEX文件可以完成以下功能:
可以在MATLAB系统中像调用MATLAB的内建函数一样调用已经存在的用C语言和Fortran语言编写完成的算法,而无需将这些程序重新编写为MATLAB的M文件,从而使资源得到充分利用;
当使用MATLAB进行大规模的数据处理时,MATLAB往往由于执行效率的问题而显得力不从心,这时可以使用其他高级编程语言进行算法的设计,然后在MATLAB中调用,从而大大地提高数据处理的效率;
通过MEX文件,用户可以直接对硬件进行编程,进一步扩展了MATLAB的应用领域;
(2)、MAT文件应用程序:数据输入输出接口;
MATLAB文件与其他编程环境的数据交换是通过MAT文件来实现的。MAT文件是MATLAB数据存储默认的文件格式,它的文件名是以.mat为后缀;
MAT数据格式是MATLAB的数据存储的标准格式,它把文件存储为二进制格式。MAT文件由文件头和紧跟其后的数据组成。其中,MAT文件的文件头又由以下几部分组成:MATLAB版本信息、操作平台的信息、文件创建的时间。我们可以从文本编辑器中打开一个MAT文件,查看器文件头的信息。变量的数据类型包括MATLAB中能够使用到的大部分数据类型,包括字符串、矩阵、多维阵列、结构和单元阵列。MATLAB以字节流的方式顺序地将数据写入到MAT文件中去,存储在硬盘上的数据是以二进制的格式保存。
在MATLAB中,可以直接使用save命令存储在当前工作内存区中的数据,把这些数据存储成二进制的MAT文件。Load命令则执行相反的操作,它把磁盘中的MAT文件的数据读取到MATLAB工作区中。
建立mat文件:(1)、打开matlab,点击左上角文件(File),然后点击新建(new),选择变量(Variable),就新建了一个mat文件。点击你新建的文件,即可打开一个编辑器,输入数据即可;(2)、用save直接对数据进行保存。
读取mat文件:load filename.mat
(3)、MATLAB计算引擎函数库;
MATLAB引擎函数库是MATLAB提供的一系列允许用户在别的程序中与MATLAB交互的函数库和程序库。它允许用户在自己的C语言或Fortran语言应用程序中对MATLAB进行调用,将MATLAB作为一个计算引擎使用,让其在后台运行,完成复杂的矩阵计算,简化前台用户程序设计的任务。在用户启动MATLAB引擎时,相当于启动了另外一个MATLAB进程,将其在后台运行。用户应用程序通过MATLAB引擎函数库中提供的函数完成与MATLAB引擎之间进行数据交换和命令传送的任务。
通过MATLAB引擎可以完成以下功能:
可以将MATLAB作为一个功能强大的和可编程的数学函数库,调用MATLAB中大量的数学计算函数,完成复杂的计算任务。例如,对一个矩阵进行转置或计算快速傅里叶变换,这对于普通的C语言或Fortran语言编程将是非常麻烦的,而使用了MATLAB计算引擎之后,仅仅几行语句就可以完成任务。当MATLAB工作在这种方式下时,MATLAB就是一个强有力的、编程灵活且高效的数学函数库;
利用MATLAB的计算高效和矩阵处理灵活的特点,结合其他高级语言循环处理快、图像界面编程简单的优点,可以为一个特定的任务构建一个高效友善的交互界面。这种开发模式,将极大地缩短应用程序开发周期。
MATLAB计算引擎工作在后台,工作时不需要MATLAB完全与程序相连,只需要以小部分引擎函数库相连即可,从而节省了大量系统资源,使应用程序整体性能更好。而且用户编制的应用程序可以独立于MATLAB的解释性执行环境而执行,真正生成独立可执行的应用程序。使用MATLAB引擎不需要经过特别的系统配置,在一般情况下,对MEX文件的系统配置完成后,对MATLAB引擎的系统配置也基本完成,无需额外的步骤就可以对MATLAB引擎程序进行编译了。
除上述3部分外,还包括MATLAB与其他开发平台的接口,其中这些开发平台主要包括Visual C++、Delphi、Visual Basic等。