实现VC++与MATLAB混合编程

点赞:3892 浏览:12475 近期更新时间:2024-03-27 作者:网友分享原创网站原创

摘 要:本文深入分析了VC++与MATLAB两种编程语言的特点,充分发挥了两种语言的优点,实现混合编程.并在弹箭弹道参数相对于气动参数的灵敏度分析过程中进行了验证,直观方便地利用灵敏度函数对气动参数加以辨识,得出弹道参数模型,并进行弹道计算.

关 键 词:编程混合编程灵敏度

MATLAB是一种以矩阵为基本运算单位的高效数值计算软件,带有功能强大的数学函数库,并开发有多种学科领域的工具箱函数库,广泛地应用于科学研究与工程计算.VC++用于面向对象的可视化编程,可以完成从底层软件直到面向用户软件等各种应用程序的开发.利用它提供的各种实用工具,开发者可以轻松开发出高效强大的Windows应用程序.


把MATLAB在数值计算、算法设计以及数据可视化等领域的优势与VC++应用系统集成,不仅可以完全满足系统在数据运算与表现方面的需求,而且还可提高系统处理的效率和稳定性,同时也减少了开发人员实现算法的困难,缩短了软件开发的周期,提高了软件质量,在实践中具有很高的使用价值.

1 MLRS/M26多管火箭弹弹道

所谓弹道是指弹箭在空中飞行时,其质心所经过的路线,它是一条空间曲线.从弹箭侧面看,弹道的投影如图1所示:

利用现代控制理论、弹箭飞行动力学、数值分析、随机过程、弹箭设计理论以及计算机仿真等理论,分析弹箭弹道参数对气动系统灵敏度函数问题,以MATLAB和VC为操作平台,制作用户操作界面.

2 VC++与Matlab混合编程的优点

VC++用于面向对象的可视化编程,开发者可以轻松开发出高效强大的Windows应用程序,利用它提供的各种实用工具,可以完成从底层软件直到面向用户软件等各种应用程序的开发.但在实际工程开发中,与Matlab相比:

①Matlab比VC++在数值处理分析和算法工具等方面更优异.

②MATLAB比VC++在准确方便地绘制数据图形方面更完善.

Matlab具有强大的数值计算功能,MATLAB中提供了大量用C\C++重新编写的Matlab库函数,MATLAB自身存在一些缺点限制了它在更多方面的应用,主要包括初等数学函数、线形代数函数、矩阵操作函数、数值计算函数、特殊数学函数、插值函数等,这些缺点主要包括:

①容易被直接读取,所以难以保护劳动者的成果,Matlab编写的M文件大多是文本文件.

②它的的界面开发能力较差,难以开发出友好的应用界面.

③语言执行效率低,实时性较差,Matlab大多是一种解释性语言.

④Matlab程序不能脱离其运行环境,可移植性差.

3 用户操作界面

在VC环境中调用Matlab程序,制作用户操作界面.既能够充分利用VC建立友好的界面,又可以利用MATLAB避免编写复杂的算法,大大提高编程效率.用户可以根据需要,直接输入参数的初始值,点击画图按钮就可以模拟出在此弹道参数下的弹丸运动轨迹,具有可重复性,给用户研究提供了方便.

为方便用户研究问题,设计了用户操作界面.考虑到软件的通用性可重复性,应面向所有初始发射条件下的弹箭,从而定义了视图类进行初始发射条件数据和飞行条件数据的输入,能够非常灵活地进行各种数据的处理.程序设计时,采用了面向对象的程序设计方法,为软件功能的进一步完善奠定了基础.

实现VC++与MATLAB混合编程参考属性评定
有关论文范文主题研究: 关于软件开发的论文范文 大学生适用: 学士学位论文、学士学位论文
相关参考文献下载数量: 39 写作解决问题: 如何怎么撰写
毕业论文开题报告: 论文任务书、论文题目 职称论文适用: 杂志投稿、高级职称
所属大学生专业类别: 如何怎么撰写 论文题目推荐度: 经典题目