收藏 分销(赏)

MATLAB试验参考指导书专业资料.doc

上传人:快乐****生活 文档编号:2990118 上传时间:2024-06-12 格式:DOC 页数:23 大小:363.04KB
下载 相关 举报
MATLAB试验参考指导书专业资料.doc_第1页
第1页 / 共23页
MATLAB试验参考指导书专业资料.doc_第2页
第2页 / 共23页
MATLAB试验参考指导书专业资料.doc_第3页
第3页 / 共23页
MATLAB试验参考指导书专业资料.doc_第4页
第4页 / 共23页
MATLAB试验参考指导书专业资料.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、MATLAB基本实验指引书 漳州师范学院物电系10月目 录实验一 MATLAB环境熟悉与基本运算.2实验二MATLAB数值运算.8实验三 MATLAB语言程序设计.12实验四 MATLAB图形绘制.12实验五 MATLAB应用实例实验六 采用SIMULINK系统仿真.17实验七 控制系统频域与时域分析 .25实验一 MATLAB环境熟悉与基本运算 一、实验目: 1熟悉MATLAB开发环境2掌握矩阵、变量、表达式各种基本运算二、实验基本知识: 1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、协助信息浏览器、工作空间浏览器文献和搜索途径浏览器。2.掌握MATLAB惯用命令clc

2、 清除命令窗口中内容clear 清除工作空间中变量help 对所选函数功能、调用格式及有关函数给出阐明lookfor 查找具备某种功能函数但却不懂得该函数精确名称who查询工作空间中变量信息3.MATLAB变量与运算符变量命名规则如下: (1) 变量名可以由英语字母、数字和下划线构成(2) 变量名应以英文字母开头(3) 长度不不不大于31个(4) 区别大小写MATLAB中设立了某些特殊变量与常量,列于下表。表1 MATLAB特殊变量与常量变量名 功能阐明 变量名 功能阐明 ANS 默认变量名,以应答近来一次操作运算成果realmin 最小正实数i或j 虚数单位INF(inf) 无穷大pi 圆周

3、率NAN(nan) 不定值(0/0) eps 浮点数相对误差nargin 函数实际输入参数个数realmax 最大正实数nargout 函数实际输出参数个数 MATLAB运算符,通过下面几种表来阐明MATLAB各种惯用运算符表2 MATLAB算术运算符操作符 功能阐明 操作符 功能阐明 + 加 矩阵左除- 减. 数组左除* 矩阵乘/ 矩阵右除.* 数组乘./ 数组右除 矩阵乘方 矩阵转置. 数组乘方. 数组转置表3 MATLAB关系运算符操作符 功能阐明 = 等于= 不等于 不不大于= 不不大于等于= 不大于等于表4 MATLAB逻辑运算符逻辑运算符 逻辑运算 阐明 & And 逻辑与| Or

4、 逻辑或 Not 逻辑非Xor 逻辑异或表5 MATLAB特殊运算符号 功能阐明示例 符号 功能阐明示例 : 1:1:4;1:2:11 . ; 分隔行 . , 分隔列 () % 注释 构成向量、矩阵 ! 调用操作系统命令 构成单元数组= 用于赋值 4.MATLAB一维、二维数组寻访表6 子数组访问与赋值惯用有关指令格式指令格式 指令功能 A(r,c) 数组A中r指定行、c指定列之元素构成子数组A(r,:) 数组A中r指定行相应所有列之元素构成子数组A(:,c) 数组A中c指定列相应所有行之元素构成子数组A(:) 数组A中各列元素首尾相连构成“一维长列”子数组A(i) 一维长列子数组中第i个元素

5、A(r,c)=Sa 数组A中r指定行、c指定列之元素构成子数组赋值A(:)=D(:) 数组全元素赋值,保持A行宽、列长不变,A、D两组元素总合应相似5.MATLAB基本运算表7 两种运算指令形式和实质内涵异同表数组运算 矩阵运算 指令 含义 指令 含义 A 非共轭转置A 共轭转置A=s 把标量s赋给A每个元素s+B 标量s分别与B元素之和s-B,B-s 标量s分别与B元素之差s.*A 标量s分别与A元素之积s*A 标量s分别与A每个元素之积s./B,B.s 标量s分别被B元素除S*inv(B)B阵逆乘s A.n A每个元素自乘n次An A阵为方阵,自乘n次A.p 对A各元素分别求非整数幂Ap

6、方阵A非整数乘方A+B 相应元素相加A+B 矩阵相加A-B 相应元素相减A-B 矩阵相减A.*B 相应元素相乘A*B 内维相似矩阵相乘A./B A元素别B相应元素除A/B A右除B B.A 与上相似BA A左除B exp(A) 以自然数e为底,分别以A元素为指数,求幂expm(A)A矩阵指数函数log(A) 对A各元素求对数logm(A) A矩阵对数函数sqrt(A) 对A各元素求平方根sqrtm(A)A矩阵平方根函数 6.MATLAB惯用函数表8 原则数组生成函数指令 含义 指令 含义 diag 产生对角形数组(对高维不合用)rand 产生均匀分布随机数组eye 产生单位数组(对高维不合用)

7、 randn产生正态分布随机数组magic 产生魔方数组(对高维不合用) zeros产生全0数组ones 产生全1数组size()返回指定矩阵行数和列数表9 数组操作函数指令 含义 diag 提取对角线元素,或生成对角阵flipud以数组“水平中线”为对称轴,互换上下对称位置上数组元素fliplr 以数组“垂直中线”为对称轴,互换左右对称位置上数组元素reshape在总元素数不变前提下,变化数组“行数、列数” rot90 矩阵逆时针旋转90度det 方阵行列式值rank 矩阵秩三、实验内容 1、新建一种文献夹(自己名字命名) 2、启动MATLAB6.5,将该文献夹添加到MATLAB途径管理器中

8、。办法如下: 3、保存,关闭对话框 4、学习使用help命令,例如在命令窗口输入help eye,然后依照协助阐明,学习使用指令eye(其他不会用指令,依照此办法类推) 5、学习使用clc、clear,观测command window、command history和workspace等窗口变化成果。6、初步程序编写练习,新建M-file,保存(自己设定文献名,例如exerc1、exerc2、exerc3),学习使用MATLAB基本运算符、数组寻访指令、原则数组生成函数和数组操作函数。注意:每一次M-file修改后,都要存盘。练习A: (1) help rand,然后随机生成一种26数组,观测

9、command window、command history和workspace等窗口变化成果。(2)学习使用clc、clear,理解其功能和作用。(3)输入C=1:2:20,则C(i)表达什么?其中i=1,2,3,10。(4)输入A=7 1 5;2 5 6;3 1 5,B=1 1 1;2 2 2;3 3 3,在命令窗口中执行下列表达式,掌握其含义: A(2,3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A2 A.2 B/A B./A(5)二维数组创立和寻访,创立一种二维数组(48)A, 查询数组A第2行、第

10、3列元素,查询数组A第2行所有元素,查询数组A第6列所有元素。(6) 两种运算指令形式和实质内涵比较。设有3个二维数组A24,B24,C22,写出所有由2个数组参加合法数组运算和矩阵指令。(7) 学习使用表8列惯用函数(通过help办法) (8) 学习使用表9数组操作函数。 练习B(10)用reshape指令生成下列矩阵,并取出方框内数组元素。实验二 MATLAB数值及符号运算一、 实验目:1、理解随着矩阵、稀疏矩阵、魔方矩阵、对角矩阵、范德蒙等矩阵创立,掌握矩阵基本运算2、掌握矩阵数组运算3、掌握多项式基本运算4、会求解代数方程5、掌握创立符号表达式和矩阵办法6、掌握符号表达式微分和积分运算

11、二、 实验基本知识:1、创立矩阵办法:直接输入法;用matlab函数创立矩阵2、矩阵运算:矩阵加、减(,)运算矩阵乘(*)运算矩阵乘方inv 矩阵求逆det 行列式值eig 矩阵特性值diag 对角矩阵 矩阵转置sqrt 矩阵开方3、矩阵数组运算:数组加减(.+,.-):相应元素相加减数组乘(.*):a,b两数组必要有相似行和列,两数组相应元素相乘数组除(./,.):a./b=b.a 都是b元素被a相应元素除(a除以b)a.b=b./a 都是a元素被b相应元素除( 除以a)数组乘方(.):元素对元素幂数组点积(点乘):维数相似两个向量点乘,其成果是一种标量数组叉积:就是一种过两个相交向量交点且

12、垂直于两个向量所在平面向量数组混合积:先叉乘后点乘4、多项式运算 poly 产生特性多项式系数向量roots 求多项式根p=poly2str(c,x)(以习惯方式显示多项式)conv,convs多项式乘运算deconv多项式除运算多项式微分polyder(p):求p微分polyder(a,b):求多项式a,b乘积微分p,q=polyder(a,b):求多项式a,b商微分5、代数方程组求解1).恰定方程组解方程ax=b(a为非奇异)两种求解办法: x=inv(a)*b 采用求逆运算解方程 x=ab 采用左除运算解方程 2)超定方程组解方程 ax=b ,mn时此时不存在唯一解。 x=(a a)-1

13、 a b 求逆法 3)欠定方程组解matlab可求出两个解:用除法求解x是具备最多零元素解是具备最小长度或范数解,这个解是基于伪逆pinv求得。6、复数运算:复数实虚部、模和幅角计算real_z=real(z) image_z=imag(z)magnitude_z=abs(z)angle_z_radian=angle(z)%弧度单位angle_z_degree=angle(z)*180/pi%度数单位 7、符号矩阵创立1)用matlab函数sym创立矩阵(symbolic 缩写)命令格式:A=sym( ) 2)用字符串直接创立矩阵8、符号矩阵修改a.直接修改:可用、键找到所要修改矩阵,直接修改

14、b.指令修改:subs(A,new,old)来修改9、符号矩阵与数值矩阵转换将数值矩阵转化为符号矩阵,函数调用格式:sym(A)将符号矩阵转化为数值矩阵,函数调用格式: numeric(A)10、符号微积分与积分变换diff(f) 对缺省变量求微分diff(f,v) 对指定变量v求微分diff(f,v,n) 对指定变量v求n阶微分int(f) 对f表达式缺省变量求积分int(f,v) 对f表达式v变量求积分int(f,v,a,b) 对f表达式v变量在(a,b)区间求定积分11、符号代数方程求解solve(f) 求一种方程解solve(f1,f2,fn) 求n个方程解12、符号微分方程求解指令:

15、dsolve命令格式:dsolve(f,g): f 微分方程,可多至12个微分方程求 解;g为初始条件,默认自变量为 x,可任意指定自变量t,u等,微分方程各阶导数项以大写字母D表达 三、实验内容:1、生成一种3行3列随机矩阵,并逆时针旋转90,左右翻转,上下翻转。2、已知a=1 2 3,b=4 5 6, 求a.b和a./ b3、数组和矩阵有何不同?4、已知a=1 2 3;4 5 6;7 8 0,求其特性多项式并求其根。5、已知多项式a(x)=x2+2x+3,b(x)=4x2+5x+6,求a,b积并微分。6、求解方程1)2) 3)7、用两种办法创立符号矩阵,A = a,2*b 3*a, 0 并

16、把其中a改为c。8、计算二重不定积分9、对符号方程f = ax2+bx+c 求解1)对x求解2)对a求解。10、求解微分方程。实验三 MATLAB语言程序设计一、实验目: 1、熟悉MATLAB程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计办法 3、函数文献编写和设计 4、理解和熟悉跨空间变量传递和赋值 二、实验基本知识: 1、程序流程控制语句 for循环构造语法:for i初值:增量:终值 语句1 语句n end 阐明:1i初值:终值,则增量为1。 2初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。while 循环构造 语法:while 逻辑表达式 循环体语句

17、end 阐明:1、whiIe构造根据逻辑表达式值判断与否执行循环体语勾。若表达式值为真,执行循环体语句一次、在重复执行时,每次都要进行判断。若表达式值为假,则程序执行end之后语句。2、为了避免因逻辑上失误,而陷入死循环,建议在循环体语句恰当位置加break语句、以便程序能正常执行。(执行循环体次数不拟定;每一次执行循环体后,一定会变化while背面所跟关系式值。) 3、while循环也可以嵌套、其构造如下: while逻辑表达式1 循环体语句1 while逻辑表达式2 循环体语句2 end 循环体语句3 end if-else-end分支构造if 表达式 1 语句1 else if 表达式

18、2(可选) 语句2 else(可选) 语句3 end end 阐明:1.if构造是一种条件分支语句,若满足表达式条件,则往下执行;若不满足,则跳出if构造。2else if表达式2与else为可选项,这两条语句可根据详细状况取舍。3注意:每一种if都相应一种end,即有几种if,记就应有几种end。switch-case构造语法:switch表达式case常量表达式1 语句组1 case常量表达式2 语句组2 otherwise 语句组n end 阐明:1switch背面表达式可以是任何类型,如数字、字符串等。2当表达式值与case背面常量表达式值相等时,就执行这个case背面语句组如果所有常

19、量表达式值都与这个表达式值不相等时,则执行otherwise后执行语句。程序流程控制指令break、return、pause 2、函数文献构造和编写办法 函数只能在函数体内对变量进行操作,也就是只能访问函数自身工作空间中变量。M函数文献构造(1) 函数定义行(function) (2) H1行(函数协助文本第一行) (3) 函数协助文本(4) 函数体(5) 注释函数文献编写后,保存时,其文献名必要与函数名相似。注意:函数名不要与MATLAB自身函数命令相似。三、实验内容: 练习A 1、熟悉MATLAB程序编辑与设计环境2、用for循环语句实现求1100和。3、用for循环语句实现编写一种求n阶

20、乘函数文献。4、Fibonacci数组元素满足Fibonacci 规则:且 ,现规定该数组中第一种不不大于10000元素。练习B 思考题4、已知一维数组A=2,4,5,8,10,B=4,6,9,3,4,用for循环语句实现。求和函数可用sum()。.5、运用for循环求1!+2!+3!+ +5!值。.实验四 MATLAB图形绘制 一、实验目: 1、学习MATLAB图形绘制基本办法; 2、熟悉和理解MATLAB图形绘制程序编辑基本指令; 3、熟悉掌握运用MATLAB图形编辑窗口编辑和修改图形界面,并添加图形各种标注; 4、掌握plot、subplot指令格式和语法。二、实验基本知识: 1、plo

21、t(x,y)-绘制由x,y所拟定曲线; 2、多组变量绘图:plot(x1,y1,选项1,x2,y2,选项2,); 3、双Y轴绘图:plotyy()函数; 4、图形窗口分割; 5、图形编辑窗口使用。 三、实验内容 练习A 【1】二维曲线绘图基本指令演示。本例运作后,再实验plot(t),plot(Y),plot(Y,t) ,以观测产生图形不同。t=(0:pi/50:2*pi);k=0.4:0.1:1;Y=cos(t)*k;plot(t,Y)plot指令基本操作演示【2】用图形表达持续调制波形Y=sin(t)sin(9t) 及其包络线。t=(0:pi/100:pi);y1=sin(t)*1,-1;

22、y2=sin(t).*sin(9*t);t3=pi*(0:9)/9;y3=sin(t3).*sin(9*t3);plot(t,y1,r:,t,y2,b,t3,y3,bo) axis(0,pi,-1,1)【3】在一种图形窗口绘制正弦和余弦曲线,规定给图形加标题“正弦和余弦曲线”,X轴Y轴分别标注为“时间t”和“正弦、余弦”,在图形某个位置标注“sin(t)”“cos(t)”,并加图例,显示网格,坐标为正方形坐标系。【4】绘制向量x=1 3 0.5 2.5 2饼形图,并把3相应某些分离出来。【5】绘制参数方程x=t,y=sin(t),z=cos(t)在t=0 7区间三维曲线。【6】用hold on

23、命令在同一种窗口绘制曲线y=sin(t),y1=sin(t+0.25)y2=sin(t+0.5),其中t=0 10。【7】观测各种轴控制指令影响。演示采用长轴为3.25,短轴为1.15椭圆。注意:采用多子图(图6.2-4)体现时,图形形状不但受“控制指令”影响,并且受整个图面“宽高比”及“子图数目”影响。t=0:2*pi/99:2*pi;x=1.15*cos(t);y=3.25*sin(t);subplot(2,3,1),plot(x,y),axis normal,grid on,title(Normal and Grid on) subplot(2,3,2),plot(x,y),axis equal,grid on,title(Equal) subplot(2,3,3),plot(x,y),axis square,grid on,title(Square) subplot(2,3,4),plot(x,y),axis image,box off,title(Image and Box off) subplot(2,3,5),plot(x,y),axis image fill,box off title(Image and Fill) subplot(2,3,6),plot(x,y),axis tight,box off,title(Tight)各种轴控制指令不同影响

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 应用文书 > 技术指导

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服