MATLAB仿真技术试验指导书2016附问题详解_第1页
MATLAB仿真技术试验指导书2016附问题详解_第2页
MATLAB仿真技术试验指导书2016附问题详解_第3页
MATLAB仿真技术试验指导书2016附问题详解_第4页
MATLAB仿真技术试验指导书2016附问题详解_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用文档实验项目及学时安排实验一 MATLAB环境的熟悉与基本运算2学时实验二MATLAB数值计算实验2学时实验三MATLAB数组应用实验2学时实验四MATLAB符号计算实验2学时实验五MATLAB的图形绘制实验2学时实验六MATLAB的程序设计实验2学时实验七MATLAB工具箱Simulink的应用实验2 学时实验八MATLAB图形用户接口 GUI的应用实验2 学时实验一 MATLAB 环境的熟悉与基本运算一、实验目的1 .熟悉MATLABT发环境2掌握矩阵、变量、表达式的各种基本运算实用文档二、实验基本知识1.熟悉MATLAM境:MATLABt面和命令窗口、命令历史窗口、帮助信息浏览器、工

2、作空间浏览 器、文件和搜索路径浏览器。2.掌握MATLABT用命令clc消除命令窗口中内容clear;清除工作空间中变量help对所选函数的功能、调用格式及相关函数给出说明lookfor;查找具有某种功能的函数但却不知道该函数的准确名称二who查询工作空间中的变量信息3.MATLA蛮量与运算符变量命名规则如下:(1)变量名可以由英语字母、数字和下划线组成(2)变量名应以英文字母开头(3)长度不大于31个(4)区分大小写MATLA呻设置了一些特殊的变量与常量,列于下表。表1 MATLAB勺特殊变量与常量变量名功能说明变量名功能说明ANS默认变量名,以应答 最次操作运算结果realmin最小的正实

3、数i或j虚数单位INF(inf)无穷大pi圆周率NAN(nan)不定值(0/0)eps浮点数的相对误差nargin函数实际输入参数个数1realmax最大的正实数nargout函数实际输出参数个数MATLAB1算符,通过下面几个表来说明 MATLAB勺各种常用运算符表2 MATLA骑术运算符糜作符功能说明糜作符功能说明+加矩阵左除:-减.数组左除*矩阵乘/矩阵右除实用文档.*数组乘./数组右除A:矩阵乘力矩阵转置人数组乘方.数组WS表3 MATLA联系运算符操作符功能说明=等于二不等于大于=大于等于R-furertr nag- for 了己Other fun-ti口nt named 白了号2、

4、学习使用clc、 clear ,观察 command window command history 和workspace等窗口的变化结果。3、初步程序的编写练习,新建 M-file ,保存(自己设定文件名,例如 exercl、exerc2、exerc3 ),学习使用 MATLAB勺基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。注意:每一次M-file的修改后,都要存盘。(1) help rand ,然后随机生成一个2X6的数组,观察并记录command window command history 和 workspace 等窗 口的变化 结果。rand 6)|实用文档ans =0.

5、95720*80030. 42180.79220.65570.84910.4S540.14190, 91570.95S50,03570,9340(2)学习使用clc、clear , 了解其功能和作用。(3)输入C=1:2:20,则C (i )表示什么?其中i=1,2,3,。 01:2:20135791113151719(4)输入 A=7 1 5 ; 2 5 6 ; 3 1 5 , B=1 1 1; 2 2 2; 3 3 3 ,在命令窗口中执行下列表达式,记录其结果:2=广 1 5;2 51 51 1; 2 23 3 3A(2f 3)A(:r2):) f1:2:3) A(:r3.*3(;f2)A

6、.*BB/AA(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B AA2 AA2 B/A B./A(5)二维数组的创建和寻访,创建一个二维数组(4X8) A,查询数组A第2行、第3列的元素,查询数组 A第2行的所有元素,查询 数组A第6列的所有元素。实用文档三.A3*Ccluircia 二 through 5?c-/L7C0217/13382L7/131G3七 54?=55/37343329/70733919/434729/1211119/21414/1627158/13275333/1070316/310

7、324/13854B7/3196S60/25513S9/73433Z662229/232531/E43CclLmna through S6L4/S757工7F. 2173773/776“焊110S5/124914/3021217/257Cmim/艺厂61321/139573/1541占ns aa =CcIuhcij 1 thrcuffh 53320/70733919/4934Ccliimis through 三773/7761333/1391725/1211119/216414S/L627105/1245695/1291 773/776-01/z3?(6)两种运算指令形式和实质内涵的比较。设有

8、 3个二维数组 5B2X4, Gx2,写出所有由2个数组参与的合法的数组运算和矩阵指令。A+B; A-B C*A, C*B A/B A.*B A.+BA.-B A./B AAB-AB(7)学习使用表8列的常用函数(通过help方法)(8)学习使用表9数组操作函数。实用文档(9)用reshape指令生成下列矩阵,并取出方框内的数组元素1234510987161112131415116 171819202122232425实用文档X=l 10 11 L 21 2 9 12 17 22 3 8 13 13 23 4 7 14 19 24 5 G IS 20 2S a=reshape xr 5r 5)

9、 a(2P2:3) w捶:%幻 a(4:5rl:3)Columns 1 Ehrough 511IE21110Columns区 through 1。?12I-?22Coluirns11 through 1533;3;S231 thrcugh 2l4L141324CclULmS21 Wrouah. 25561520251.3J510gp76111213141516171313202122232i25亘口 a =ans =17IS21223实用文档实验二 MATLAB 数值计算实验? 实验目的1、了解伴随矩阵、稀疏矩阵、魔方矩阵、对角矩阵等各种矩阵的创建,掌握矩阵的基本运算2、掌握矩阵的数组运算3、

10、掌握多项式的基本运算4、会求解代数方程? 实验基本知识1、创建矩阵的方法:直接输入法、用 MATLA函数创建矩阵2、矩阵运算:矩阵加、减(, )运算矩阵乘()运算矩阵乘方inv矩阵求逆det行列式的值eig矩阵的特征值diag 对角矩阵矩阵转置sqrt 矩阵开方3、矩阵的数组运算:数组加减(.+,.-) :对应元素相加减数组乘 ( ):a, b 两数组必须有相同的行和列,两数组相应元素相乘数组除(./ ,):a./b=b.a 都是 b 的元素被a 的对应元素除(实用文档除以 b)a.b=b./a都是a的元素被b的对应元素除(b除以a)数组乘方(A):元素对元素的幕数组点积(点乘):维数相同的两

11、个向量的点乘,其结果是一个标量数组叉积:就是一个过两个相交向量的交点且垂直于两个向量所在平面的向量数组混合积: 先叉乘后点乘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

12、=ab 采用左除运算解方程2)超定方程组的解方程 ax=b ,mn 时此时不存在唯一解。x=(a a)-1 a b 求逆法3)欠定方程组的解MATLAEM求出两个解:用除法求的解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%度数单位三、实验内容1、生成一个3 行 3 列的随机矩阵,并逆时针旋转90,左右

13、翻转,上下翻转。实用文档M=magic(3)rcr90 fliplr(M) lipui(M)e43A ie求 a.b 和 a./b2、已知 a=1 2 3 , b=4 5 6实用文档2 刃,b=4 5 , iAta,/t456ana =45/22ana -1/42/53、数组和矩阵有何不同?数组中的元素可以是字符等,矩阵中的只能是数,这是二者最直观的区别。从 外观形状和数据结构上看,二维数组和数学中的矩阵没有区别。但是矩阵作为 一种变换或映射算子的体现,矩阵运算有着明确而严格的数学规则。而数组运 算是Matlab软件所定义的规则,其目的是为了数据管理方便、操作简单、指令 形式自然和执行计算的有

14、效。虽然数组运算尚缺乏严谨的数学推理,而且数组 运算仍在完善和成熟中,但是它的作用和影响正随着matlab的发展而扩大。4、已知a=1 2 3;4 5 6;7 8 0,求其特征多项式并求其根。实用文档a=L 25 EQ 弓 0ana =-72ana =k-3 -5、求解方程1xi + 2x2 = 82x1 + 3x2 = 13实用文档A=l 2;2 31b=E 133-A b;n-2包McJ7cmmt: rat4上1一=a * *%;X-Abelseif rA=r3srAKszninj:二口 net specify eauatisns and variacles =3 character st

15、rings * ZnstPad,sjTLbslic iafcles with 3u.XI =-(七 + b2 - 4*a*c)(1/2)/(2*a-(t - (b2 - 4*a*c)(1/2)/(2*a:二c netc;eAte sTtslicapecify equaticns with sym3.8、求解微分方程色十2日十2尸0,.0) = 1, dx dx实用文档y=d3Olve(TD2y+2*Dy+2*y=0TF (0)-1 *Dy(0)=0T, Tx)sxp(-x)*cc3x - exp(-x)*sinx.实验三MATLAB数组应用实验?实验目的1、掌握字符串数组、单元数组创建及显示、

16、结构数组创建及访问2、掌握符号表达式的微分和积分运算?实验基本知识?字符串数组相关命令? 直接输入法-用单引号或者大括号+单引号? disp(S)法-S是字符串,作用是显示出 S的文本? char(S)法-S 是字符串,作用是显示出 S的文本in? input(out,in) 法-显示出字符串out的文本并等待终端的输入, 可缺省? 在字符串中用两个单引号来表示一个单引号? findstr(S1,S2)-在较长字符串里查找较短字符串所在的位置并返回位置值? str2mat()-字符串转换成矩阵? str2num()、num2str()- 字符串与数值互相转换?单元数组相关命令实用文档? 直接创

17、建法- 使用大括号 、对细胞元素直接赋值? cell(m,n)-创建一个m*n 的空细胞矩阵(所有行的细胞数必须相同)? celldisp()-逐个显示cell 中的每个元素值? cellplot(C)-用彩色的图形来显示单元型变量C的结构形式? 结构数组相关命令? 直接输入法- 使用“ . ”将结构变量名和元素名连接格式: struct_name(record#).field_name = data? S = struct( fieldl ,V1, field2 ,V2,)-field 为各成员变 量名,V为对应的各成员变量的内容? S = rmfield(S,fields)-将结构数组S

18、中的 fields 项删除,仍用数组名S表示? 结构体名称. 数组名称 - 在结构数组中调用元素项? C = strcuct2cell(S) 、 S = cell2struct(C)- 结构数组与单元数组 的转换? ma浴器? mapobj = containers.Map( keyl , key2 , ,vall ,val2 ,)-创建map对象? keys()、values。-查看 map对象? existingmapobj(newkeysname) = newvalue 在个 map对象中添 加新元素? remove(mapname, keyname ) - 从 一 个 map 对 象

19、中 删 除 keys/values 对三、实验内容? 创建一个名为 S、内容为 “ matlab programming for engineers. ” 的字符 申,并查找字符用S中字母为“g”出现的位置以及出现的次数。实用文档S-rmaElab prograiEiitiing for engineers findstr(Sr1j) 3 - prograxKiing fcr engineers ana = iiie26? ?创建大小为2x2的单元数组,其元素分别为:字符串( Sun Yang, Liu Wen)、字符串数组(char( 2012001 , 2012002)、数值 矩阵(85

20、89 90;80 87 88)和细胞数组( Maths , Maths,Matlab)。实用文档B工Yang, Liu Wen;B(lr21-char001, J割 12箕,);B2F1=35,S5,90;aOr87,8B;C=cell (L*Clf3)-hMAtlabrB2t2)-C IHaLhs1 J TEath3r TMathsr J2x7 char1x3 cell)* Sun Yan., Liu Ken1 2x3 dlzutle?创建一个数组名为student的结构数组,其内容如下表所示:IDNameAgeSexScore3001zhao20F903002wang21M863003ya

21、ng18F883004liu19F80实用文档m 二二上 七二二 1 ,二二=3二二:s* ms nt 1 . iTar.e3 zhzc1 student(1) ,Age=20 srtienr .:1 .ex=E s* ms nt 1 ,号二匚二三二9 二n.二二=3 二口23*mErLt 1 . trar.e= 一亘二? student2,Age=21 sriiienr 2 Ses-y1 arms nt 2 . 5czz:=i csrtiienr II=3:O3srisdsnt : 3 . ir=r.e=:石二口1 student(3 ,Ase-18 sriiienr (3 Sex=rFr

22、srisdsnt -: 3 ,5zzz:=:istudent: (4) II30043*isdent .4 .Kar.= liua was nt :4; ,Age=L9s rude nt 4,甑F srisdent : 4 * S二二:三=三二 5wasnt (1st Ude nt (23tisdent : 3 :student(4)田ID0 Name田AgeSex由 Score3001zhao20F903002Wang21IM863003yang18F883004liu,19F80实验四MATLAB符号计算实验?实验目的1、掌握创建符号表达式和矩阵的方法2、掌握符号表达式的微分和积分运算?实

23、验基本知识1、符号矩阵的创建实用文档1)用matlab函数sym创建矩阵(symbolic 的缩写)命令格式:A=sym( )2)用字符串直接创建矩阵2、符号矩阵的修改直接修改:可用、键找到所要修改的矩阵,直接修改3、符号矩阵与数值矩阵的转换将数值矩阵转化为符号矩阵,函数调用格式: double(A)将符号矩阵转化为数值矩阵,函数调用格式: numeric(A)4、符号微积分与积分变换diff(f)一对缺省变量求微分diff(f,v) 一对指定变量v求微分diff(f,v,n) 一对指定变量v求n阶微分int(f) 一 对f表达式的缺省变量求积分int(f,v) 一对f表达式的v变量求积分in

24、t(f,v,a,b) 一对f表达式的v变量在(a,b)区间求定积分5、符号代数方程求解solve(f)求一个方程的解solve(f1,f2, - fn)求n个方程的解6、符号微分方程求解指令:dsolve命令格式:dsolve(f,g) : f微分方程,可多至 12个微分方程的求解;g为初始条件,默认自变量为x,可任意指定 自变量t,u 等,微分方程的各阶导数项以大 写字母D表示三、实验内容工(1+- L)lim1)1、用符号方法求下列极限sin 0 X实用文档lim2)1fx - V arccos x2、用符号方法求下列积分2)SiTftS XLimits :r0-Pl)aH -2 (1/2

25、3/2R -即对“ - 4TdmX (2s 3 1/2) *11 / 3 * 12*X21 / 3 + 3” 口 JFERI .I 24 3 3147 C 5153 5 9/9DQ 71992592 r 13 *eip SS99277049j + 3j 5 / 3 -实验五 MATLAB的图形绘制实验一、实验目的1、学习MATLAB:维、三维图形绘制的基本方法;2、熟悉和了解MATLAIM形绘制程序编辑的基本指令;3、熟悉掌握利用 MATLAES形编辑窗口编辑和修改图形界面,并添加图形的各种标注;4、掌握 clf、plot、plot3、subplot、hold、figure 、gtext、me

26、sh surf、 cylinder 、sphere、 polar、 bar、hist 、pie、area、 fill 、 scatter 、 stairs 、 stem、contour等的指令格式和语法。实用文档二、实验基本知识1、plot(x,y) 绘制由x,y所确定的曲线;选项2,);2、多组变量绘图:plot(x1, y1, 选项1, x2, y2,3、双Y轴绘图:plotyy()函数;4、图形窗口的分割;5、图形编辑窗口的使用。实用文档三、实验内容(1)绘制下列函数二维图形。y=k*cos(t),t 0,2 兀,k 0.4,1,分布以plot(t,y) 、plot(t) 、plot(y

27、)、plot(y,t)产生图形并记录观察其不同。实用文档L=(0:pi/5 0:2*pi)1;7=CC3(L)SUkplCL,九 1);plot(t,y)5QipLcL(2,2,2);9 二 ct msubplot; (2 F 2,3);plot(y)JiJLCplst 2 r 2,41 ;Uf)及其包络线(2)绘制连续调制波形Y=sin(t)sin(9t)实用文档(参考)实用文档:ei;99 ?:ei; 注,ft,; y=sin(c).*3in(5*ti; plotgyL Jr1 .jyNJL . held cn plot(pi,Q,op) plcc(3 3,u 7 pier(pi/9f0f

28、 cl) plot(2*pi/9f 0, 1oj plot(3*pU%0( crJ pierc)plot (5*pi/9f 0( oj plQt (*pi/ 9, 0 f 1 c T) plot(7*pi/9t0f o) plot(a*pi/SfQror)(3)绘制向量 x=1 3 0.5 2.5 2的饼形图,并把3对应的部分分离出来实用文档HP二ci3 f jsiJi仁),ccs (r r C, Jx = t = sin(t), z = cos(t)(5)用hold on 命令在同一个窗口绘制曲线y=sin(t) , y1=sin(t+0.25),y2=sin(t+0.5),其中 t C 0

29、 10。1234 5G 7&91。(参考)实用文档r=lfn9pace(0r10f100);y=ain(t); plctt,y,h-t);hold cn;yl=sin(t-l-0.25);plot(tFyl;hold。:i;y2=sin (t+0.5);plo(t,y2; held z-012345670910(6)使用sphere()函数产生球面坐标,绘制网线图和表面图实用文档X,Y#Zsphere(30);xlabel(1xF J;ylabel(_F);zlabel(* z);subplot -: 1 r 2 r 1);inesh (XrY,2);sucplcz I,2t2);jurf(X

30、,Y, Z;实验六MATLAB的程序设计实验一、实验目的1、熟悉MATLAB?序编辑与设计环境2、掌握各种编程语句语法规则及程序设计方法3、函数文件的编写和设计实用文档4、了解和熟悉跨空间变量传递和赋值二、实验基本知识1、程序流程控制语句for 循环结构语法:for i =初值:增量:终值语句1;;语句n;end说明: 1. i=初值:终值,则增量为1。2初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。while 循环结构语法: while 逻辑表达式循环体语句end说明: 1、 whiIe 结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执行循环体语句一

31、次、在反复执行时,每次都要进行判断。若表达式的值为假,则程序执行 end之后的语句。2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break 语句、以便程序能正常执行。(执行循环体的次数不确定;每一次执行循环体后,一定会改变while 后面所跟关系式的值)3、 while 循环也可以嵌套、其结构如下:while 逻辑表达式1循环体语句1while 逻辑表达式2循环体语句2end循环体语句3endif-else-end 分支结构if 表达式 1语句 1else if 表达式 2( 可选 )实用文档语句2else( 可选 )语句3endend说明: 1.if 结构是一个条件

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

33、行otherwise 后的执行语句。程序流程控制指令:break 、 return 、 pause2、函数文件的结构和编写方法函数只能在函数体内对变量进行操作,也就是只能访问函数本身工作空间中的变量。M函数文件的结构(1) 函数定义行(function )(2) H1行(函数帮助文本的第一行)(3) 函数帮助文本实用文档(4)函数体注释函数文件编写后,保存时,其文件名必须与函数名相同。注意:函数名不 要与MATLA的身的函数命令相同。三、实验内容:1、用for循环语句实现求1100的和3=0;=1:1003=3+k;号二日2、用循环语句实现编写一个求n阶乘的函数文件。3、已知一维 数组 A=2,4,5,8,10,B=4,6,9,3,4,用for循环语句 实现o求和函数可用sum()。实用文档clear allA-2r4r5,e,10;t=I; 7=0; fcr i-l:5j;end实验七MATLAB工具箱Simulink的应用实验一、实验目的:1、熟悉SIMULINK工作环境及特点2、掌握线性系统仿真常用基本模块的用法3、掌握SIMULINK的建模与仿真方法二、实验基本知识:1、了解SIMULINK模块库中各子

温馨提示

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

评论

0/150

提交评论