C#与Matlab混合编程的两种模式分析.docVIP

C#与Matlab混合编程的两种模式分析.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C#与Matlab混合编程的两种模式分析   摘要:简述了C#与Matlab混合编程的实际意义与应用领域,给出了混合编程的两种具体实现方法,最终分析了这两种方法在编程效率、软件复用度方面的优劣。   关键词:组件技术;C#;MATLAB   中图法分类号:TP311文献标识码:A文章编号:      The Analysis about Two Kinds Model of C# and Matlab Mix Programming   CHEN Hong-ling1,ZHOU Li-ping2   (1. Zhuhai college of Jilin University,Zhuhai 519041,China; 2.Guangdong Guohua Taishan electric factory,Taishan529228,China)   Abstract: A brief description about the practical significance and the application domain of C# and Matlab mix programming has been summarized, two kind of models to realize the mix programming have been given, the advantage and disadvantage of the two methods has been analyzed finally in the programming efficiency and software reusability aspect.   Keywords: Component technology;C#;MATLAB      1 引言      MATLAB是当今世界上使用最为广泛的数值计算软件之一,具有强大的矩阵计算能力,可以实现数值分析、优化、统计、偏微分方程数值解、自动控制、信号处理等若干个领域的数学计算[1]。C#是微软.NET战略中核心的开发工具,它综合了Visual Basic的高效率和C++功能的强大性,具有良好的界面设计功能,可以很方便地建立应用程序的可视化界面[2]。整合C#界面设计能力和MATLAB的科学计算能力,可以解决环境评价、金融计算、图像处理等多个领域的实际问题,具有很好的应用前景。   目前,采用VB、VC、C++ Builder等高级语言与MATLAB的混合编程技术已有较多的研究并且存在一定的应用成果,而C#是近几年微软新推出的编程语言,目前对于C#与MATLAB混合编程的研究还很少,本人在实践应用的过程中,总结了以下关于C#与MATLAB混合编程接口技术实现的经验。      2 DLL文件模式      利用MATLAB的编译工具中的mcc命令可以方便地将m文件转化为动态连接库文件(dll),但由于转化时是采用C或C++编译器,所以产生的dll文件可以由VC++直接调用,却不能被C#调用。但C#可以调用由VC++编译生成的dll文件,由此想到由VC++作为C#和MATLAB中间的一个桥梁,通过VC++把MATLAB生成的dll文件打包进VC++的dll文件中来,这样C#就可以间接地调用MATLAB生成的dll文件了。本文所用软件的版本为VC++6.0和MATLAB6.5,其中Matlab安装路径为D:\MATLAB6p5,实现的具体步骤如下:   第一步:设置环境变量   ① 在Matlab命令窗口中依次输入:mbuild ?Csetup 和 mex ?Csetup   ② 选择VC++ 6.0编译器下的工具 → 选择 → 目录中的Include files添加D:\MATLAB6P5\EXTERN\INCLUDE路径,在Library files下添加D:\MATLAB6P5\EXTERN\LIB\WIN32\MICROSOFT\MSVC60路径。   第二步:使用mcc命令,将MATLAB中的m文件编译成dll文件   mcc ?Ct -W libhg:dlltest -T link:lib test libmmfile.mlib   此例中mlib编译命令将test.m文件编译成C代码,函数接口为Jisuan( )。同时生成dlltest.exports、dlltest.h、dlltest.lib、dlltest.c、dlltest.dll、dlltest.mlib、dlltest.expt等文件。   第三步:在VC++中调用刚生成的dll文件,再打包制作成C#可以调用的dll文件   ① 在VC++6.0中将生成后的dllte

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档