资源描述:
《matlab的使用matlab》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Matlab的使用Matlab的历史回顾一、Matlab简介Matlab全称——MatrixLaboratory,该语言是美国NewMexico大学计算机系主任CleveMoler在79年代后期首先设计的.并于80年代初开发了第二代专业版.1984年,CleveMoler和JohnLitter成立了Mathworks公司,并开始把Matlab推向市场.MathWorks公司在90年代陆续推出了Matlab4.x和5.x版.尤其是5.x版,在帮助信息上采用了超文本格式和PDF格式.时至今日,Matlab以达到了7.0版.可以说,Matlab已经发展成为适合多学科,多种工作平台的功能
2、强大的大型软件.Matlab的语言特点⑴语言简洁紧凑,使用方便灵活,库函数丰富.用C,Fortran语言编写一个程序去解决一个实际问题,少则几十行,多则几百行.要调试这样的程序有时是相当困难的.而Matlab提供了相当多的库函数和工具来解决此类问题.我们以下面的问题为例:设求解矩阵方程在Matlab的Command窗口中,先建立矩阵和列向量,然后执行命令即得问题的解⑵运算丰富在Matlab中,软件提供了几乎和C语言一样多的运算符,灵活使用Matlab的运算符将使得程序极为简单.⑶结构化的编程方法如同其它编程语言,Matlab既提供了具有结构化的控制语句(如forwhileifbr
3、eak等),又具有面向对象编程的特性.⑷图形功能强大Matlab提供了功能强大的绘图功能,利用此功能,使得数据的可视化更为简单.在下面的问题中,我们针对人口增长模型,采用指数二次曲线拟合,观察实际数据与计算曲线的接近程度,从而检验模型的实际意义.在上图中可以看到,指数的二次曲线拟合与实际数据拟合得是相当好的.⑸不足之处与其它高级语言相比,Matlab的一个显著缺点是运行的速度较慢,其原因是Matlab并不产生编译程序和可执行文件,而是边解释边运行,因而速度较低.二、Matlab的基本计算1.矩阵计算在Matlab下,矩阵的运算极为简便.⑴定义矩阵⑵矩阵的运算⑶求解矩阵方程由于矩阵
4、乘法的不可换性,故求解矩阵方程时要注意和右乘的差别,因而求解矩阵方程的命令也是不相同的.对矩阵方程求解命令为而对矩阵方程则求解命令为⑷求特征和特征向量求解矩阵特征值的命令为例如对前面的矩阵,命令则可得到特征值向量2.函数的定义与函数值的计算与其它编程语言不同的是,Matlab中对用户自定义的函数必须存放在特定的文件中——M文件中,使用十调用该函数.在程序文件中使用的函数也必须加以调用.例如自定义函数及计算函数值先建立函数文件再在Command窗口中执行命令要作出函数在区间中的图形,可执行命令同样可以执行命令3.多项式的定义及计算多项式的定义命令为对应的次多项式为在前例中,对函数可
5、定义多项式为求多项式的值的命令为多项式求根命令在上例中,求多项式的根:得根为表1基本函数及功能表函数名功能Max求向量或矩阵列的最大值Min求向量或矩阵列的最小值Mean求向量或矩阵列的平均值Median求向量或矩阵列的中间值Std求标准差Sum求和Cov求协方差函数名功能Cumprod累计积Cumtrapz累计数值积分Gradient求数值偏导数4.曲线拟合曲线拟合是数据分析中的一项重要内容.下面的例子说明对已知的数据如何使用曲线拟合的方法.例使用3次多项式来拟合5个数据点在Matlab下分别执行命令,并得到曲线例已知某城市20年的人口数据为197919801981198219
6、833.95.37.29.612.91984198519861987198817.123.131.438.650.2表2人口数据表但是对于一些较为复杂的问题,直接计算可能会造成数据上较大的误差,故要对数据进行预处理,下面的例子说明了对该类问题的解决方法.1989199019911992199362.976.092.0105.7122.819941995199619971998131.7150.7179.0205.0226.0在Matlab下分别执行命令,并得到曲线一次和二次多项式的曲线拟合一次,二次和四多项式的曲线拟合5.双重函数双重函数是Matlab的一个特征,主要应用于求函数
7、的极值,函数的极限,数值积分等.类别函数名功能求极值和根Fminbnd求单变量函数的极小值Fmins求多变量函数的极小值Fzero求单变量函数的根数值积分Quadl低阶数值积分Quads高阶数值积分dblquad双重数值积分绘制曲线Ezplot绘制字符串形式的函数Fplot绘制函数曲线⑴求函数的极值格式其中的应是一个Matlab的内部库函数或者用户自己定义的函数.例求函数在区间中的最小值和最大值,则需要经过下面的过程:1.建立一个m文件,在文件中定义函数2.使用命令fminbnd