1、春季学期 MATLAB 期末作业学院:机电工程学院专业:机械制造设计及其自动化学号:班号:姓名:2013 年春季学期MATLAB 课程考查题姓名: 学号:学院: 机电学院 专业: 机械制造一、 必答题:1. matlab 常见的数据类型有哪些?各有什么特点?常量:具体不变的数字变量:会根据已知条件变化的数字字符串:由单引号括起来的简单文本复数:含有复数的数据2. MATLAB 中有几种帮助的途径?(1)帮助浏览器:选择 view 菜单中的 Help 菜单项或选择 Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器;(2)help 命令:在命令窗口键入“help” 命令可以列出帮
2、助主题,键入“help 函数名”可以得到指定函数的在线帮助信息;(3)lookfor 命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数(4)模糊查询:输入命令的前几个字母,然后按 Tab 键,就可以列出所有以这几个字母开始的命令和函数。注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用 help 命令显示详细信息。3. Matlab 常见的哪三种程序控制结构及包括的相应的语句?1.顺序结构:数据输入 A=input(提示信息,选项) 数据输出 disp(X) 数据输出 fprintf(fid,format,varia
3、bles) 暂停 pause 或 pause(n)2.选择结构:If 语句:if expression (条件)statements1(语句组 1)elsestatements2(语句组 2)EndSwitch 语句:switch expression (表达式)case value1 (表达式 1)statement1(语句组 1)case value2 (表达式 2)statement2(语句组 2). .case valuem (表达式 m)statementm(语句组 m)otherwisestatement (语句组)end3.循环结构:For 循环:for variable=exp
4、ression(循环变量 )statement(循环体)endWhile 循环:while expression (条件)statement(循环体)end4. 命令文件与函数文件的主要区别是什么? 命令文件:不接受输入参数,没有返回值,基于工作空间中的数据进行操作, 自动完成需要花费很多时间的多步操作时使用。函数文件:可以接受输入参数,可以有返回值,默认时,文件中参数的作用范围只限于函数内部,扩展 MATLAB 语言功能时使用 。5. 什么是全局变量和局部变量?全局变量:作用域是在整个 MATLAB 工作空间,即全程有效,所有函数都可以对其进行存取和修改,定义全局变量是函数之间传递信息的手段
5、。局部变量:函数文件变量一般是局部变量,与其他函数和 matlab 工作空间是隔离的。即在一个函数文件中定义的变量不能被另一个函数文件引用。如果在若干函数中,把某个变量定义为全局变量,那么这些函数可以共用这个变量。6. 数据插值和曲线拟合区别?曲线拟合研究的是如何寻找平滑曲线以最好的表现带噪声的测量数据,但不要求拟合曲线穿过这些测量数据点;插值是研究如何平滑的估算出基准数据之间的其他点的函数值,所以插值所得曲线一定要穿过基准数据。7. 数值运算与符号运算的区别?数值运算:1. 其运算的元素是数值;2. 在运算过程中必须先对变量进行赋值,然后才能参加运算;3. 其结果以数值形式出现。符号运算:1
6、. 其运算的元素是符号;2. 在运算过程中无须对变量进行赋值就可参加运算;但是必须先定义符号变量;3. 其结果以符号形式出现。8. GUI 开发环境中提供了哪些方便的工具?各有什么用途?布局编辑器(Layout Edtor)在图形窗口中创建及布置图形对象;几何排列工具(Alignment Tool)调整各对象之间的几何关系和位置;属性查看器(Property Inspector)查询并设置对象的属性值;对象浏览器(Object Browser)用于获得当前 Matlab 窗口中图形对象句柄的分级排列;菜单编辑器(Menu Editor)建立和编辑主菜单和图形对象鼠标右键菜单Tab 顺序编辑器(
7、Tab Order Editor)用于设置当用户按下键盘上的Tab 键时,对象被选中的先后顺序。9. 简述 Simulink 建立子系统的两种方法及其子系统封装的 4 个选项1、使用 Subsystems 模块库中的 Subsystem 模块建立子系统,首先构成系统的整体模型,然后编辑空的子系统内的模块。 (注意,对于多输入与多输出子系统而言,需要使用 Sources 模块库中的 In1 输入虚模块与 Sinks 模块库中的 Out1输出虚模块来实现。 )2、首先选择能够完成一定功能的一组模块,然后选择 Simulink 模型创建编辑器中 Edit 菜单下的 Create Subsystem,
8、即可建立子系统并将这些模块封装(到此子系统中,Simulink 自动生成子系统的输入与输出端口。 )3、Icon 项 Parameters Initialization 标签页 Documentation 标签页10. 分别采用函数 fix、floor、ceil 和 round 对 A= -1.95,-1.25,1.45,1.85取整,并说明这些取整函数的区别。fix 函数:结尾取整Ceil 函数:向上取整Floor 函数:向下取整Round 函数:四舍五入11. 求 A=1,2,3;4,5,6;7,8,9矩阵的秩,迹,特征值和特征向量、范数和方阵的条件数;并求 A 和 a= magic(5)
9、矩阵行列式,逆矩阵和伪逆矩阵,并说明逆矩阵和伪逆矩阵区别。 A=1,2,3;4,5,6;7,8,9;rank=rank(A)trace=trace(A)V,D=eig(A)norm=norm(A)cond=cond(A)结果:rank = 2trace = 15V =-0.2320 -0.7858 0.4082-0.5253 -0.0868 -0.8165-0.8187 0.6123 0.4082D =16.1168 0 00 -1.1168 00 0 -0.0000norm =16.8481cond =3.8131e+16A=1,2,3;4,5,6;7,8,9a=magic(5)detA=d
10、et(A)invA=inv(A)pinvA=pinv(A)deta=det(a)inva=inv(a)pinva=pinv(a)如果矩阵 A 不是一个方阵,或者 A 是一个非满秩的方阵时,矩阵 A 没有逆矩阵,但可以找到一个与 A 的转置矩阵 A同型的矩阵 B,使得:ABA=ABAB=B此时称矩阵 B 为矩阵 A 的伪逆,也称为广义逆矩阵。12. 已知:a=6; A=pascal(4); B=randn(4);求 A*B, A.*B, B/A,B./A, BA, B.A ,A.a, Aa,并且说明数组和矩阵在上述运算中的区别。 a=6; A=pascal(4); B=randn(4);A*BA
11、.*BB/AB./ABAB.AA.aAaans =-3.3843 -0.7710 0.2884 -0.4321-5.7672 -3.9198 1.6239 1.0912-6.7793 -10.8330 4.2172 4.3328-4.9821 -23.2219 8.3812 9.9203ans =-1.0689 0.3252 -0.1022 -0.8649-0.8095 -1.5099 -0.7243 -0.1202-2.9443 4.1109 1.9152 -1.64881.4384 -6.8461 3.1286 12.5541ans =-5.7707 9.4959 -6.2804 1.48
12、630.3558 -3.1462 2.7419 -0.7610-18.5572 32.8440 -23.1637 5.932716.6463 -34.1498 25.8257 -6.8838ans =-1.0689 0.3252 -0.1022 -0.8649-0.8095 -0.3775 -0.0805 -0.0075-2.9443 0.4568 0.0532 -0.01651.4384 -0.4279 0.0313 0.0314ans =-0.6348 -1.6245 -2.9494 -4.6346-1.1688 -2.9031 -5.9575 -10.77621.7679 6.3637
13、16.2994 33.0876-1.0201 -0.9924 -1.6780 -3.3918ans =-0.9356 3.0751 -9.7807 -1.1562-1.2353 -2.6493 -12.4251 -133.1057-0.3396 2.1893 18.7966 -60.65050.6952 -2.3371 31.9633 31.8620ans =1 1 1 11 64 729 40961 729 46656 10000001 4096 1000000 64000000ans =1200089 4011200 9133680 172222404011200 13407257 305
14、29056 575649769133680 30529056 69516457 13107897617222240 57564976 131078976 247160297数组运算是指数组对应元素之间的运算,也称点运算. 矩阵的乘法、乘方和除法有特殊的数学含义,并不是数组对应元素的运算,所以数组乘法、乘方和除法的运算符前特别加了一个点。(1)对于乘法、乘方和除法等三种运算,矩阵运算与数组运算的运算符及含义都不同:矩阵运算按线性变换定义,使用通常符号;数组运算按对应元素运算定义,使用点运算符;(2)数与矩阵加减、矩阵除法在数学是没有意义的,在 MATLAB 中为简便起见,定义了这两类运算13. 分别采用不循环语句和循环语句 For 和 while 计算级数:S=1+6+6 2+63+633 ,并且说明循环语句 For 和 while 之间的区别。While 语句s=0;i=0;while i for i=1:1:6for j=1:1:6A(i,j)=1./(i+j-1);endend