《Matlab及其应用》讲义精品资料.doc
《《Matlab及其应用》讲义精品资料.doc》由会员分享,可在线阅读,更多相关《《Matlab及其应用》讲义精品资料.doc(64页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Matlab及其应用讲义杜华强浙江林学院环境科技学院第一讲 MATLAB系统概述第一节 MATLAB语言概述一、MATLAB语言的发展 matlab语言是由美国的Clever Moler博士于1980年开发的 设计者的初衷是为解决“线性代数”课程的矩阵运算问题 取名MATLAB即Matrix Laboratory 矩阵实验室的意思Matlab(Matrix Laboratory)是美国MathWork公司于1982年推出的一套高性能的数值计算和可视化软件,它集成数值分析、矩阵运算、信号图像处理和图像图形显示于一体。矩阵运算的方便快捷性;程序编写的简洁、简单性;图形图像显示的优美性;加上Matl
2、ab本身很强的开放性和适应性以及图形用户界面(GUI)生成的方便性和扩充的灵活性,使得Matlab倍受青睐,大大节省了科研工作者的时间和精力,成为当前国内外科研人员以及大专院校学生争相学习的大众化软件。自1982年 MathWork公司推出第一版本以来,目前的版本已到7.0以上,其功能更加完善,极大的方便了各种科学计算以及不同领域应用程序的开发。2、MATLAB语言简介Matlab最受青睐的应该是其语言的强大功能。Matlab语言简化、集成了自然科学和社会科学中众多算法,许多复杂的计算过程在Matlab中往往仅需要几条命令或命令组合便可以完成。Matlab语言是一种解释性的语言,其语言中变量的
3、基本单位是矩阵,变量的赋值语法为变量表达式。对于变量,在Matlab中有全局变量(很少用)和局部变量(经常)两种类型,变量的数据类型包括字符变量和数值变量两种基本类型;在程序编写过程中变量不需要提前定义,往往根据程序编写的需要随时定义。它将一个优秀软件的易用性与可靠性、通用性与专业性 、一般目的的应用与高深的科学技术应用有机的相结合MATLAB是一种直译式的高级语言,比其它程序设计语言容易MATLAB已经不仅仅是一个“矩阵实验室”了,它集科学计算、图象处理;声音处理于一身,并提供了丰富的Windows图形界面设计方法MATLAB语言是功能强大的计算机高级语言, 它以超群的风格与性能风靡全世界,
4、 成功地应用于各工程学科的研究领域MATLAB在美国已经作为大学工科学生必修的计算机语言之一 (C, FORTRAN, ASSEMBLER, MATLAB)近年来,MATLAB语言已在我国推广使用,现在已应用于各学科研究部门和许多高等院校MATLAB语言不受计算机硬件的影响,286以上的计算机都可以使用二、matlab能在各领域做什麽 工业研究与开发 数学教学,特别是线性代数 数值分析和科学计算方面的教学与研究 电子学、控制理论和物理学等工程和科学 学科方面的教学与研究 经济学、化学和生物学等计算问题的所有其他领域中的教学与研究举例x,y=meshgrid(1:.1:20);z=cos(x).
5、*sin(y);figure,surf(x,y,z)shading interpfigure,contour(x,y,z,10)X0,Y0,Z0=sphere(30);X=2*X0;Y=2*Y0;Z=2*Z0;surf(X0,Y0,Z0);shading interphold on,mesh(X,Y,Z),colormap(hot),hold offhidden offaxis equal,axis off t=linspace(0,2*pi,100); r=1-exp(-t/2).*cos(4*t);X,Y,Z=cylinder(r,60);ii=find(X0&Y大于 =大于等于小于 4
6、tf= a=b tf= b-(a2) tf= (a4) tf= (a2)&(a=0).*y; % 将 sin(x) 的负值设为零 z=z + 0.5*(y0); % 再将上式的值加上0.5 z=(x8).*z; % 将大于 x=8 以后的值设为零 hold on plot(x,z) xlabel(x),ylabel(z=f(x) title(A discontinuous signal) hold off4 函数(1)内部函数(2)专用函数(工具箱)(3)用户自己定义的函数函数的嵌套 如sqrt(log(z)多输入、多输出函数 x1,x2=ffjie(a,b,c);5表达式:变量、数值、函数用
7、操作符连接起来,就构成了表达式a=(1+sqrt(10)/2b=abs(3+5i)c=sin(exp(-2.3);d=pi*aA=3 9 5;B=2 1 5;C1=A./B.2C2=(A./B).22.2矩阵基础MATLAB的运算事实上是以阵列 (array) 及矩阵 (matrix) 方式在做运算,而这二者在MATLAB的基本运算性质不同,阵列强调元素对元素的运算,而矩阵则采用线性代数的运算方式。1输入矩阵(1)直接输入(2)外部调用(3)内部产生x = 1 2 3 % 一维 1x3 阵列 dx=x(end:-1:1) % 将x倒序排列 x = 1 2 3; 4 5 6 % 二维 2x3 矩
8、阵,以;区隔各列的元素 x=1:3;4:6;7:9load lx1.txt; lx1a=eye(3);b=ones(2,5);c=zeros(3,3);d=rand(2,3);e=magic(3)2矩阵转置x3矩阵元素求和(行、列、总和)sum(x);sum(x,2);sum(sum(x);sum(x(:)sum(diag(x);4矩阵的下标(1)矩阵元素的访问(下标的引用)b=x(1,2)+x(2,3);双下标访问注意:矩阵元素的存储是按列顺序存储的,因此可以通过单变量下标来访问矩阵元素b=x(4)+x(8);(2)矩阵元素的修改x(2,3)=15;x(2,1:3)=5 10 15(3)超过
9、矩阵的维数会提示出错5矩阵的连接a=1 2;3 4b=a a+5;a-5 zeros(size(a)c=a;5 10d1=a a a;a a a 可以用下面的操作完成d2=repmat(a,2,3)6 矩阵的行列删除b(2,:)=;b(2,:)=b(1,2)=(对吗?)b(4)=7 矩阵信息的获取(1)length 返回矩阵最长方向的长度(2)ndims 返回矩阵的维数(3)numel 返回矩阵的元素个数(4)size 返回矩阵的行列数2.3 矩阵的产生和操作(矩阵结构的改变)1 矩阵的产生(1)单位矩阵的产生A=eye(5);B=eye(2,3)C=eye(4,6);(2) 1矩阵的产生A=
10、ones(5)B=ones(3,2)C=1 2 3;4 5 6;7 8 9;10 11 12;C1=ones(size(C)(3)0矩阵的产生A=zeros(5)B=zeros(3,2)C=1 2 3;4 5 6;7 8 9;10 11 12;C1=zeros(size(C)(3)对角矩阵的产生A=7 5 3B1=diag(A)B1=diag(A,1)主对角线上B2=diag(A,-1) 主对角线下(4)产生均匀分布(正态)的随机矩阵 A=rand(5,5)B=randn(5,5) C=randn(1000,1);figure,hist(c)D=rand(1000,1);figure, his
11、t(D)(5)时间和日期datenow; datestr(now)Clock; fix(clock)calendar(2007,3)%日历2 矩阵的操作(1)rot90 矩阵逆时针旋转90度A=1:3:10;2:3:11;3:3:12Ra=rot90(A)(2)以竖直(水平)方向为轴做镜像A=1:3:10;2:3:11;3:3:12fav=fliplr(A)fah=flipud(A)(3)矩阵重新排列rea=reshape(A,2,6)%矩阵按列顺序存储第三讲 Matlab 图形系统(数据可视化)Matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言
12、所不能比拟的。matlab语言的绘图功能 不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。 matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力句柄绘图方法。 在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。一、二维绘图(一)plot 最基本的二维图形指令plot的功能: plot命令自动打开一个图形窗口Figure 用直线连接相邻两数据点来绘制图形根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x, y 轴用对数坐标表示如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形可单窗口单曲线绘图;可单窗口
13、多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图可任意设定曲线颜色和线型可给图形加坐标网线和图形加注功能plot的调用格式 plot(x) 缺省自变量绘图格式,x为向量, 以x元素值为纵坐标,以相应元素下标为横坐标绘图 plot(x,y) 基本格式,以y(x)的函数关系作出直角坐标图,如果y为nm的矩阵,则以x 为自变量,作出m条曲线plot(x1,y1,x2,y2) 多条曲线绘图格式 plot(x,y,s) 开关格式,开关量字符串s设定曲线颜色和绘图方式,使用颜色字符串的前13个字母,如 yellowyel表示等。或plot(x1,y1,s1,x2,y2,s2,)S的标准设定值如下: 字母
14、颜色 标点 线型 y 黄色 点线 m 粉红 圈线 c 亮蓝 线 r 大红 字线 g 绿色 实线 b 蓝色 * 星形线 w 白色 : 虚线 k 黑色 (-) 点划线1. 单窗口单曲线绘图例1:x=0, 0.48,0.84,1,0.91,0.6,0.14 x1, x2, x3, x4, x5, x6, x7,plot (x)2. 单窗口多曲线绘图例2:t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y,t,y1,t,y2)例 3:y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);y3=cos(t);
15、y4=cos(t+0.25);y5=cos(t+0.5);plot(t,y,y1,y2,y3,y4,y5)y3=cos(t);y4=cos(t+0.25);y5=cos(t+0.5);plot(t,y3);hold on; plot(t,y4); plot(t,y5);3. 单窗口多曲线分图绘图subplot 子图分割命令调用格式: subplot(m,n,p) 按从左至右,从上至下排列 subplot(1,3,1); plot(t,y)subplot(1,3,2); plot(t,y3)subplot(1,3,3); plot(t,y2)subplot(3,1,1);plot(t,y)sub
16、plot(3,1,2);plot(t,y3)subplot(3,1,3);plot(t,y2)subplot(position,left bottom width height)4. 多窗口绘图 figure(n) 创建窗口函数,n为窗口顺序号。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y) 自动出现第一个窗口figure(2)plot(t,y1) 在第二窗口绘图figure(3)plot(t,y2) 在第三窗口绘图5.可任意设置颜色与线型例 4(例2):plot(t,y,r-,t,y1,g:,t,y2,b*)6.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab及其应用 Matlab及其应用讲义 精品资料 Matlab 及其 应用 讲义 精品 资料
限制150内