仅短短几年就以良好的开放性和运行的可靠性淘汰了当时众多的软件包。进入20世纪90年代后,MATLAB已经成为国际公认的标准计算软件,并在大学里广泛使用,深受大学师生的喜爱。在欧美的一些大学里,诸如应用代数、数理统计、自动控制、数字信号处理、模拟与数字通信、时间序列分析、动态系统仿真等课程的教科书都把MATLAB座位教学内容,MATLAB成为攻读学位的本科生、硕士生、博士生必须掌握的基本工具之一。
MATLAB长于数值计算,能处理大量的数据,而且效率比较高。MathWorks公司在此基础上开拓了符号计算、文字处理、可视化建模和实时控制能力,增强了MATLAB的市场竞争力,使MATLAB成为了市场主流的数值计算软件。经过多年的工程实践,人们已经发现MATLAB作为计算工具和科技资源,可以扩大科学研究的服务范围,提高工程生产的效率,缩短开发周期,加快探索步伐,激发创作活力。
MATLAB是支持从概念设计、算法开发、模型仿真到实时实现的理想集成环境。无论进行科学研究还是工程应用,MATLAB都是必不可少的模型和算法仿真工具。一般而言,MATLAB的典型应用包括:
(1)数据分析和可视化;
(2)数值和符号计算;
(3)建模、仿真和原型开发;
(4)算法预设计与验证;
(5)图形用户界面设计;
(6)图像和视频信号处理;
(7)MATLAB应用于C、C++、Java以及Web集成;
(8)一些特殊的矩阵计算应用,例如自动控制理论、统计、数字信号处理(时间序列分析)等。
MATLAB由一组面向具体应用的工具箱组成,包含了完整的函数集,用来对数字图像、控制系统和神经网络等进行分析和设计。MATLAB的工具箱是开放的,因此MATLAB的工具箱越来越多,功能越来越强大。用户可以编写自己的工具箱,使用时与使用MATLAB提供的工具箱一样。因此,出现了越来越多的免费和商业MATLAB工具箱。
MATLAB的主要产品构成如下。
1)MATLAB集成开发环境
MATLAB提供了一个集成的开发环境,方便用户开发自己的应用程序。它有以系列的工具和功能体,其中大部分具有图像用户界面,包括桌面(Desktop)、命令窗口、历史(History)窗口、工作空间(Workspace)、文件和搜索路径等。
2)MATLAB数字函数库
MATLAB提供了强大的数字函数库,既包括最基本的矩阵运算函数,如矩阵求逆等,有包括一些特殊的数学函数,如贝塞尔函数等。数学函数库是MATLAB进行数据分析的基础。
3)MATLAB图形用户接口 (GUI)
MATLAB提供了图形用户接口函数,包括二维和三维图形显示、图像处理、动画和图形显示的高级命令。设计图形用户接口的工具包括布局编辑器、排列工具、属性观察器和菜单编辑器等。
4)MATLAB的专用领域工具箱
MATLAB提供了一系列专用领域的工具箱,如模型仿真、神经网络、小波分析、信号处理、图像处理等,用于解决特定领域的工程问题。工具箱是开放和可扩展的,用户可以根据需要选择购买和选择安装需要的工具箱。
5)MATLAB Compiler
MATLAB Compiler(编译器)提供了将MATLAB语言编写的M文件自动转换为C祸C++格式文件的能力,支持用户进行独立应用开发。利用MATLAB Compiler,用户可以快速地开发出功能强大的独立应用。
6)MATLAB Simulink
MATLAB Simulink是一个对动态系统进行建模、仿真和分析的软件包。它既可以仿真线性系统,又快要仿真非线性系统。它使得MATLAB的功能得到了进一步的扩展。
7)Stateflow
与Simulink的模型框结合,描述复杂事件驱动系统的逻辑行为,驱动系统在不同的模块之间进行切换。
8)Real-Time Workshop
Real-Time Workshop与Stateflow直接从Simulink模型与Stateflow框图中生成高效的可移植C代码或Ada代码。只需要简单的操作,用户无需繁琐的手工编程与调试就可以生产应用代码。
1.2 MATLAB语言概述
MATLAB易学易用,其函数名和表达很接近我们书写计算公式的思维表达方式,用MATLAB编写程序犹如在草稿纸上排列公式与求解问题。MathWorks公司将MATLAB称为第4代编程语言。同其他的程序设计语言一样,MATLAB语言提供了流控制、函数、数据结构、输入/输出功能以及面向对象的程序设计方法。
MATLAB具有不同于其他语言(如Fortran、C语言等)的特点,被称为第4代计算机语言,又称为"草稿纸式"语言。MATLAB把工程技术人员从繁琐的程序代码中解放出来,可以快速地验证自己的模型和算法。概括起来,MATLAB语言具有如下主要特点。
1)方便的矩阵和数组运算
MATLAB是以矩阵为基础的,可以方便地进行矩阵的算术运算、关系运算和逻辑运算等。MATLAB有特殊矩阵专门的库函数,可以高效地求解诸如信号处理、控制、优化等问题。变量不需要预先定义,也不需要预先定义矩阵(包括数组)的维数。
2)编程效率极高
MATLAB是一种面向科学和工程计算的高级语言。它以矩阵运算为基础,极少的代码即可实现复杂的功能。
3)易学易用,使用方便
MATLAB易学易用,其函数名和表达更接近我们书写计算公式的思维表达方式。MATLAB是一种解释性语言,不需要专门的编译器。具体地说,MATLAB运行的时候,可直接在命令行输入MATLAB语句,系统立即进行处理,完成编译、链接和运行的全过程。因此,MATLAB语言不仅是一门语言,广义上是一种语言调试系统。
4)可扩充性强
MATLAB有着丰富的库函数,在进行复杂的数学运算时可以直接调用。用户可以根据需要方便地编写和扩充函数库。为了充分利用Fortran和C语言资源,用户可以通过混合编程在MATLAB中调用Fortran和C语言的源程序,也可以再Fortran和C语言中使用MATLAB的数值计算功能。
5)方便的可视化
MATLAB的绘图是十分方便的,它有一系列绘图函数,例如象限坐标、对数坐标、半对数坐标、极坐标等,均只需要调用不同的绘图函数,在图上标出图题、x轴和y轴标注、格绘制也只需要调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不同颜色的点、线、复线或多重线,这种为科学研究着想的设计,通过其他编程语言实现都是比较麻烦的。
6)可移植性好
MATLAB本身是用C语言编写的,而C语言的可移植性好。MATLAB函数可以很方便地移植到C语言平台。除了内部函数以为,MATLAB的绝大部分函数和工具箱函数都是公开的,可以用文本编译器打开。但是,MATLAB作为一种解释性语言,与C语言等其他高级语言相比,也存在着以下缺点:
* 运行效率较低,执行相同功能的代码运行时间较长;
* M文件为文本文件,文本编译器可直接打开,不利于算法保密;
* 访问硬件能力相对较差,图形用户界面功能不够灵活。
1.3 Visual C++ 产品概述
随着可视化编程的蓬勃发展,越来越多的程序员开始使用可视化编程技术。作为微软公司推出的功能最强大、也是最复杂的程序设计工具之一的Visual C++是Microsoft Visual Studio家族成员之一,具有功能强大的可视化开发环境,为程序员开发软件提供了方便的条件,并且Visual C++集程序的代码编辑、编译、链接、调试等功能于一体,给程序员提供了一个完整、全面而又方便的开发环境。最常用的版本为Visual C++ 6.0。Visual C++ 6.0的执行速度和对操作系统的访问权限之高,是其他许多编程工具无法比拟的,因此Visual C++ 6.0成为众多程序员在Windows下编程的首选工具。
Visual C++ 6.0拥有两种编程方式:一种是传统的基于Windows API的C编程方式,虽然其代码效率较高,但开发难度与开发工
上一篇:
Biobran酒店管理系统毕业论文(2003doc)
下一篇:
采用VC的伺服电机控制毕业论文(2003doc)