欢迎来到天天文库
浏览记录
ID:57599671
大小:274.50 KB
页数:18页
时间:2020-08-28
《MATLAB 实用教程:第8章 MATLAB高级应用.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章MATLAB高级应用8.1MATLAB应用接口8.1.1MEX文件MEX文件具有以下几个方面的应用:(1)对于已存在的C或FORTRAN子程序,可以通过MEX文件在MATLAB环境中直接调用,而不必重新编写M文件。(2)由于MATLAB是解释性语言,运行如for等循环体时,会出现速度十分缓慢的现象,为了能提高速度,往往要使用MEX程序。(3)对于A/D、D/A卡,或其它PC硬件,可以直接用MEX文件进行访问。(4)利用MEX文件,可以使用如Windows用户图形界面等资源。1.MEX文件系统设置下面采用MicrosoftVi
2、sualC/C++6.0编译器,在命令窗口使用“mex-setup”命令,对MEX文件编译器进行配置:>>mex-setup则会出现如下提示:Pleasechooseyourcompilerforbuildingexternalinterface(MEX)files:Wouldyoulikemextolocateinstalledcompilers[y]/n?y让用户选择是否同意mex命令自动定位已经安装的编译器,输入“y”后,回车出现如下提示:Selectacompiler:[1]DigitalVisualFortranvers
3、ion6.0inC:ProgramFilesMicrosoftVisualStudio[2]LccCversion2.4inD:MATLAB6P1syslcc[3]MicrosoftVisualC/C++version6.0inD:ProgramFilesMicrosoftVisualStudio[0]None提供用户选择编译器作为默认的MEX文件编译器,通过键盘输入“3”后,回车出现如下提示:Pleaseverifyyourchoices:Compiler:MicrosoftVisualC/C++6.0Locati
4、on:D:ProgramFilesMicrosoftVisualStudioArethesecorrect?([y]/n):确认所选择的编译器,通过键盘输入“y”后,回车出现如下提示:Thedefaultoptionsfile:"D:DocumentsandSettingsZJDCYApplicationDataMathWorksMATLABR12mexopts.bat"isbeingupdatedfromD:MATLAB6P1BINWIN32mexoptsmsvc60opts.bat...Instal
5、lingtheMATLABVisualStudioadd-in...UpdatedD:ProgramFilesMicrosoftVisualStudiocommonmsdev98templateMATLABWizard.awxfromD:MATLAB6P1BINWIN32MATLABWizard.awxUpdatedD:ProgramFilesMicrosoftVisualStudiocommonmsdev98templateMATLABWizard.hlpfromD:MATLAB6P1BIN
6、WIN32MATLABWizard.hlpUpdatedD:ProgramFilesMicrosoftVisualStudiocommonmsdev98addinsMATLABAddin.dllfromD:MATLAB6P1BINWIN32MATLABAddin.dllMergedD:MATLAB6P1BINWIN32usertype.datwithD:ProgramFilesMicrosoftVisualStudiocommonmsdev98binusertype.dat则表示编译器成功
7、配置。2.测试配置在MATLAB环境的当前目录浏览器窗口中,将MATLAB的externexamplesmex目录设置为当前目录,然后在命令窗口中输入:mexyprime.c则在externexamplesmex目录下,就生成了“yprime.dll”文件,查看该yprime.dll文件的信息,在命令窗口中输入:>>whichyprimeD:MATLAB6p1externexamplesmexyprime.dll并调用yprime.dll文件:>>yprime(1,1:2:7)ans=3.000014.99257
8、.0000-1.03773.C语言MEX文件的构成程序的构成主要由入口子程序和计算功能子程序两部分组成。(1)入口子程序第一部分入口子程序的作用是在MATLAB系统与被调用的外部子程序之间建立通信联系。入口子程序必须是mexFunction,其构成
此文档下载收益归作者所有