matlab环境及基本操作

上传人:无*** 文档编号:192865365 上传时间:2023-03-07 格式:PDF 页数:21 大小:896.08KB
收藏 版权申诉 举报 下载
matlab环境及基本操作_第1页
第1页 / 共21页
matlab环境及基本操作_第2页
第2页 / 共21页
matlab环境及基本操作_第3页
第3页 / 共21页
资源描述:

《matlab环境及基本操作》由会员分享,可在线阅读,更多相关《matlab环境及基本操作(21页珍藏版)》请在装配图网上搜索。

1、-1-实验 1 Matlb工具熟悉 实验目的:1熟悉 Matlab 环 境,掌握Matlab 的主要窗口及功能;2学会Matlab 的帮助使用;3掌握向量、矩阵 的定义、生成方法和基本运算;4掌握Matlab 的基本符号运算;5掌握Matlab 中的二维图形的绘制和控制。实验内容:1启动Matlab,说明主窗口、命令窗口、当前目录窗口、工作空间窗口、历史窗口、图形窗口、M 文件编辑器窗口的功能。2实例操作Matlab 的帮助使用。3实例操作向量、矩阵 的定义、生成方法和基本运算。4实例操作Matlab 的基本符号运算。5实例操作Matlab 中的二维图形绘制和控制。实验仪器与软 件:1 CPU

2、 主频在2GHz 以上,内存在512Mb 以上的PC;2 Matlab 7及以上版本。一、Matlab环境及主要窗口的功能 运行Matlab 安装目录下的matlab.exe 文件可启动Matlab 环境,其默认布局如下图:-2-其中,1主窗口的功能是:主窗口不能进行任何计算任务操作,只用来进行一些整体的环境参数设置,它主要对6 个下拉菜单的各项和10个按钮逐一解脱。2命令窗口的功能是:对MATLAB 搜索路径中的每一个M 文件 的注释区的第一行进行扫描,一旦发现此行中含有所查询的字符串,则将该函数名及第一行注释全部显示在屏幕上。3.历史窗口的功能是:历史窗口显示命令窗口中的所有执行过的命令,

3、一方面可以查看曾经执行过的命令,另一方面也可以重复利用原来输入的命令行,可以从命令窗口中直接通过双击某个命令行来执行该命令,4.当前目录窗口的功能是:显示当前目录下所有文件的文件名、文件类型、和最后修改的时间,同时还提供搜索功能,在该窗口下,可以改变当前目录 5.M 文件编辑器窗口的功能是:MATLAN 提供了一个内置既有编辑和调试功能好的程序编辑器;编辑器窗口也有菜单和工具栏,是编辑和调试程序非常方便 6.发行说明窗口功能是:该窗口显示MATLAB 总包和已安装的工具箱的帮助、演示、GUI工具和产品主页等4个内容。7.工作空间窗口的功能是:该窗口显示所有目前内存中MATLAB 变量的变量名、

4、数字结构、字节数以及类型,不同的变量类型分别对应不同的变量名图标 8.图形窗口的功能是:利用图形窗口和工具栏中的选项,可以对图形进行线性、颜色、标记三维视图、光照和坐标轴等的设置 9.GUI(Graphacal User Interface)窗口功能是:二、Matlab的帮助使用 Matlab提供的联机帮助系统使用户在没有任何资料的情况下就能掌握它的使用和基本操作,作为Matlab的用户应熟练掌握其联机帮助系统的使用,下面是 Matlab联机帮助系统的使用方法。-3-通过命令窗口中直接输入help 命令将会显示当前帮助系统只能怪包含的所有项目 help 三、向量的定义、生成和基本运算 1:向量

5、的生成 a:逐个元素直接输 入,向量元素需要用“”括起来,元素之间 可以用空格、逗号或分号分隔。用空格和逗号分隔生成的行向量用分号分隔生成列向量.例如:h=3 4 5 6 7 8 f=3;4;5;6;7;8 b:利用冒号表达式创建 通过设定“步长(step)”生成一维行向量,通过格式为:x=x0:step:xn。x0 表达向量的首元素值,xn 表示尾元素数值限,step 表示从第二个元素开始,每一个元素与前一个元素的差值。step=1 时,可以省略此项的输入,直接写成x=x0:xn。例:y=0:10:100 x=0:100 -4-c:定数线性采样生成 设定总点数n 下,均匀采样生成一维行向量。

6、通用格式为x=linspace(a,b,n)。a,b 分别是生成向量的第一个和最后一个元素,n是采样总点数。该指令生成的数组相当于由a:(a-b)/(n-1):b 生成的数组。缺省n时,生成100 维的行向量。clear%清除工空间中的所有变量 x=linspace(6,66,8)y=6:60/7:66 z=linspace(6,66)d:定数对数采样生成向量 设定总点数n 下,经“常用对数”均匀采样生成一维行向量。通用格式为x=logspace(a,b,n)。生成数组的第一个元素值为10a,最后一个元素值为10b,n 为采样总点数,缺省时,生成50 维的行向量。例如:clear%清除工作空间

7、 的所有变 量 x=logspace(1,8,8)y=1:7/7:8 xx=10.y z=logspace(1,8)2:向量元素的引用 格式为:向量名(下标范围或元素所满足的条件)。例:clear rand(state,0)%把均匀分布伪随机发生器置为初始状态 x=rand(1,8)%产生(18)的均匀分布随机数组 x(7)%引用数组x 的第7 个元素 y=x(1 2 5)%引用数组x 的第一、二、五个元素 z=x(1:3)%引用数组x 的前三个元素 w=x(3:end)%引用数组x 的从第三个元素以后的元素 v=x(3:-1:1)%由数组x 的前3 个元素倒排构成的了数组 u=x(find(

8、x0.5)%数组x 中大于0.5 的元素构成的子数组 t=x(1 2 3 4 4 3 2 1)%重复 引用数组 3:向量与标量、向量与向量的运算 四则 运算符号有(*/.*./.)a:标 量 a与向量 x 进 行四则 运算是 a分别 与 x 中的每 个元素进行四则 运算并生一个与 x 等长 的向量。例如 clear x=4 5 6 7 8 9 10 11 y=3*x+3 z=x/2-1 -5-p=4x b:等长 的两个向量才能进 行四则 运算,向量 x与 y进 行四则 运算是这 两个向量的对应元素分别进行四则 运算并生成一个与它们 等长 的向量。例如 clear x=1 2 3 4 5 6 y

9、=x*2 z=x+y w=x.*y n=x./y d=x.y 幂运算(.)a:向量x 与标量a 的幂运算是对x 的每一个元素施行幂运算,例如 clear x=1 2 3 4 5 6 y=x.3 z=3.y b:向量x 与向量y 的幂运算是元素对元素的幂运算。例如:clear x=1 2 3 4 5 6 y=x*2 z=x.y b=y.x 指数运算、对数运算与开方运算等 在 MATLAB 中,数组的运算实质上是数组内部每个元素的运算,因此,数组的指数运算、对数运算与开方运算等与标量运算完全一样,运算函数分别为“exp”、“log”、“sqrt”等。例如:clear x=3 5 7 9 11 13

10、 y=exp(x)z=log(x)-6-t=sqrt(x)四、矩阵的定义、生成和基本运算 1.矩阵的创建 a:逐个元素直接输入 把矩阵元素需用“”括起来,同行元素之间用空格或逗号分隔,行与行之间用分号或回车符分隔 矩阵元素可为运算表达式,无任何元素的矩阵称为空矩阵。例如 x=1 2 3;4 5 6;7 8 9 y=1,2,3;4,5,6;7,8,9 k=sin(pi/7),cos(pi/4)T=编写M 文件创建大矩阵 对于大型矩阵,可通过编写脚本式M文件,然后运行该文件来创建。例如:编写一名为Example10.m 的M 文件,内容如下。%Example10.m%编 写一 M 文件创 建矩阵

11、的示例文件。emn=456 344 224 56 36;0 97 665 86 45;29 50 5 124 36;14 38 54 259 178;459 54 145 245 233 ans=1/2*k2-1/2*k ans=1/2*a2*x4+1/2*a*x2 ans=1/6*pi2 通过函数创建特殊矩阵%Example.m%编 写一 M 文件,通过 函数创 建特殊矩阵 的示例文件。%由函数 zeros 创 建全 0 矩阵。N=4;M=3;A=1 2 3 4 5;2 3 5 6 1;4 4 4 2 5;-7-B1=zeros(M,N)%生成 MN 阶 全 0 阵。C1=zeros(siz

12、e(A)%生成与A同阶 的全0阵。A2=ones(N)%生成 NN 阶 全 1 阵。B2=ones(M,N)%生成 MN 阶 全 1 阵。C2=ones(size(A)%生成与A同阶 的全1阵。%由函数 eye 创 建单 位矩阵。A2=eye(N)%生成 NN 阶单位矩阵 C2=eye(size(A)%生成与A同阶单位矩阵。%由函数 rand 或 randn 创 建随机矩阵。A3=rand(N)%生成 NN 阶 均匀分布的随机阵,元素值 在(0.0,1.0)区间 内。B3=rand(M,N)%生成 MN 阶 均匀分布的随机阵。C3=rand(size(A)%生成与 A 同阶阶均匀分布的随机阵。

13、H=hilb(N)%生成 NN 阶 Hilbert 矩阵。2.矩阵元素的引用 相对位置引用格式:变量名(行标,列标)绝对位置引用格式:变量名(绝对位置索引)clear rand(state,0)A=rand(5,3)A(4)%引用距阵A 的第四个元素 A(2,3)%引用矩阵A 的第二行第三列元素 3.矩阵元素的抽取 抽取行 clear rand(state,0)A=rand(5,6)A(4,:)%抽取矩阵 A 的第四 行 A(2 3,:)%抽取矩阵 A 的第二 行和第三行 B=A(3 3,:)%抽取矩阵 A 的第三行和第三 行赋值给B C=A(3:end,:)%抽取矩阵 A 的第三行至最后一行

14、赋值给B 抽取列 clear rand(state,0)-8-A=rand(5,6)A(:,3)%抽取矩阵 A 的第三列 A(:,1 3)%抽取矩阵 A 的第一列和第三列 B=A(:,3 1)%抽取矩阵 A 的第三列和第一列赋值给B 抽取块 clear rand(state,0)A=rand(3,4)B=A(1 2,2 3)%抽取矩阵 A 的第一、二行与第二、三列交叉的元素赋值给B 抽取矩阵对角线上的元素 clear rand(state,0)A=rand(6)%产 生(66)的均匀分布随机数组 V=diag(A)%抽取矩阵 A 的主对 角线 上的元素赋值给向量 V D=diag(V)%以向量

15、 V 为对角线 元素生成对 角矩阵 D1=diag(V,2)D2=diag(V,-2)U=diag(A,1)%抽取矩阵 A 的主对 角线 上方第一条对 角线 的元素赋值给向量 U L=diag(A,-1)%抽取矩阵 A 的主对 角线 下方第一条对 角线 的元素赋值给向量 L 抽取矩阵上三角部分和下三角部分 clear rand(state,0)A=rand(5)%产 生(55)的均匀分布随机数组 U=triu(A,1)%从矩阵 A 的主对 角线 上方第一条对 角线开始抽取 A 的上三角部分 U=triu(A,-1)%从矩阵 A 的主对 角线 下方第一条对 角线开始抽取 A 的上三角部分 L1=

16、tril(A,1)L2=tril(A,-1)4.矩阵的基本数学运算 矩阵 的四则 运算(+-*/)与线 性代数理论 一致,其中,AB=inv(A)*B=A-1*B。-9-clear A=3 2 3 0;2 1-4 6 B=-1 3;4 1;6 0;7 9 C=A+B D=A*B E=B/D F=DA 矩阵与常数间的运 算(+-*/)同线性代数理论 一致,需注注的是,当进 行数除时,常数通常只能做除数。clear A=1 2 3 0;2 1-4 6 C=A+2 D=A*2 E=A/2 F=2A G=A(1 2,1 2)2 矩阵 的数组运算(.+.-.*./.)是指同维数组间对应元素之间的加、减、

17、乘、除和幂运算,其中“.+”和“.-”分别与“+”和“-”相同,所以,“.+”和“.-”一般不用。clear A=7 2 8 0;5 1-4 6 B=A+2 C=A.*B D=A./B E=B.A F=A.2 矩阵 的基本初等运算 clear A=1 2 3 0;2 1-4 6;-1 3 4 1;6 0 7 9 A(2,:)=A(2,:)*2%2 乘 A 的第二行 A(1,:)=A(1,:)+A(2,:)%2 乘 A 的第二行,加到 A 的第一行 A(2 3,:)=A(3 2,:)%交换 A 的第二 行和第三行 -10-矩阵 的逆运算 clear A=1 2 3 0;2 1-4 6;-1 3

18、4 1;6 0 7 9 B=inv(A)矩阵 的行列式运算 clear A=1 2 3 0;2 1-4 6;-1 3 4 1;6 0 7 9 B=det(A)矩阵 的指数运算 clear A=1 2 3 0;2 1-4 6;-1 3 4 1;6 0 7 9 B=expm(A)矩阵 的对数运算 clear A=4 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9 B=expm(A)C=logm(B)D1=logm(A)D2=log(A)矩阵 的开方运算 clear A=9 2 3 2;2 1 4 6;1 3 4 1;6 4 7 9 B=A2 C=sqrtm(B)B1=sqrtm(A)B

19、2=sqrt(A)5.矩阵的一些特殊操作 -11-变维方法:“:”和函数“reshape”。reshape(A,M,N)%将已知矩阵变维成M N 阶矩阵 reshape(A,M,N,p,)%将已知矩阵变维成M N P阶矩阵 clear a=1:12;A=reshape(a,3,4)c=zeros(2,6);c(:)=a(:)矩阵的变向。clear a=1:12;A=reshape(a,3,4)k=3;dim=1;A1=rot90(A);A2=rot90(A,k);A3=fliplr(A);A4=flipud(A);A5=flipdim(A,dim);矩阵的扩展与收缩。clear a=1:12;

20、A=reshape(a,3,4)B=eye(3,2)C=ones(2,6)D=A B;C%利用小矩阵的组合来生成大矩阵 D(6:10,9:10)=4%利用对矩阵标识块的赋值命令生成大矩阵 -12-D(:,3:end)=%将矩阵标识块置为空以收缩矩阵 五、多项式的定义、生成和基本运算 1.多项式的表示 对于多项式 nnnnnaxaxaxaxP1110)(用行向量,110nnaaaaP表示,把多项 式问题转化为 向量问题。2.多项式的创建 直接输入系数向量 由于在MATLAB 中的多项式是以向量形式储存的,因此,直接输入多项式对应的向量,MATLAB 会自动将向量元素按降幂顺序分配给各项系数值,向

21、量可以为行向量,也可以是列向量。例如:输入多项式:336523xxx p=1-5 6-33;poly2sym(p)%poly2sym 通过特征多项式创建 也就是从矩阵求其特征多项式获得。例如:A=1 2 3;4 5 6;7 8 9 p=poly(A)poly2sym(p)-13-由多项式的根创建多项式 root=7-3+6i-3-4i;p=poly(root)poly2sym(p)3.多项式运算 求多项式的值 一般调用函数polyval 进行计算,例如:p=1 11 55 125;b=6 2;0-1;polyval(p,b)求多项式的根 求多项式的根可以有两种方法,一种是直接调用函数roots

22、 求解多项式的所有根;另一种是通过建立多项式的伴随矩阵再求其特征值的方法得到多项式的所有根。两种方法求得的根是相等的。例如:p=2-5 6-1 9;roots(p)P=compan(p)eig(p)3.多项式的乘除法运算 多项式的乘法由函数conv 来实现,除法则由函数deconv来实现,例如:p=2-5 6-1 9;poly2sym(p)d=3-90-18;poly2sym(d)-14-pd=conv(p,d)poly2sym(pd)p1=deconv(pd,d)4.多项式的微分 多项式的微分由函数polyder 来实现,例如:p=2-5 6-1 9;poly2sym(p)Dp=polyde

23、r(p)poly2sym(Dp)5.多项式拟合 多项式拟合的实现,一面可以由矩阵的除法求解超定方程来进行;另一方面可调用函数polyfit 来实现,调用方法如下:p,s=polyfit(X,Y,n)其中,X、Y 为拟合数据,n 为拟合多项式的次,p 为拟合多项式的系数向量,s 为拟合多项式系数向量的结构信息,例如:x=0:pi/20:pi/2;y=sin(x);p=polyfit(x,y,5)x1=0:pi/30:pi*2;y1=sin(x1);y2=polyval(p,x1);plot(x1,y1,b-,x1,y2,r+)legend(原曲线,拟合曲线)-15-axis(0 7-1.2 9)

24、五、Matlab的基本符号运算 1:符号表达式的生成 用引号来生成符号表达式,例如 f=exp(x);f=a*x2+b*x+c=0;f=Dy-y=x 用 sym来生成符号表达式,例如 f=sym(exp(x);f=sym(a*x2+b*x+c=0)用函数 syms 来生成符号函数,例如 syms y u;p=exp(y/u)2 符号表达式的运算 提取分子、分母,例如 f=sym(a*x2/(b-x)n,d=numden(f)3 符号表达式的基本运算 4 符号表达式的高级运算 a:符号表达式的复合函数运算通过 compose 来实现;例如 syms x y t;f=1/x3;g=tan(y);c

25、ompose(g,f)compose(g,f,t)b:符号表达式的反函数运算通过函数 finverse来实现;例如 f=sym(1/sin(x);g=finverse(f)c:符号表达式的符号和运算通过函数 symsum 来实现;例如 k=sym(k);symsum(k)symsum(k,0,n-1)symsum(1/k2,1,inf)3 符号与数值间的转换及符号的可变精度运算 -16-a:符号表达式转换成数值表达式 p=1+sqrt(2)/2;eval(p)b:数值表达式转换成符号表达式;例如 p=1.7071;n=sym(p)n=17071/10000 4:符号表达式的简化 a:见符号表达

26、式类似于数学课本中的形式显示;例如 sym x;f=taylor(exp(-x)f=1-x+1/2*x2-1/6*x3+1/24*x4-1/120*x5 pretty(f)b:合并符号表达式中的同类项;例如 syms x y;f=sym(x2*y+y*x-x2-2*x);f=collect(f)f=(y-1)*x2+(y-2)*x f=collect(f,y)f=(x2+x)*y-x2-2*x c:对符号表达式进行因式分解;例如 syms x;f=sym(x7-1);f=factor(f)f=(x-1)*(x2+x+1)*(x6+x3+1)d:对符号表达式进行展开;例如 syms x y;f=

27、expand(x+1)3)f=x3+3*x+1 s=expand(sin(x+y)s=sin(x)*cos(y)*sin(y)-17-e:对符号表达式进行简化;例如 syms x;f=sym(x-1)3/(x-1);f=simplify(f)f=(x-1)2 simple(f)5:符号微积分 a:符号极限;例如 syms x y;limit(sin(x+y)-sin(x)/y,y,0)b:符号微分 syms x;sym(x-1)3)c:符号积分;例如 syms u alpha;int(sin(alpha*u),alpha)6:符号方程求解 a:符号代数线性方程求解;例如 solve(p*sin

28、(x)=r)solve(a*x2+b*x+c,a)b:符号代数非线性方程求解;例如 六、Matlab 中的二维图形绘 制和控制 1:绘制一个正弦函数图象 x=0:0.1:2*pi;y=sin(x);plot(x,y)-18-01234567-1-0.8-0.6-0.4-0.200.20.40.60.81 在图形中绘制坐标网格 x=0:0.1:2*pi;y=sin(x);plot(x,y)grid on 01234567-1-0.8-0.6-0.4-0.200.20.40.60.81 取消坐标中的网格 x=0:0.1:2*pi;-19-y=sin(x);plot(x,y)grid on grid

29、 off 01234567-1-0.8-0.6-0.4-0.200.20.40.60.81 x=0:0.1:2*pi;y=sin(x);z=cos(x);plot(x,y,x,z)-20-01234567-1-0.8-0.6-0.4-0.200.20.40.60.81 x=0:0.1:2*pi;y=sin(x);z=cos(x);plot(x,y,g:diamond,x,z,b)01234567-1-0.8-0.6-0.4-0.200.20.40.60.81 x=0:0.1:2*pi;y=sin(x);z=cos(x);-21-plot(x,y,g:diamond,x,z,b)axis equal 0123456-2-1.5-1-0.500.511.52 七、实验总结

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!