C#,JA与MATLAB混合编程技术

点赞:25246 浏览:117542 近期更新时间:2024-02-28 作者:网友分享原创网站原创

【摘 要】本文阐述了当今最为流行的面向对象的可视化编程工具c#,JA与计算及绘图功能强大的MATLAB之间的接口技术,从而进行相互融合,更好地体现各自的优越性.

C#,JA与MATLAB混合编程技术参考属性评定
有关论文范文主题研究: 关于计算机的论文范文 大学生适用: 大学毕业论文、硕士毕业论文
相关参考文献下载数量: 20 写作解决问题: 学术论文怎么写
毕业论文开题报告: 论文模板、论文选题 职称论文适用: 技师论文、初级职称
所属大学生专业类别: 学术论文怎么写 论文题目推荐度: 优质选题

【关 键 词】c#,JA混合编程

【中图分类号】G434【文献标识码】A【文章编号】1006-5962(2012)06(a)-0185-01

引言

MATLAB具有强大的矩阵运算、数值分析、信号处理、系统识别、图像语音处理等功能.而应用MATLAB软件可以很方便地实现许多复杂的数学算法,而这些复杂的算法在其他开发环境中需要大量代码才能实现.尤其是图像处理等方面,MATLAB具有其他编程语言无法比拟的优点.但MATLAB也有不足之处,如在数据输入、硬件控制等方面相对较弱,程序执行速度也相对较慢,且一般需要在MATLAB环境下运行.所以在解决实际工程问题时往往将MATLAB与其他高级语言混合编程,将MATLAB强大的数学功能怎么写作于其他开发环境.

C#,JA这两种高级面向对象程序语言在跨平台、多线程、动态性、面向对象等方面具有很强的优越性.然而在数据分析和处理方面的能力不像其等优点那么突出,尤其是在对数组矩阵之类数据进行操作及图像处理时会因为多次循环而速度变得缓慢,这在数组或矩阵维数很大时尤其明显.因此将这两种语言和MATLAB实现混合编程,从而达到优势互补,就显得尤为重要了.

本文阐述了C#,JA与MATLAB混合编程的接口技术.

1混合编程

1.1混合编程基本思想

在一个应用软件的开发周期中,把不同阶段的算法和数据处理交给在这方面具有优势的编程语言或软件.编程人员无需为实现某种算法和操作专门写程序代码,程序员只要把精力集中在不同软件之间数据通讯的问题上.相比用单一语言开发同等性能的程序,它需更少的时间,大大缩短了开发时间.

1.2混合编程适用条件

混合编程所要解决的问题一般具备以下几个特征:

①不同软件间数据通讯方便,

②不同编程语言实现相同算法效率相差很大,

③不同软件间除了数据通讯.其他相互独立.

其中特征①是实现混合编程的前提条件,数据不能有效传输,混合编程也无从谈起,特征②是进行混合编程的作用和意义,如果使用另一种编程语言不能显著的提高效率,那么混合编程就失去其应用意义和价值,特征③是混合编程技术得以正确执行的保障,一个程序中除了有大量的数据外还有很多代码,要保证一个程序的代码只能对其内的数据进行操作.另一个程序的数据对它而盲是“黑匣子”,也就是要避免通常所说的相互干扰问题.

2实现方法介绍

2.1MATLAB与c#混合编程

COM(ComponentObjectModel,组件对象模型)是一种说明如何建立可动态互变组件的规范,此规范提供了为保证能够互操作,客户和组件应遵循的一些二进制和网络标准.通过这种标准将可以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同,使用的开发语言是否一致,以及是否运行于同一台计算机.Matlab6.5新推出的COMBuilder能方便地把MATLAB程序生成COM组件,所以一般的编程语言,只要支持COM,象VC++,VB等,都可以通过COM组件实现与MATLAB的混合编程.而C#语言与MATLAB混合编程的方法主要有3种:


①通过从MATLAB的m文件中生成C语言版本的DLL,

②使用MatlabDeployTool生成COM组件,

③使用MatlabDeployTool生成.Net组件,

2.2MATLAB与JA的混合编程研究

JA是一种简单、动态、面向对象化,结构中立,可移植,高效能,具有多线程能力的新一代语言,受到了广泛的应用,但是JA并不支持COM.所以JA与MATLAB混合编程的方法有:

①通过JA调用DLL文件,从而间接地调用MATAB程序文件,

②JA与MALAB使用JIN通过COM实现混合编程,

③通过JABuilder实现JA调用MATLAB相关程序或函数.

3结束语

本文简单介绍了c#,JA与MATLAB的混合编程接口技术,它们的实现极大地缩短了程序开发周期,减轻了编程工作量,提高了工作效率.在工程研究中,这种混合编程的接口技术将会有很大的应用.