资源预览内容
第1页 / 共27页
第2页 / 共27页
第3页 / 共27页
第4页 / 共27页
第5页 / 共27页
第6页 / 共27页
第7页 / 共27页
第8页 / 共27页
第9页 / 共27页
第10页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
I摘要Visual C+功能强大,能够形成各种用户界面,甚至能对底层硬件进行操作。但是在开发一些较为复杂的算法时,是比较麻烦的。幸运的是 Matlab 作为一个功能强大且不断更新的软件包为我们提供了各种复杂算法。如果能将 Matlab 开发好的算法直接为 VC程序员所用,那将大大缩短开发周期,降低产品成本。本文正是研究如何在 VC 集成环境中调用 Matlab 的数学计算函数,等效为自己的函数。主要有两种方法,一是在 Visual C+中调用 Matlab 引擎,二是在 Visual C+中调用 Matlab 数学函数库。关键字Visual C+ Matlab 程序设计IIAbstract:Visual C+ has powerful function, and it can supply a considerable variety of UI, and even can operate hardware. But it is inconvenient when we implement some more complex arithmetic. Fortunately MATLAB provides a variety of complex arithmetic as a powerful and updated continually software packet. It will cut the cost of product and implementation period. This thesis is about using matlab function in VC IDE as itself. There are two methods: one is using Matlab Engine in Visual C +. The other one is using Matlab math library in Visual C+. Key wordsVisual C+ Matlab Program DesignIII目 录摘要 .IABSTRACT: .II第一章 前言 .11.1 MATLAB 功能及其体系 .11.2 MATLAB 外部接口概述 .31.2.1 mxArray 数据结构.31.2.2 mx函数应用.81.2.3 eng函数.11第二章 VISUAL C+调用 MATLAB 引擎 .132.1 概述.142.2 MATLAB 的环境配置 .142.3 使用 VC+6.0 向导生成应用程序.15第三章 VISUAL C+调用 MATLAB 数学库 .183.1 使用 MATLAB 数学函数库的环境设置 .183.2 在 VISUAL C+中调用 MATLAB 数学函数库 .19总结 .22附录 .24参考文献 .26VC+与 Matlab 混合编程1第一章 前言1.1 Matlab功能及其体系MATLAB 产品是用来解决工程与科学实际问题的工程软件,而外部接口编程是该软件的一项基本功能。掌握 MATLAB 的基本使用方法是学习 MATLAB 外部接口编程的基础,所以在正式学习使用 MATLAB 外部接口编程之前,首先回顾一下 MATLAB 软件的基本环境及其使用方法,并了解一下 MATLAB 的产品体系。MATLAB 的名称源自 Matrix Laboratory,它的首创者是在数值线性代数领域颇有影响的 Cleve Mofer 博士,同时他也是生产和经营 MATLAB 产品的美国 Mathworks 公司的创始人之一。MATLAB 本身是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB 将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,还提供了一种高级的解释型编程语言M 语言。MATLAB 产品具有良好的开放性和扩充性,利用 MATLAB 提供的科学计算能力和 M 语言编程能力开发了很多专业函数并组成了不同的工具箱,而这些工具箱产品被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作中。大多数的 MATLAB 工具箱中所包含的代码都是开放的,这使得丁几程师在使用 MATLAB 软件解决工程问题,不断深化对问题认识的同时,还可以非常容易地对 MATLAB 的功能进行扩充,从而不断完善 MATLAB 产品以提高产品自身的竞争能力。口前 MATLAB 产品族主要应用于以下领域:数值分析;数值和符号计算;工程与科学绘图;控制系统的设计与仿真;数字图像处理;数字信号处理;财务与金融工程;VC+与 Matlab 混合编程2图形化的用户界面开发。MATLAB 产品由若干个模块组成,不同的模块完成不同的功能,其中包括 :. MATLAB;. MATLAB Toolboxes;. MATLAB Compiler;. Simulink;. Simulink Blocksets;. Real-Time Workshop(RTW);. Stateflow;. Stateflow Coder;图 1-1 MATLAB的产品体系由这些模块构成 MATLAB 产品体系如图 1-1 所示。其中,MATLAB 是 MATLA 产品家族的基础,它提供了基本的数学算法,例如矩阵运算、数值分析算法等,MATLAB 集成了 2D 和 3D 图形功能,以完成相应的数值可视化工作,同时 MATLAB 还提供了一种交互式的高级编程语言M 语言,利用 M 语言可以通过编写脚本或者函数文件实现用户自己的算法。1.2 Matlab外部接口概述尽管利用 MATLAB 提供的高级编程语言 M 语言进行程序开发已经基本能够满足一般算法开发的需要了,但是在很多情况下,MATLAB 的用户仍需要将 MATLAB 同其它的软件或者开发语言结合在一起共同完成算法开发的任务,例如在工程中广泛应用的 C 语言或者 Fortran 语言。广大 MATLAB 的用户提出的需求包括:在 MATLAB 中调用已有的 C 语言或者 Fortran 语言的代码。在 C 语
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号