电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

MATLAB应用软件

来源:文库作者:开心麻花2026-01-071

MATLAB应用软件(精选12篇)

MATLAB应用软件 第1篇

MATLAB是矩阵实验室 (Matrix Laboratory) 的简称, 是美国MathWorks公司出品的商业数学软件, 是用于算法开发、数据可视化、数据分析以及数值计算的高级计算语言和交互式环境[1]。

MATLAB功能强大, 可应用于数值分析、矩阵计算、图像处理、通信、控制系统, 以及建筑、财务建模、金融分析等多种领域[2]。自上世纪70年代研发至今, 经过几十年发展, MATLAB软件依然以它的独特优势在当今社会得到广泛应用和好评。

2 MATLAB在数学领域中的应用

学习过《工程数学》基础课的同学都知道, 工程数学中含有大量的矩阵计算, 简单的同行列式的矩阵加减相对容易, 但当面临多行多列的矩阵乘法甚至除法时, 计算量则较大。现有的计算器只能进行简单的加减乘除及少量三角函数的计算, 而无法进行矩阵运算, 因此很多人面对这门课程都感觉困难重重。但若掌握了MATLAB软件, 只需学习几个简单的语句规则, 编程之后交给计算机处理, 再难的题目都可以轻松求解。

2.1 利用MATLAB软件进行矩阵运算

在MATLAB软件中, 有很多指令可以用来直接做矩阵运算。如求矩阵行列式的值, 可以用函数“det ([变量名]) ”来计算, 又如求矩阵A的转置, 可用B=A’来表示。

例题1求矩阵A=[1 2 3;4 5 6;7 8 9]的行列式以及矩阵A的转置。

源程序如下:

回车出结果:

2.2 利用MATLAB解方程组

MATLAB软件在解决方程及方程组方面, 也有其独特优势。可以利用函数“solve (要计算的一元多次方程’) ”来求解方程的根, 还可以利用MATLAB软件自带的多种函数, 进行因式分解、函数展开, 以及求解三角函数和差化积以及积化和差公式等。以下列举一个实例求解多元一次方程组。

例题2是求解多元一次方程组的经典做法, 首先将方程变为标准形式, 再提取其系数, 将系数变形为矩阵, 通过求解矩阵的乘法还原该方程式, 即AX=B, 求X (3*1) 的矩阵。

例题2已知, 求x, y的值。

解题思路如下:首先将方程变形为

源程序如下:

回车出结果:

3 MATLAB在图像处理中的应用

MATLAB软件在图像处理中有其特有的快捷优势, 可以用来绘制二维图像, 如正弦、余弦等三角函数, 或绘制表格中常用的柱形图、饼图等[3]。

例题3:南洋学院机电系11级机电一体化专业共有3个班, 其中机电1班47人, 机电2班46人, 机电3班42人。

(1) 试用饼图画出3班人数分布比。

(2) 机电1班三好学生5名, 2班6名, 3班4名, 用饼图画出三好学生占总人数比例。要求两张图在一个图标上显示。

源程序如下:

回车显示出图形, 如图1所示。

4 MATLAB在自动控制原理中的应用

4.1 利用MATLAB求控制系统传递函数

传递函数是在零初始状态下, 线性定常系统输出量的拉氏变换与输入量的拉氏变换之比。可用公式来表示[4]。

例题4:已知系统的方框图如下:

其中, , 求该控制系统的传递函数。

解题思路如下:由图可得, 传递函数G1为主通道传函, G2为反馈通道传函, 它们之间构成一个闭环反馈通道。由自动控制系统公式, 可以求得其闭环传函。若G1 (s) 和G2 (s) 分式比较复杂, 该计算对于大多数学基础不好的学生将比较棘手, 但利用MATLAB软件, 只需一个函数“feedback (G1, G2) ”即可完成。

源程序如下:

4.2 利用MATLAB判断控制系统稳定性

稳定性是控制系统正常工作的首要条件, 也是控制系统的一个重要性能指标。一个控制系统在实际运行过程中, 总会受到内外部一些因素干扰, 如果系统不稳定, 就会在任何微小的扰动作用下偏离原有状态, 并随时间推移而发散, 也就是说系统不会依靠自身的调节达到稳定状态。因此, 分析系统的稳定性, 研究系统稳定条件, 是控制理论的重要部分[5]。

事实上, 我们常使用劳斯表来求一个控制系统的稳定性, 但劳斯表的算法要求对数学计算非常精通, 否则易出错, 一旦某行算错, 接下来数据将全部错误。即使对于计算能力较好的同学, 也需要花费大量时间求解。因此, 使用MATLAB软件, 可以大大减轻计算量。

例题5:已知单位正反馈控制系统的开环传递函数为:, 试判断此闭环系统的稳定性。

解题思路如下:该题给出一个开环函数, 要求系统稳定性, 首先第一步需要将其转变成闭环传函, 又已知该系统为单位正反馈, 因此可以利用函数“feedback (G1, G2) ”先求出其闭环函数, 再利用“root (den) ”求根, 观察系统根的分布情况, 若全部分布在系统左半平面, 则系统稳定。

源程序如下:

回车显示出图形, 如图2所示。

经分析, 该系统的闭环根并不全部分布在系统左平面, 据此判断系统不稳定。

5 结语

MATLAB软件强大的功能得到了广泛认可, 除了本文列举的例子, MATLAB还可以用来绘制控制系统的根轨迹, 以及进行图像处理和绘制三维立体图像。笔者也将继续努力探索其中的奥秘, 以期将其功能发挥得更加淋漓尽致, 从而更好地为数学计算及其它专业课服务。

摘要:介绍了MATLAB软件在数学及自动控制领域中的应用, 并列举一些具体实例, 如怎样利用MATLAB解决数学中的解方程组问题, 或利用MATLAB求自动控制原理中系统的稳定性。由于MATLAB软件的便捷性及实用性, 可用它来进行一些复杂、高等的运算如矩阵变换、解多元方程组、图像处理等。

关键词:MATLAB软件,矩阵计算,图像处理,自动控制原理,传递函数

参考文献

[1]王泽文, 乐励华, 张文, 等.数学实验与数学建模案例[M].北京:高等教育出版社, 2012.

[2]王月明, 张宝华, 赵晓燕, 等.MATLAB基础与应用教程[M].北京:北京大学出版社, 2012.

[3]赖志国, 陈继云, 李淑红.Matlab图像处理与应用[M].北京:国防工业出版社, 2007.

[4]胡寿松.自动控制原理 (修订本) [M].北京:机械工业出版社, 2008.

MATLAB在化工中的应用小论文 第2篇

摘要:随着科技的不断发展与进步,MATLAB软件开始在化学工程与工艺实验数据处理中应用开来。因为传统的数据处理方式十分繁琐,因此MATLAB软件的出现弥补了传统化工实验数据的数据处理缺陷,提高了化工实验数据的处理效率。文章通过研究MATLAB软件在化学工程与工艺实验数据处理中的应用,分析其处理数据的优势与特点。

关键词:化学工艺实验;数据处理;MATLAB软件;化工实验数据;

目录 MATLAB软件......................................4 2 化学工程与工艺实验数据处理......................4 3 化学工程与工艺实验数据处理设计..................5 3.1 数据处理的程序框架..........................5 3.2 数据处理的程序编制..........................6 3.2.1 数据输入...............................6 3.2.2 处理和作图。...........................6 3.2.3 建立数据库.............................7 3.3 程序的运行..................................7 4 结语............................................8 参考文献...........................................9 MATLAB软件

MATLAB软件最早由美国的Mathworks公司提出,其主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,代表了当今国际科学计算软件的先进水平。近年来MATLAB软件逐渐被用于化学工程与工艺实验的数据处理中,极大地提高了数据处理的效率。化学工程与工艺实验数据处理

化学工程与工艺实验不同于普通的化学实验只重视一个原理的求证,它的目的是为了解决工业中的化工问题,其特点主要有实验时间长、实验规模大和实验数据处理繁杂等。在整个化学工程与工艺实验里数据处理是必不可少的阶段,也是印证化学实验成果是否行之有效的必要手段,但是由于实验数据过于庞大,实验当中相关的参数关系大多是非线性的,单单依靠传统的手工计算不仅速度慢,还容易出现计失误的情况,根本无法满足实际的需求,因此,将MATLAB软件融入实验数据的处理中刻不容缓,它能有效地将繁琐的计算步骤化解成简单的计算,提高工作效率,让实验数据的准确性达到最高值,避免误差的产生。以下通过研究两个化学工程

与工艺实验,分析MATLAB软件在处理实验数据时与传统的手工计算有什么优势和便利。化学工程与工艺实验数据处理设计

3.1 数据处理的程序框架

因为每一个化学工程与工艺实验的目的都不相同,因此其处理的步骤以及涉及的化学公式也不尽相同,不可能以一个程序来概括,但是经过大量的实验研究和总结,发现不同的化工实验中都会有其相似之处,它们都可以由图1来概述:

图1 3.2 数据处理的程序编制

3.2.1 数据输入

化学工程与工艺实验的数据输入主要依靠提示的函数input实现,比如以温度为例子,则其输入函数为:t=input(‘请输入实验的温度摄氏度):’),其中输入函数大多是以矩阵的输入形式为主。3.2.2 处理和作图。

化学工程与工艺实验中得到的数据时常会存在离散的情况,必须经由多种拟合的方法将它们结合成一条或多条连合的曲线,而其中最常用的拟合方式是最小二乘法,因此本实验设计中的拟合方式也采用最小二乘法的方式。设实验的离散数据(x1,y1)通过最小二乘法将其拟合成因变量y,自变量x,输入的函数关系为y=f(x),函数关系的主要思路是让离散数据中的x1的残差平方以及Σ(f(x1)-y1)2达到最小值。因为在得出化工实验数据中多少会因为外界的因素存在着一些误差,因此最小二乘法可以无需使输入函数y=f(x)必须经过全部的离散数据(x1,y1),但是残差平方和必须达到最小值。根据最小二乘法的拟合方法可知,最小二乘法可以满足化工实验数据处理中的拟合应用需求。在化学工程与工艺实验中会涉及到流体的流动阻力研究,研究主要是通过测试流体的流动阻力,在经过特定的计算之后得出摩擦系数(λ)和雷诺准数(Re)的离散数据,再同理,经过最小二乘法拟合出连续的曲线,并根据其画出相对应的图形。因为摩擦系数(λ)和雷诺准数(Re)属于成双对数函数,则:λ=aReb+c(1)当a,b,c是常数时,则可以设c=0:λ=aReb(2)因为λ与Re属于成双对数函数,则:Logλ=blogRe+loga(3)得出上述式子之后可以将MATLAB里的函数polyfit()进行线性的拟合,以作为化工数据处理的程序原理。3.2.3 建立数据库

因为经过上述的设计,化学工程与工艺实验数据处理只能得知在特定的温度下比如10℃、20℃以及30℃等)实验的物性数据,但是在实际的生产中,工业生产所涉及的温度多变,不单只停留在设计好的温度当中,因此,这就需要我们在数据中选择最相近的数据,假设它们属于线性的关系,再利用内插或者外推的方式计算出实验的物性数据常数。在本文的化工实验中,编写的程序已经将实验温度和密度以及实验的温度与黏度进行多次的实验拟合,建立出了一个相对完的数据库,在工作中只需将温度输入进系统,则程序可以自动跳出在特定温度下的物性数据,提高数据处理效率。

3.3 程序的运行

在编制完成化学工程与工艺实验的数据处理程序,且建立数据库之后,便应该输入数据以验证程序是否能有效地处理实验数据。在化学工程与工艺实验的数据处理中,MATLAB软件的应用是十分重要的,经过实验可知,在化工实验当中会出现大量的离散数据,必须经过拟合的方式进行处理,其处理过程中不仅工作量大,而且十分繁琐,一旦出现差错则必须重新推翻重来,浪费大量的人力物力资源,而且在处理好实验数据之后,在查看实验当中还要将化工实验数据重新计算一次,看结果是否与原先的计算结果相同,工作量十分重,但是如果运用MATLAB软件则大大降低了数据处理难度,只要在MATLAB软件中输入相应的化工实验数据,就可以得到结果,节省了时间,提高了工作效率。结语

在实际的应用中,化学工程与工艺实验所要处理的数据十分庞大,而且涉及的计算公式也十分多,甚至很多时候为了将数据的计算公式导出来还要建立复杂的模型,一旦有一个步骤出现差错则会直接影响到实验的成果,如果使用传统的手工计算方式,为了避免差错则必须对每一个数据处理环节进行反复计算,降低了工作效率,因此MATLAB软件的应用对于化学工程与工艺实验的数据处理十分重要,它不仅将复杂的计算变得简单,也让事后的实验验证效率得到提高,促进了化工实验的 发展。

参考文献

[1] 赵新强,谢英慧,曹吉林,李国玲.化学工程与工艺教学实践[J].河北工业大学成人教育学院学报,2014,6(1).

[2] 韩正.计算机引发化学工程革命[J].发明与创新(综合科技),2013,12(1).

MATLAB应用软件 第3篇

关键词:MATLAB;Origin

中图分类号:TP31文献标识码:A文章编号:1007-9599 (2010) 04-0000-01

Research on Matlab&Origin Software

Li Shuangshuang,Li Tan

(China Mining&Technology University, Information&Electrical Engineering College,Xuzhou221116,China)

Abstract:Origin and Matlab is the popular graphical visualization and data analysis software. Origin developed from the United States OriginLab company(formerly Microcal Inc.), Matlab, developed by the United States MathWorks, because both software operating simply, functional open, working reliable, have become Scientists and engineers commonly usedin advanced data analysis and mapping tools

Keywords:MATLAB;Origin

一、MATLAB简介

MATLAB是Matthworks公司推出的一套工程计算及数值分析软件,具有强大的数学分析能力、方便实用的绘图功能及语言的高度集成性,被广泛地应用在科学运算领域里,包括数值计算、符号计算、数据拟合、图形图象处理、系统模拟和仿真分析等功能[12]。MATLAB的最高版为7.0版,与6.5版功能相近。

MATLAB程序设计语言非常简洁,效率很高,它具有以下主要特点:

(一)运算符和库函数极其丰富,语言简洁,编程效率高,MATLAB除了提供和C语言一样的运算符号外,还提供广泛的矩阵和向量运算符。

(二)既具有结构的控制语言(如for循环、while循环、break语句、if语句和switch语句),又有面向对象的编程特征。

(三)图形功能强大。它既包括对二维和三维数据可视化、图形处理、动画制作等高层次的绘图命令,也包括可以修改图形及编制完整图形界面的低层次绘图命令。

(四)功能强大的工具箱。工具箱可分为功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能、图示建模仿真功能、文学处理功能,以及与硬件实时交互的功能。学科性工具箱是专业性比较强的,如优化工具箱、统计工具箱、控制工具箱、小波工具箱、图形处理工具箱、通信工具箱等。

(五)易于扩充。除内部函数外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可修改文件并加入自己的文件,它们可以与库函数一样被调用。

二、Origin绘图软件

Origin为OriginLab公司出品的较流行的专业函数绘图软件,是公认的简单易学、操作灵活、功能强大的软件,既可以满足一般用户的制图需要,也可以满足高级用户数据分析、函数拟合的需要。Origin是美国OriginLab公司(其前身为Microcal公司)开发的图形可视化和数据分析软件,是科研人员和工程师常用的高级数据分析和制图工具。自1991年问世以来,由于其操作简便,功能开放,很快就成为国际流行的分析软件之一,是公认的快速、灵活、易学的工程制图软件。它的最新的版本号是8.0,另外分为普通版(Origin 8)和专业版(OriginPro 8)两个版本。

Origin采用直观的窗口菜单和操作工具栏,所见所得的绘图方式,全面支持鼠标右键操作,支持拖放式图形转换,最主要的数据处理和绘图操作无需用户编写任何程序代码。

Origin像Microsoft Word、Excel等一样,是一个多文档界面(multiple document interface,MDI)应用程序。它将用户所有工作都保存在后缀为OPJ的项目文件(project)中,这点与Visual Basic等软件很类似。保存项目文件时,各子窗口也随之存盘。另外各子窗口也可以单独保存(/Save Window),以便别的项目文件调用。

Origin主要有数据分析和科学绘图两大功能。其中,数据分析包括数据的排序、调整、计算、统计、频谱变换、曲线拟合等多种数学分析功能。将准备好的数据进行分析时,只需要选择拟分析的数据,再选择相关的菜单命令即可。用Origin绘图时,只须借助软件提供的几十种二维或三维绘图模板,再单击相关的工具栏按钮即可。

Origin基本的数据分析功能包括各项统计参数,如平均值(mean)、标准偏差(standard deviation,SD)、标准误差(standard error,SE)、总和(sum)以及数据组数N。可以对数据进行T检验,判断所选数据在给定置信度下是否存在显著性差异。还可以对数据排序(sort)、快速傅立叶变换(FFT)、多重回归(multiple regression)等。

Origin可以对两组数据进行简单的数学计算,包括加、减、乘、除、乘方等,另外可以对数据进行平滑、积分、微分、平移等操作,还可以进行其他各种方式的拟合。

Origin更有强大的绘图功能。Origin可以制作各种图形,包括直线图、描点图、向量图、柱状图、饼图、区域图、极坐标图以及各种3D图表、统计用图表,还可以分别进行线性拟合、多项式拟合、S形曲线拟合,等等。Origin能够给出拟合参数,如回归系数、直线的斜率、截距等。

Origin还有其他多种有用的功能,它们是为用户扩展功能而提供的。Origin提供了广泛的定制功能和各种接口。用户可以自定义数学函数、图形样式和绘图模板;可以方便地与数据库软件、办公软件和图像处理软件连接;可以用C语言等编写数据分析程序;可以用其内置的脚本语言word/biancheng.htm' target='_blank'>编程,实现工作自动化,更方便、更快捷地控制Origin,等等。综合运用这些功能就可以完成更为复杂的任务。图形可视化和数据分析方面,Origin和Matlab软件功能都十分强大,应用范围广泛。至于优劣,各有千秋,与本人的应用和使用习惯有较大关系。

参考文献:

[1]黄忠霖,黄京.MATLAB符号运算及其应用.北京:国防工业出版社,2004

计算软件MATLAB及其应用浅析 第4篇

关键词:计算软件,程序设计,函数文件,人机交互,建模与仿真

随着计算机日益渗透,深入到科学研究和各种学科的应用,往往要进行大量的数学计算,MATLAB是目前应用最广泛的科学与工程计算软件,拥有很多的数学计算,比如矩阵的处理、符号的计算、数值计算、可视化图形绘图、程序设计和Simu-link仿真等。而这些运算,如果要达到精确和快捷地进行,就必须借助计算机编制的相应的程序做快速的、强大的运算。所以,我们有必要在展望21世纪的美好远景时,再来探讨数学计算的强大功能软件MATLAB在教学、科研、工程技术中的广泛应用。

1 MATLAB简介及其系统结构

MATLAB是Matrix Laboratory的缩写,是目前最优秀的科技应用计算软件之一,它语言简洁紧凑,编程效率高,用户使用方便,图形功能强大,运算符丰富,工具箱全面,它将可视化和编程等功能同时集于一个易开发的环境。MATLAB是一个交互式开发系统,其基本要素是矩阵,它的表达式与数学、工程计算中常用的形式十分相似,因此,深受许多用户和科技工作者喜欢和应用。另外,由于它人机交互简洁和智能化,这样就可大大减轻以往人们曾经使用BASIC、FORTRAN以及C语言编写程序繁重的工作,而且MATLAB可适用于多种平台,随着计算机软、硬件迅猛的提高和发展,也使得编程和调试效率大大提高。对于MATLAB其基本原理、操作、运算以及数据的可视化处理、图形的绘制与修饰,现已是很多学者、科技工作人员在控制系统仿真、通信工程、应用电子、信息工程以及工程力学等领域的重要的计算工具,为数学计算和各类数学实验数据分析提供了极大的便利。

MATLAB的系统结构:1)MATLAB的开发环境。它是一个集成的工作环境,里面有许多命令窗口,文件编辑调试器和需要应用的工作空间,它的核心文件和工具箱文件都是可读可改的源文件;2)MATLAB使用方便的语言。MATLAB是一种解释执行的语言,其特点是灵活方便,被俗称为“演算纸式”,拥有大量的计算算法,程序编写简单且编程效率高,易学易懂;3)MATLAB的数学函数库。它拥有丰富的库函数且库函数功能极其丰富,使得其编写的M文件简单、短小而实用,是其他高级计算软件所不能比拟的;4)MATLAB方便的绘图功能。它有一系列的绘图函数,可以实现图像处理、动画显示和表达式作图,并且调整绘图参数可以有不同颜色的点、线、复线和多重线,绘图效果甚佳;5)MATLAB扩充能力强。用户可以根据自己的需要方便地建立和扩充新的库函数,它还可以通过建立Mex调用文件格式,进行混合编程,方便地调用有关FORTRAN、C语言的子程序,且还可以和其他编程语言进行交互。

2 MATLAB处理数学问题的应用

2.1 在求解数学问题中的应用

MATLAB是很多领域的基本计算工具,在科学研究和工程中应用十分广泛。其主要表现在:矩阵的处理、数据的分析、数值的分析、常微分方程的数值求解等。比如它可以处理常见的数值计算问题,如线性分析、一元和多元函数分析、微积分、数据分析等。因此MATLAB是许多学者和科技工作者必须掌握的基本计算工具。MATLAB在处理数学计算方面极具特色,使其在科学计算方面成为了用户的最好的选择。因为许多数学问题,如果用其他软件设计编写程序求解,比较繁琐,且还需要一定的专业数学知识和程序设计能力,但若用MATLAB编程,只需要几个简单的语句就可以完成求解计算了,编程效率高,而对编程人员的数学背景知识要求的却不高,下面我们举例说明MATLAB在《线性代数》中的应用。

例:判别二次型f = 3x12+ 5x22+ 6x23- 6x1x2的正定性,并求正交变换把二次型化为标准型。

对学过C和C++语言的人都深知,要编写程序解决数学方面的问题是相当复杂的,但是MATLAB却能用简单明了的语言将问题解决,同时它对于我们学习其他的语言也提供了帮助,因为一些语句的基本思想都是类似的,甚至一些关键字也相同,比如说if,while等等。另外,对于MATLAB的基本运算单元是矩阵,这一点也令我很惊讶。这和我们以往学习C语言和C++语言的思维不一样。在应用的时候,也就是在编程的时候,要尽量对矩阵或向量编程,把循环向量化。很多人刚开始学习的时候,没有注意到这个问题,容易出错,如果掌握了它的科学运用,不仅能够缩短程序的长度,也能提高程序执行效率,就能更好地发挥MATLAB计算软件的优势。

2.2 极其方便的绘图功能

MATLAB的绘图极具特色,在它的函数库里它有一系列绘图函数,可供我们选择。比如我们要绘制某个曲面的三维空间的彩色图案,我们就要选择线性坐标或对数坐标和极坐标,就要调用其相应的绘图函数,且图上的标题、标注、栅格绘制也可用调用相应的命令来执行,其操作简单易行,绘图效果极好。另外调整绘图参数还可以绘出不同颜色、不同线条的二维、三维的图案,这种绘图设想和其视觉效果是其他绘图软件所不及的。

例如:画出所表示的三维曲面,x , y的取值范围是 [ ] -8, 8

可见,MATLAB支持各种类型的图形绘制,具有强大的图形绘制能力。使用MATLAB我们只要根据指定的绘图方式和提供的绘图数据,就能绘制出整个图形,且对整个图形的处理也极具特色,二维的、三维的图形都非常漂亮、完美,视觉效果也十分理想。与此同时,图形对光照的处理和色度处理以及各维数据的表现,都反映出了MATLAB对绘图的特殊的处理功能,让人对图形有了耳目一新的感觉。另外,新版MATLAB还着重在图形用户界面(GUI)的制作上有了很大的改进,人机交互方便,备受喜爱。

2.3 MATLAB在数学建模与仿真中的应用

数学建模是为特定的目的,根据其内在的规律,对特定的对象进行抽象、归纳、假设和简化,并运用数学工具建立的一个数学结构。在数学实验中,我们通常要借用计算机软件处理数学问题、建立数学模型,从而解决实际问题。为此,我们首先要动手构建数学模型,再利用它来实现各种算法。通过数学实验它能开发我们创造性思维能力,培养我们敏锐的观察力和丰富的想象力,这样我们就能更好地、更有效益地完成现实生活中的各种实际数学关系的建立,解决各种错综复杂的实际问题,为社会服务,为人类造福。

例如:根据实际的数据,我们建立了一个在一组线性约束条件的限制下,求线性目标函数的最大值的数学模型。即解线性规划问题:

求之最优解为x1= 0.8066 , x2= 1.7900 , x3= 0.0166 ,最优值为z = 7.0000 。

经过一些应用实例的学习,我们就能用数学的思想、数学的语言近似地刻画出一个实际研究对象,并利用MATLAB达到解决实际问题的目的。另外,关于仿真,在仿真系统的设计过程中,首先要对其算法、输出模式等各种模型参数进行设置,再根据实际系统的特性选择模块和设置参数。其仿真的过程包括四个步骤: 1 )添加模块; 2 )修改模块参数; 3 )连线及仿真; 4 ) 仿真参数设置及系统仿真。它包含了从建模到参数设置仿真的全部过程,使我们对仿真技术有了全面的了解。用MATLAB进行系统仿真,还可结合实际情况对仿真的结果进行分析、研究,用它解决许多自己专业领域的实际的数学问题。目前仿真技术应用范围十分广泛,仿真技术还可用于对实际事物进行预测,用来揭示事物发展的客观规律,所以掌握了MATLAB仿真系统的基本模块、模块的建立及其操作方法、参数设置等内容, 就能更好地在相关领域使用仿真这一高科技技术,且其应用价值极有利于科学分析和探讨。

总之,MATLAB是目前广泛应用的科学与工程计算软件。它具有培养现代化建设要求相适应的现代科技实用型人才的最新理念,且为当今社会众多科学领域提供了一个数字计算全面的解决实际问题的便利工具,可以称得上代表了国际科学计算软件的先进水平,是走在世界前列的计算软件,我们非常有必要掌握这一重要的计算软件,为我们的科学研究工作全方位地服务。

参考文献

[1]于润伟.MATLAB基础及应用[M].北京:机械工业出版社,2003.

[2]方红琴,杨玉蓓.C语言程序设计[M].武汉:华中科技大学出版社,2013.

[3]谭浩强.C程序设计题解与上机指导[M].北京:清华大学出版社,2008.

[4]姚俊,马松辉.建模与仿真[M].西安:电子科技大学出版社,2002.

MATLAB应用软件 第5篇

现在MATLAB软件的应用范围已经越来越广泛。它的便捷性、灵活性、开发性等优点广受用户欢迎。试想,在高职数学教学中,若能引领学生熟练掌握MATLAB去解决数学问题,那必将会使他们的思维能力和动手能力同时得到更好地锻炼。理论和数学软件的结合不仅能带给他们新鲜感,调动他们的学习热情,更能使他们将所学到的数学思想灵活运用到各个领域中。

1 MATLAB与数学教学的联系

MATLAB是美国设计的一款软件,它的基本数据单位是矩阵,所以英文也是matrix和laboratory的组合。它在矩阵运算、工程与科学绘图、数字图像处理方面有较为突出的作用。MATLAB函数所能解决的问题基本包括线性方程组和矩阵运算的求解、微分方程及偏微分方程组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其它初等数学运算、多维数组操作以及建模动态仿真等。在数学教学中,我们不能单纯的进行理论教学,而是要通过数学实验来进行辅助教学。让数学模型来加强学生们的数学思想。在生活中,我们已经自觉不自觉地使用了最优化的数学思想,目的可能是最省钱,或者是最省时间,或者是其他目的,总之,是对我们最有利的。凡是在解决问题的过程中,能利用数学的思想方法对问题的求解有一定帮助的,都可以称为数学问题。而解决数学问题不可或缺的就是这些方便人们使用的数学软件。

2 MATLAB在高职数学教学中的具体应用

在高职数学教学中,我们可以将MATLAB引入到以下的几个教学内容中,如创建矩阵、矩阵运算、多项式运算、线性方程组、微积分、函数优化、微分方程的数值解等。同时,教师还可根据学生的接受程度,让他们不局限于原有的函数库,而是自己动手创造更多更实用的函数。因为所有MATLAB的各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包。MATLAB软件与数学的结合可以使同学们更清晰更直观的学习到理论知识和数学思想。在以往传统的教学中,太过于强调学生的题海战术,而忽视了学生的认知过程。将数学软件应用到数学教学中,不但能够加强学生们对数学概念,数学公式的理解,而且还能促使学生发现问题并自主解决问题。这些数学思想与数学实验的结合可以使知识具体化、形象化。如,在极限教学中学生们对重要极限 的各种变形问题很难掌握,这时,我们就可以用MATLAB来解决。例如,求极限 。

再如,我们在讲授用导数解决函数的最值问题时,有这样一个应用问题。如图1所示,铁路线上AB的距离为100km,工厂C距A处为20km,AC垂直于AB,要在AB线上选定一点D向工厂修筑一条公路,已知铁路与公路每km货运费之比为3:5,问D选在何处,才能使从B到C的运费最少?

由于铁路每km货物运费与公路每km

货物运费之比为3:5,因此,不妨设铁路上每km运费为3k,则公路上每km运费为5k,并设从B到C点需要的总运费为y,则 (0x100)。

对于高职学生这个函数的求导及求导后整理出简单的式子求导数为零的点,学生比较困难。这时我们就可以用MATLAB来解决。

3 选取MATLAB进行教学的几大优势

第一、MATLAB有好的用户界面以及更加贴近数学公式的自然化语言,相对其他数学软件来说,是更容易接受更容易学习的.。第二、新版的MATLAB语言基于最流行的C++语言的基础上,对于非计算机专业的人员来说更加容易操作。并且这种语言可拓展性强,可以深入到科学研究及工程计算。第三、MATLAB极大地提高了教学效率。在以往的数学教学中,普遍存在着基本公式罗列,公式推导繁杂,图形绘制耗时等特点,实验验证和数学软件的结合,能够清晰地演示传统教学中的难点。学生们因为课堂充满动态化的演示变得更有兴趣,因此也能更主动的进行学习,从而提高了教学质量。第四、实验教学还能提高学生们的团队合作意识。在数学实验教学中,教师们可以将较难的课题让学生们以组为单位进行研究。这样,学生们通过一个实验项目共同探讨,也进而培养他们的团队合作意识。学生们互帮互助,更能加强他们的学习能力。

4 结束语

在现在的教学中,教师们将数学软件引入到教学中是必要的。教师应该以学生为主体,数学软件为工具通过计算机的手段带领学生们进行数学学习。数学的教学,不仅仅局限于数学知识,更重要的是学生的参与,学生只有参与其中才能获得学习的乐趣,才能提升数学在他们心中的位置。众所周知,数学素质的提高和培养是要通过课程体系、教学方法、教学手段来体现的。教师们完全可以借助数学软件把经典的数学内容换种方式教授给学生,改进以往单一的僵硬的教学方式,使得学生们真正从应试教育中解脱出来,发挥学生的特长。

参考文献:

[1]邓雁城,王信峰.计算机及数学软件在高职数学教学中的应用[J].大学数学,2011.

[2]朱汉敏.MATLAB用于《高等数学》的教学[J].计算机辅助工程,2004.

Matlab在电路教学中的应用 第6篇

关键词:电路实验;matlab;Laplace变换

1 引言

电路课程是自动化、电气、电网等专业的一门专业基础课。电路的教学不仅为后续课程的教学准备必要的电路知识,而且在培养学生动手能力上也起着重要作用。电路课程的教学需注重理论与实验相结合的方式,但是由于实验条件的限制,有些实验不能安排反复试验,为此可以借助软件进行仿真实验,从而加深学生对电路知识的理解。在电路学习中,有些概念难以理解,将直接影响学生学习的质量与效率。MATLAB是一种功能很强的软件技术工具,它已广泛应用于各个领域。

2 Matlab在电路方程Laplace中的应用

4.结论

本文通过计算例子,说明利用MATLAB程序开展教学对于学生加深对“电路中的基本变换”相关概念的理解,以及提高学习的興趣非常有效。

参考文献:

[1]邱关源.电路[M].北京:高等教育出版社,2004.

应用MATLAB进行寿命数据分析 第7篇

随着科学技术的飞速发展,可靠性技术日益受到人们的关注,尤其是产品的寿命试验。通过有计划、有目的地收集和分析系统寿命试验数据,可定量评定系统的寿命。寿命分布是将工程问题抽象简化后,在理论上对其特性进行深入研究。产品的寿命分布是产品故障规律的具体体现,分析寿命分布的过程,实际上是从可靠性角度对产品进行分类的过程,达到在理论上对可靠性研究的深化,在工程上对可靠性的分析、试验、验证、评估等的定量化。

对试验数据的分布分析需要应用概率统计方面的相关知识。概率统计是一门应用性很强的学科,往往需要处理大量数据,没有一款计算软件的支撑是难以想象的。MATLAB提供了概率统计方面的函数,其统计工具箱功能强大,几乎囊括了概率统计中的方方面面。MATLAB的统计工具箱是建立在MATLAB数值计算环境上的工具集,它的统计功能已经可以与SPSS、SAS等软件的统计功能相媲美,可实现数据资料处理的自动化,保证数据分析工作及时、准确地完成[1]。

1 常见寿命分布类型

寿命试验的数据是一种随机变量,各种产品由于其故障机理不同,所以故障分布也多种多样。产品的寿命数据在某应力下呈现出的分布特征一般用失效概率密度函数f(t)、累积失效概率函数F(t)表示。

在工程界,经常使用的连续型分布有正态分布、指数分布、威布尔分布、对数正态分布等[2]。下面分别进行介绍:

1.1 正态分布

正态分布是机械产品中常用的分布,它适用于描述因腐蚀、磨损、疲劳而引起故障的产品寿命分布,在机械材料方面应用非常广。其失效概率密度函数f(t)为:

undefined。 (1)

其中:μ为正态分布的均值;σ为正态分布的标准差。

累积失效概率函数F(t)为:

undefined。 (2)

1.2 指数分布

指数分布是最常用的、最基本的一种寿命分布,其最重要的特征是无记忆性,物理含义是在t0时刻正常,则t0以后的剩余寿命与新产品一样,与t0前的工作无关。对于大多数的电子产品和无冗余的复杂系统,其寿命服从指数分布。其失效概率密度函数f(t)为:

f(t)=λe-λtt≥0 。 (3)

其中:λ为指数分布的失效率,为一常数。

累积失效概率函数F(t)为:

undefined。 (4)

1.3 威布尔分布

Weibull分布也是最为广泛使用的寿命分布,它特别适用于描述机电产品的磨损、累积故障等分布,如某些电容器、继电器、开关、陀螺、电动机、电缆、蓄电池等。其失效概率密度函数f(t)为:

undefined。 (5)

其中:m为形状参数;η为尺度参数。

累积失效概率函数F(t)为:

undefined。 (6)

1.4 对数正态分布

对数正态是对正态分布的一种变种,它是指产品寿命的对数服从正态分布,这在工程上更加合理。由于正态分布具有正负无穷寿命,对于产品来说,不可能出现负值的寿命,所以,对数正态对于描述产品寿命更合理。尤其是加速寿命试验,在各级应力下的寿命分布用对数正态分布来描述,可以很好地满足各级应力下标准偏差相同的假设。正态分布在工程上常用来描述橡胶制品和某些机械产品的寿命分布,对数正态分布常用来描述金属疲劳、大部分的机械结构件、电机绕组绝缘、半导体器件等产品的寿命。其失效概率密度函数f(t)为:

undefined。 (7)

累积失效概率函数F(t)为:

undefined。 (8)

2 MATLAB的应用

试验数据是进行设计、研究、分析、评定和改进的基础。收集到的原始数据往往是杂乱无章的,因此不能直接用其进行寿命分析,作出判断。运用MATLAB的概率论与数理统计知识对其进行一系列整理、分析后,可使数据显示出规律性。

下面依据数据分析流程图,对MATLAB中的相关函数进行介绍,同时应用其进行分布类型判断及相关参数的极大似然估计。

2.1 数据分析流程图

数据分析流程图见图1。

2.2 函数介绍

2.2.1 参数估计

正态分布用命令normfit进行参数估计,该命令用极大似然法给出了其分布参数的点估计和区间估计[3]。命令格式如下:

[muhat,sigmahat,muci,sigmaci]=normfit(x,alpha)

其中:muhat,sigmahat分别为正态分布的参数μ和σ的估计值;muci,sigmaci分别为其置信区间,其置信度为1-α;alpha给出显著水平α,缺省时默认为0.05,置信度为95%。

指数分布用命令expfit进行参数估计,该命令用极大似然法给出了其分布参数的点估计和区间估计。命令格式如下:

[muhat,muci]=expfit(x,alpha)

其中:muhat为指数分布参数λ的估计值;muci为λ的置信区间。

威布尔分布用命令wblfit进行参数估计,该命令用极大似然法给出了其分布参数的点估计和区间估计。命令格式如下:

[phat,pci]=wblfit(x,alpha)

其中:phat(1)、phat(2)分别为威布尔分布尺度参数η、形状参数m的估计值;pci为其对应的置信区间。

对数正态分布可以先将寿命数据取对数后,用命令normfit进行参数的极大似然估计。

2.2.2 假设检验

K-S检验方法的基本思想是将样本观测值的累积频率与假设的理论频率分布相比较建立统计量。命令格式如下:

[H,p,ksstat,cv]=kstest(x,cdf ,alpha)

其中:H为0则接受原假设,H为1则拒绝原假设;p为原假设成立的概率;ksstat为测试统计量的值;cv为是否接受假设的临界值。

2.3 分布类型判断程序

分布类型判断程序如下:

3 结论

应用上述的分布类型判断程序可以得知寿命数据的分布类型与相关参数的极大似然估计;同时可以根据判断的分布类型结果,应用概率密度函数与累积概率密度函数得到相应寿命的概率值。

摘要:介绍了产品寿命试验数据常见的正态分布、指数分布、威布尔分布、对数正态分布4种分布类型的适用情况、特征及规律。应用MATLAB中的参数估计、假设检验与概率密度函数、累积概率密度函数,进行了数据分布类型判断、相关参数的极大似然估计与对应分布概率值的自动化分析。

关键词:MATLAB,寿命分布,参数估计,假设检验

参考文献

[1]苏林军.MATLAB在可靠性数据分析中的应用[J].煤矿开采,2007,12(2):3-5.

[2]姜兴渭,宋政吉,王晓晨.可靠性工程技术[M].哈尔滨:哈尔滨工业大学出版社,2005.

MATLAB应用软件 第8篇

关键词:MATLAB,复变函数,可视化

复变函数理论是本科阶段的重要知识点。与实变函数相比, 复变函数由两部分组成, 即实部和虚部两个二元函数, 因此需要在四维空间中显示复变函数的图形。与二元实变函数相比, 复变函数相对不容易理解, 而且, 一些复变函数有着与实变函数截然不同的特征。如正弦和余弦函数的模可以大于1, 并且是无界函数;对数函数和根式函数为多值函数等[1,2,3]。利用数学软件MATLAB功能强大的绘图功能, 将复变函数可视化, 利用图像展现复变函数和实变函数之间的差异, 使抽象问题具体化。对于MATLAB软件, 编写复变函数可视化的语言规则和命令可以从很多教材和论文中获得[4], 这里不作介绍, 直接讨论图形化结果。本文将分别讨论几种常见的初等复变函数, 在笛卡儿坐标空间中分别画出复变函数、复变函数的实部和虚部的图形, 阐明复变函数图形的特征。

1 MATLAB软件将复变函数图形化的方法

为了借助MATLAB软件理解复变函数不同于实变函数的某些特征, 有必要先弄清MATLAB软件将复变函数图形化的方法。用x—y平面表示自变量的平面, 并将x—y直角坐标转化为ρ—θ极坐标显示, 两者之间的关系是x=ρcosθ, y=ρsinθ。z轴表示复变函数的实部, 实部曲面上的颜色 (本文以灰度区分) 代表虚部的值, 颜色条表示虚部的取值范围。所以, MATLAB软件是利用三维空间加上颜色条显示复变函数的图形。我们以简单的复变函数f (7) z (8) =x+iy为例, 说明MATLAB软件显示复变函数图形的方法。图1a表示复变函数f (7) z (8) =x+iy的图形, 图1b是其实部Re (z) =x的图形, 图1c是其虚部Im (z) =y的图形。根据前述方法, z轴表示复变函数的实部, 颜色表示复变函数的虚部, 因此, 复变函数f (7) z (8) =x+iy的图形应该由其实部的形状和虚部的颜色相结合产生, 图1显示了这样的特征。图2~图4中的正弦函数、对数函数和根式函数都有相同的特征, 不再赘述。

2 几种初等复变函数图形

2.1 单值复变函数—正弦函数

对于正弦复变函数f (7) z (8) (28) sin (7) z (8) , 其代数形式为:

图2a~c分别显示了复变函数以及方程 (1) 的实部和虚部。从图中可以看出, 正弦函数为单值函数。图2b和c上z轴显示正弦函数的实部和虚部的最大值接近10。由于复数的模为实部平方加上虚部平方再开方的结果, 根据方程 (1) , 正弦函数的模是可以大于1的。这一结果与实变函数是不同的, 在实变函数中, 正弦函数介于-1和1之间。图1很好地说明了正弦复变函数的模可以大于1这一特征, 并且当y的取值趋向无穷大时, 正弦函数的模也是无穷大, 即, 正弦函数是无界的单值函数。

2.2 多值复变函数—对数函数和根式函数

复数范围内的对数函数Log (z) 和根式函数与实数范围的差别主要有两点: (1) 负数的对数和开方是有意义的。若y=0, 则z=x, 当x为负数时, 从图3a和图4a中我们可以看出, 此时z的对数和平方根均存在。 (2) 对数函数和根式函数均为多值函数, 多值的原因在于辐角的多值性。在图3b和c中, 对数函数的实部仍为单值函数, 但是, 其虚部对应于复平面上某一点存在无穷多个值 (图中只显示部分值) , 相邻值之间相差2π。既然其虚部是多值函数, 所以从该图形可以判断对数函数是多值函数。对数函数的代数式为:

其中θ为辐角。从方程 (2) 可以看出, 正是由于辐角的多值性导致对数函数的多值性, 图3很好地反映了这样的特征。从图4b和c中, 我们发现根式函数的实部和虚部都是多值的, 所以从该图形可以判断根式函数也是多值函数。而根式函数z1/2的代数式为:

图4刚好反映了方程 (3) 根式函数的多值性特征。

3 结束语

笔者介绍了正弦函数、对数函数和根式函数等几个初等复变函数, 借助MATLAB软件分别画出了初等复变函数自身及其实部和虚部的图形。借助MATLAB软件, 不但可以让学生从直观上更好地理解初等复变函数与实变函数的不同之处, 而且可以增加课堂教学的生动性, 对复变函数论的教学具有一定的意义。

参考文献

[1]梁昆淼.数学物理方法[M].第四版.北京:高等教育出版社, 2010.

[2]吴崇试.数学物理方法[M].第二版.北京:北京大学出版社, 2003.

[3]汪德新.数学物理方法[M].第三版.北京:科学出版社, 2007.

MATLAB应用软件 第9篇

关键词:电指纹法,并行计算,MATLAB,VB,动态链接库

0 引言

2013年发生的 “1122”东黄输油管道泄漏爆炸事故, 使我们认识到了油气管道的腐蚀监测对于保障石油化工管道安全运行是非常重要的。FSM即电指纹法, 最初被开发用以监测沿海钢套焊接区裂纹的发展, 由此发现FSM亦可用于监测设备内部腐蚀上, 且容易实施[1]。

与传统的腐蚀监测法相比, FSM有以下优点:没有监测元件暴露在外;没有将杂质引入管道;腐蚀速度的监测直接而有效;装配和维护时没有泄漏的危险;敏感性和灵活性较好[2]。

1 FSM管道腐蚀监测法

1.1 FSM原理

FSM管道腐蚀监测系统如图1所示。在监测区域内采用156的测量电极矩阵, 其中参考板与油管道串联, 且两者材料相同并相互紧贴绝缘。监测区域在两激励电流源之间, 两激励源输送恒流电。

每一套测量值的指纹系数 (FC) 由下式计算得出:

式 (1) 中:FCi表示在i时刻任一测量电极对指纹系数, 单位为ppt (Part per thousand) ;Ui与U0表示任一电极对在i时刻和0时刻的电压;Urefi与Uref0表示参考电极对在i时刻和0时刻的电压[3]。

FC用以判断腐蚀速度与腐蚀累积, 当电极对间发生腐蚀时, 管道壁厚发生改变, 电阻、电压随之改变, FC值也会相应变化。

1.2 FSM软件系统

如图2 所示, FSM软件系统分为数据采集、计算处理、可视化三大模块, 总体基于VB.net搭建。数据计算处理模块在整个FSM软件系统中占有重要地位, 原始数据滤波、计算FC值等都需要该模块完成。而VB在大型矩阵计算方面较慢, 且在算法编程方面没有MATLAB便捷, 故采用MATLAB实现实验数据计算处理。表1 为Excel实验数据库, 每次测量都会引入包含120个元素的数据矩阵, 数据量较大, 因此考虑用并行计算的方法, 加快数据计算处理速度。

2 基于MATLAB的并行计算原理

并行计算 (Parallel Computing) 是指同时使用多种计算资源解决计算问题的过程。它的基本思想是用多个处理器来协同求解同一问题, 即将被求解的问题分解成若干个部分, 各部分均由一个独立的处理机来计算[4]。

MATLAB并行计算架构主要依赖两个工具:MAT-LAB并行计算工具箱 (Parallel Computing Toolbox) 和分布式计算服务 (MATLAB Distributed Computing Server) 。利用这两个工具, 可以运行基于集群系统的分布式程序[5]。

图3给出了一个可用于MATLAB并行计算的典型架构。从图3中可以看出MATLAB client、Job Manager和worker之间的关系。 实际上client、Job Manager和worker反映的是计算平台之间的关系, 可以把它们想象成应用程序。其中client相当于应用程序UI, 几乎所有用户交互操作都是在client上完成的;Job Manager负责worker的管理和Task分配, 每个Job包含若干Task, 每个Task都要经由Job Manager分配到worker上执行;worker负责执行Task, 并将执行结果返回。其中, client和Job Manager可有多个, worker也可有多个。

3 采用MALTAB并行优化FSM计算模块

在程序设计中, 最耗时间和资源的代码往往是循环, 尤其在FSM数据计算处理模块中, 不同的数据、相同的计算过程, 多次循环在所难免。在MATLAB程序中, 提高循环计算效率的关键往往是提高程序计算效率。采用MATLAB提供的parfor关键字可以对循环实现多处理器并行执行。

3.1 parfor并行循环的基本原理及步骤

MATLAB中for循环结构形式一般如下:

其中, ib和ie分别表示循环起始和结束值。

parfor应用的基本前提是for循环可被分解成互不相关的片段, 即各片段执行时, 执行顺序变化不会影响最终结果。如图3, 利用parfor并行for循环时, 一个大循环 (Job) 被Job Manager分解成几个子循环 (Task) , 然后交由不同的worker处理, 最终将处理结果汇总返回cli-ent[6]。在MATLAB中, 实现这一设想的方法需两个基本步骤:利用matlabpool启动并行池;将for关键字改写成parfor。

3.2 parfor并行计算FC值测试

本文采用Intel Core i5-2450M双核四进程处理器, 操作系统为WIN764位, MATLAB版本为R2012b。

在FSM计算处理模块中, 关于FC值的计算占有核心地位:一方面FC值的计算公式能从一定程度上消除干扰, 另一方面FC值能客观反映管道壁厚薄。

如表1所示, 采集的数据按行向量导入数据库, 每次采集120个数据。其中, 90个为监测区电压数据, 15个为激励电流数据, 15个为参考板电压数据。同时, 在无腐蚀情况下, 连续监测100组数据u0, 通过格罗布斯准则剔除粗差后, 计算其内部平均值[7], 作为初始数据ub。求取被测数据u与初始数据ub的比值r, 同时用MATLAB编写通过比值r求算FC值的函数fcvalue。

取20000组被测数据u进行测试比较。如图4所示。总体上, 并行循环耗时小于串行耗时, 但大于串行耗时的一半;随着数据量的增加, 两者差距越来越大;数据量较小时, 并行耗时与串行较为接近, 在数据量为1000组时, 串行耗时甚至小于并行。

同时, 在测试过程中, 串行循环时, CUP使用率维持在20%~40% 之间;并行时, CPU使用率在50% ~70%之间, 这说明并行使用了CPU的两个内核。

3.3 测试结果分析

令parfor并行循环总耗时为tp, for串行循环总耗时为tf。在理想情况下, 采用双核并行执行时间应该是单核串行执行的一半, 即tp=tf/2, 但测试结果并非如此, 这是因为在parfor并行过程中, 数据在client中创建, 但执行时需要将数据传输到不同进程的worker中, 这必然会引入数据通信时间tc, 则有:tp=tf/2+tc。

由以上可知, 当数据量较小时, tf较小, 数据通信时间tc对tp的影响较大, 故而可能出现并行耗时接近甚至高于串行的情况;当数据量增加时, tf增加, tc对tp的影响变小, 并行在效率上的优势就显现出来, 故而串、并行执行时间差距会越来越大。

因此, 对原并行程序作出修改:采用矩阵运算代替内部循环, 降低通信时间tc;定义输出矩阵大小, 预留内存存储数据;以数据量2 000为分界点, 2 000以下采用串行, 2000以上采用并行。修改后程序较于原并、串行程序执行效率提升如表2所示。

4 FSM计算模块连用MALTAB并行程序

由于FSM软件系统的整体框架是在VB.net的基础上搭建的, 而并行代码是在MATLAB上编写的, 这势必需要MATLAB与VB连用以满足需求。

MATLAB中可采用deploytool工具将程序编译为COM (Component Object Model, 组件对象模型) 。COM通常以动态链接库 (DLL) 和可执行文件 (EXE) 的形式发布, 它并非一种计算机语言, 而是一种协议或规范, 它能建立两个软件模块之间的动态连接[8]。考虑到模块的后期维护及修改, 采用VB调用DLL的方式较为合适。

采用MATLAB创建DLL步骤如下:① 安装Win-dows SDK (Software Development Kit, 软件开发工具包) ;②输入mbuild-setup命令, 设定编译器;③运行deploytool工具, 选择编译类型为COM, 如图5 (a) ;④选定需编译的文件, 点击编译即可, 如图5 (b) 。

成功使用MATLAB创建DLL后, 用VB调用该DLL, 通过该DLL实现数据交互、运算处理即可。需要注意的是, 在未安装MATLAB相应版本的客户机上, 需要安装MCR (MATLAB Compiler Runtime, MATLAB编译运行环境) , 以使创建的DLL正常工作。

5 结语

提高计算效率, 减少计算时间是采用MATLAB并行优化FSM软件系统的根本目的。通过MATLAB并行计算, 提升了原有的串行计算模块的计算效率;将修改后的计算模块封装在DLL中, 使之能与基于VB的FSM软件系统连用, 解决了VB矩阵运算耗时的问题, 并提高了模块的可维护性。

并行计算不仅可以对单一的循环程序进行加速, 而且可通过多核处理的方式, 同时计算多组不同数据。如何使用并行计算将多条管道的不同腐蚀数据导入并同时计算, 以提高计算效率, 将是下一步研究的重点。

参考文献

[1]ROE D STROMMEN H, HORN K R.A unique method for monitoring corrosion of steel piping and vessels[J].Material Performance, 1993, 32 (3) :50-55.

[2]尚书.电指纹法检测金属容器缺陷的实验研究[D].青岛:中国石油大学, 2012.

[3]肖河川, 廖俊必.基于FSM的平板模型研究[J].电子测量技术, 2012, 35 (3) :107-111.

[4]陈国良, 孙广中.并行计算的一体化研究现状与发展趋势[J].科学通报, 2009, 54 (8) :1043-1049.

[5]余莲.MATLAB并行计算:让高性能计算资源的利用更加高效[J].电子技术应用, 2009 (1) :4.

[6]刘维.实战Matlab之并行程序设计[M].北京:北京航空航天大学出版社, 2012:156-157.

[7]费业泰.误差理论与数据处理[M].第4版.北京:机械工程出版社, 2000:48-50.

MATLAB应用软件 第10篇

数学实验是近几年来数学教育界常提起的一个名词, 泛指学生在教师指导下用计算机和数学软件学习数学, 是继数学建模之后对数学教学体系、内容和方法改革的又一尝试。它通过实践教学使学生认识到数学的可用性, 提高学生的操作能力与解决问题的能力。

MATLAB是一种在工程计算领域广为流行的高级计算机语言。它通常只要一条指令就可以解决诸如矩阵运算、解线性方程组、作函数图像、微积分运算、拉普拉斯变换与逆变换等操作, 从而使人们从繁琐的程序编写与调试中解脱出来, 并且大大缩短程序开发的时间。目前, 该软件几乎已成为工科学生必须掌握的工具, 也成为了课堂教学的一个有效工具。现从高等数学课程中选取一些典型案例, 说明MATLAB软件引入到工科数学教学中的效果。

MATLAB在多元函数教学中的应用案例

工科高等数学课程是工科数学课程的基础, 对于多元函数的微分和积分, 学生理解起来总存在很大的困难, 而教师在上课时为了讲清楚一个多元函数往往要花很多时间, 但成效却不大。究其原因, 主要是高职学生的空间想象能力有限, 在空间解析几何章节的教学过程中就没有深入、透彻地理解这部分内容。因此, 可以在空间解析几何与多元函数微积分的课程教学中借助多媒体手段, 结合MATLAB绘图功能, 绘制出三维曲面的图形, 加深学生对知识点的认识, 从而让学生直观地认识多维函数, 克服心理和知识理解上的困难。

实验1:二次曲面图形的绘制。

在教学中, 我们可以借助MATLAB绘图功能展示图形, 并通过图形讨论参数对二次曲面形态的影响。以二次曲面方程z=ax2+by2为例, 通过简单的语句就可以展示出在参数a、b取不同值时它们的图像, 如图1所示。

实验2:多元函数微积分运算。

多元函数的微分运算与积分运算对高职工科学生而言是个难点。在教学中, 我们可以借助MATLAB的计算功能对该部分知识点的教学进行分解。将计算量大或计算难度较大的问题改为借助计算机完成实际计算, 只要教会学生掌握基本指令操作就可以完成。现分别举例说明极限运算、偏导数运算与重积分运算的MATLAB指令。

(1) 求。MATLAB指令如表1所示。

(2) 已知函数z=5x2-3y4, 求, , 坠2z坠y2。MATLAB指令如表2所示。

(3) 计算, 其中D是矩形区域:。MATLAB指令如表3所示。

MATLAB在微分方程求解中的应用案例

工科高等数学课程中微分方程的计算也是一个难点, 特别是高阶微分方程的计算。如果不考虑学生的认识能力强行对该部分内容进行教学, 将使学生对数学学习失去信心;而如果完全从学生角度考虑放弃该部分内容的教学, 又会使数学教学体系出现模块缺失的情况。解决这个问题最好的途径是引入MATLAB软件, 既可以保证数学知识结构的完整性, 又可以降低学生的学习压力, 提高学生的解题能力。在教学时, 可以结合MATLAB软件的微分方程计算函数, 让学生克服自身数学基础较薄弱的客观原因, 提高学生解决实际问题的能力。

实验3:一阶常微分方程的求解。

一阶常微分方程的求解方法是常数变异法或者公式法, 常数变异法的求解过程相对比较复杂, 学生在完成积分变形的步骤时很容易错。而公式法的公式又较复杂, 记忆起来有难度。在教学中将相对复杂的问题借助软件求解, 教会学生如何正确使用软件提供的指令, 就可以提高学生的学习效率。现以求一阶常微分方程初值问题为例, 简单的几行命令就可以求出该题的结果, 如表4所示。

MATLAB在拉普拉斯变换中的实践案例

工科高等数学课程中拉普拉斯变换与逆变换是让学生又爱又恨的知识点, 它的计算难度相当大, 但它又是学生后续专业课程学习必备的知识点。如何处理好该部分的教学一直是数学教师与专业教师共同的烦恼。经过实践发现, 引入MATLAB软件中求解变换的函数, 可以使学生更轻松地接受这个难度, 同时可拓展学生的专业学习能力。

实验4:狄拉克函数δ (t) 的拉普拉斯变换计算。

狄拉克函数δ (t) 又称单位脉冲函数, 是工程上一个常见的函数。用MATLAB软件计算狄拉克函数δ (t) 的拉普拉斯变换, 命令如表5所示。

实验5:求的拉普拉斯逆变换。相关MATLAB命令如表6所示。

在实践中, 这些实例的示范作用, 结合数学上机实验课程的设置, 增强了学生的学习兴趣, 不少学生对数学由原来的畏难状态变为自觉学习。同时, 我们将常规考核方式进行相应的改革, 从传统的笔试改为笔试与上机考试相结合, 开发了实验上机考试系统, 系统包含训练题库与考试题库, 实现讲练相结合。在不破坏数学整体知识体系的前提下, 将计算难度较大的计算题设计为上机实验操作题, 既能降低考试难度, 又能保证学生学到完整的知识。总之, 在各种数学应用软件快速开发的当代, 向学生介绍MATLAB等各种数学软件, 把他们从繁杂的计算中解放出来, 把数学建模的思想引入工科专业课程中, 能大大提高高职工科学生的建模能力, 既是有益的, 也是有效的。

参考文献

[1]姜启源.数学实验与数学建模[J].数学的实践与认识, 2001 (5) :613—617.

[2]王沫然.MATLAB6.0与科学计算[M].北京:电子工业出版社, 2001.

[3]孙智娟, 徐杜, 钟舜聪.MATLAB在计算机辅助数值分析与计算中的应用[J].计算机工程与科学, 2002 (1) :70—73.

MATLAB应用软件 第11篇

关键词:抽样分布;卡方分布;matlab;实验模拟

G642

3.计算样本统计量

设置每次抽与样本个数n1(自由度为n1),独立重复进行S 次抽样,根据每次样本,计算一次相应统计量,得到S个样本统计量观测值。S可以进行设定。

4.模拟样本统计量分布

根据S个样本统计量的观测值,画出其直方图,用卡方分布的理论分布去拟合直方图。

使用Matlab中的hist函数画出直方图,chi2pdf函数生成卡方理论分布。

三、卡方分布的matlab实验模拟

基于上述实验模拟思路,这部分给出了卡方分布的实验模拟验证。

1.卡方分布实验模拟图象

通过上述matlab,可以得出不同条件下的卡方分布模拟图形,见图:

从图1和图2可以看出:Sn=5000的卡方统计量直方图与理论分布拟合的较好,也就是说抽样次数越多,分布拟合的越好。统计量样本均值几乎等于自由度;样本方差几乎等于自由度的2倍。对于理论卡方分布,期望为自由度n,方差为2n。

从图2可以看出:自由度为20的卡方分布,与正态分布很近似,从直方图上,也可以明显看出这一趋势。随着抽样次数越多,卡方分布越近似于正态分布。与课本上理论卡方分布的性质相一致。

从本文的模拟试验结果看, 重复试验的次数足够大时, 试验统计结果与理论结论非常一致。本文实验方法能有效地模拟抽样分布。

四、总结

利用matlab编程可增强学生对所学知识的理解,使理论问题试验化, 抽象问题具体化, 并对理论进行模拟验证,让学生对抽样分布从感性到理性的认识。

参考文献:

[1]彭维湘,抽样分布的模拟试验方法与应用[J]. 统计与决策,2008 年第11 期。

[2]邢光南,赵团结,盖钧镒,生物统计教学中用SAS 程序讲解抽样分布[J].农业网络信息,2010 年第3 期。

[3]普映娟,李祥,EXCEL 在抽样分布教学中的应用[J]. 保山师专学报,2008 年9 月第27 卷第5 期。

[4]朱泰英,周钢,概率论与数理统计[M].北京:中国铁道出版社,2015。

MATLAB应用软件 第12篇

1 大角度自由振动具有的单摆周期以及其中的角振幅具有的基本关系

想要准确的分析机械结构具有的振动特性, 首先需要删除一些比较次要的因素, 并将其合理的简化成一种简单的动力学模型, 与此同时, 确定具体的自由度数。例如, 摆动, 其中最简单就是在固定的保守力场中, 形成的无阻尼单摆基本模型。其中的悬线长可以设定为l, 具体的摆角为θ (θ<5°) , 将摆长的长度设定为l=1, 并且重力加速度为正常值g=9.8。这样就可以计算出单摆运动在进行小角度振动时产生的微分方程:

式子 (2) 属于单摆运动中进行小角度摆动时具体的微分方程, 同时也是整个简谐振动基本的动力学方程。 (2) 的具体解为:

式子中, Aθ、α都是通过初值条件进行确定的一种待定常数。如果进行大角度摆动, 不能取用sinθ≈θ, 并且微分方程并不是 (1) 而是改成如下:

进行小角度单摆运动的基本周期如下:

可以使用Matlab软件中具有的画图功能, 并能够准确的看到进行大角度单摆运动具有的变化周期。最终的结果为如图1、图2。

其中图1主要表示振动中的角幅度A在最大摆角时, 发生在 (0, π/2) 之间的具体变化周期, 并随着角幅度的逐渐增加, 具体的周期也会逐渐发生相应的变化。图2主要表明了在无阻尼的基本情况下, 无论是小角度摆动或者是进行大角度摆动, 单摆都会呈现一种具有周期性的变化, 并且, 角振幅如果越大它的周期也会越大。其中图1以及图2具体的结果符合上文中的 (5) 式。

2 进行大角度自由振动单摆具有的相图

通过上文中的式 (6) 可以得到具体的角速度为:

设e=E/mgl, 同时相差一个具体的常数因子, 设定2gl=1, 同时:

在式子 (7) 中, 确定了角度以及角速度之间存在的基本关系, 利用Matlab软件, 并结合 (8) 最终得出了图3中在运动中单摆处于各种能量中, 具有的不同运动状态。

相图表示的是相互平衡系统以及一些重要的参数包括角度或者是能量之间具有的基本关系图, 利用图像进行仔细的观察与分析能够准确的判断系统具有的稳定性, 或者是渐近稳定性。如果E<2mgl, 表示其中的单摆能量非常小, 并且它的轨迹是一种闭合式的椭圆曲线。如果E>2mgl, 这就表示摆在势场中将会进行定向运动, 并且它的轨迹将会是两条永远不相交的曲线。其中的θ趋向于±∞。如果E=2mgl, 表示整个运动处于一种临界的状态, 并且下一时刻出现的一些运动行为并没有确定性, 出现非线性情况。在进行非线性的具体振动中, 任何的轻微振动都会导致整个系统出现间断或者是分岔的情况。

3 大角度进行阻尼振动具体的单摆相图

如果充分的考虑到阻尼产生的影响, 可以将上文中的 (4) 改成

针对出现的耗散系统, 对系统长时间产生的行为作为重要的研究对象。结合 (10) , 并利用Matlab软件最终得出单摆具体的相图。

图3 (a) 主要表示在单摆中, 其中的耗散系统产生了混沌, 并且将这种集合环绕看成是一种奇怪的引子。出现的混沌轨道, 表示的是在保守系统中产生的大量能量的耗散现象。例如图3中的两幅图, 对其中的阻尼系数进行细微的改动, 并进行扰动, 经过了较长的时间就会发生巨大的变化, 充分体现了出现的混沌现象具有较大的随机性, 并且最终的运动结果无法进行准确的预测。

4 结束语

综上所述, 本文主要讲述了单摆的自由振动, 并利用Matlab软件具有的微分方程以及可视化等对单摆自由振动进行分析, 最终的结论表明, 利用Matlab处理一些自由振动的基本问题具有较高的效率, 并且结论清晰, 有效的提升了学生的自学能力。

关键词:Matlab软件,单摆自由振动,应用探索

参考文献

[1]胡盘新, 钟季康.在大学物理教材中引入计算机数值解的尝试[J].物理与工程, 2010, 16 (2) :47-50.

[2]宋海珍, 卢成, 张鸿军.基于Maple的理论力学教学实践[J].实验室研究与探索, 2011, 30 (7) :11-14.

MATLAB应用软件

MATLAB应用软件(精选12篇)MATLAB应用软件 第1篇MATLAB是矩阵实验室 (Matrix Laboratory) 的简称, 是美国MathWorks公司出品的商业数...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部