设为首页   加入最爱           最新更新:全方位英文文章资料库
 
资料坊搜索: 标题 全文     
Matlab 编译器2.0概述
   首页>>YesizeCOM>>电脑技能坊>>MATLAB>>正文       
 
广告招租,e-mail:yesize@hotmail.com

广告招租,e-mail:yesize@hotmail.com


12 MATLAB编译器和API

几乎所有使用过 MATLAB 的科技人员,无不为该软件的简洁、便捷和功能之强大和可靠所震撼,同时也对 MATLAB 产生了新的期望:一,希望程序能运行得更快;二,希望获得可摆脱 MATLAB 环境而独立运行的可执行软件;三,希望从其他“非 MATLAB ”的外部程序中调用 MATLAB 。

本章前 6 节介绍 MATLAB 版编译器( Compiler )。由于 1.2 版与 2.0 版差异较大,又由于 2.0 版缺少 1.2 版具有的优化功能,因此内容安排上将兼顾地论及两个版本。值得指出的是:除 Mathworks 外,还有其他一些公司生产的编译器,其中比较著名的是 MathTools 公司的 Mediva ;据该公司自称,性能优于 Mathworks 的,且具有绘图功能。

本章第 7 节论及 API 应用程序接口,扼要地介绍不同平台间的数据传送和 MATLAB 引擎技术。节后算例演示了,如何从外部调用 MATLAB 引擎。


12.1 编译器2.0概述
12.1.3 编译器2.0的局限性
12.1.4 把脚本文件改写为函数文件
【例 12.1.4 -1 】有一个绘圆的 M 脚本文件 circle.m 如下。希望获得一个 MEX 绘圆程序。

(1)原始的绘圆脚本文件
[circle.m]
clf;r=2;t=0:pi/100:2*pi;x=r*exp(i*t);
plot(x, r* );axis( square )

(2)对这脚本文件直接编译将因错误而失败
mcc -x circle
??? Error: File "circle" is a Script M-file and cannot be compiled with the current Compiler.
Error in ==> H:\MATLAB53\toolbox\compiler\mcc.dll

(3)把脚本文件改写成函数文件。
[circle_f.m] :
function circle_f(r)
clf;t=0:pi/100:2*pi;x=r*exp(i*t);
plot(x, r* );axis( square )

(4)再对 circle_f.m 进行编译,将顺利通过。
mcc -x circle_f %mcc 是编译指令,详见 12.4 节。

(5)运行生成的 MEX 文件 circle_f.dll
circle_f(0.5) % 调用 circle_f 绘制一半径为 0.5 的圆
which circle_f % 查询所调用的 circle_f 的路径全称。
d:\mywork\circle_f.dll


图 12.1.4 -1 MEX 文件 circle_f.dll 所画的圆


上一篇:Matlab 图形用户界面设计工具 下一篇:Matlab 编译器的安装和配置

版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com
  热门小游戏分类 
射击小游戏 连连看小游戏
台球小游戏 成人小游戏
CS小游戏 化妆小游戏
赛车小游戏 休闲小游戏
篮球小游戏 换装小游戏
儿童小游戏 牛牛小游戏
麻将小游戏 冒险小游戏
美媚小游戏 益智小游戏
体育小游戏  
Society Recreation & Sports
Travel & Leisure Communications
Vehicles Computers
Fashion Arts & Entertainment
Reference & Education Disease & Illness
Writing & Speaking Politics
Product Reviews Food & Beverage
Finance Internet Business
Self Improvement Home & Family
Health & Fitness Business
最新更新内容
警惕“公务员报考热”背
公务员考试不是丈母娘考
一名新公务员的自白:我
公务员考脑筋急转弯与挂
北努斗:2006行政能力测
大讨论:06行测BT题目大
过来人回忆:当年,我也
一家之言:公务员热折射
公务员考试申论要是有正
数十万大学生走进公务员
      粤ICP备05005424         Copyright ©2000 - 2004 Yesize.COM