《控制系统计算机辅助设计:MATLAB语言与应用(第2版)》薛定宇_课后习题答案 修订-可编辑
第1章 控制系统计算机辅助设计概述第2章 MATLAB语言程序设计基础第3章 线性控制系统的数学模型第4章 线性控制系统的计算机辅助分析第5章 Simulink在系统仿真中的应用第6章 控制系统计算机辅助设计第1章 控制系统计算机辅助设计概述【1】http:/www.mathworks.cn/已阅,略【2】已阅,略【3】已经掌握help命令和Help菜单的使用方法【4】区别:MATLAB语言实现矩阵的运算非常简单迅速,且效率很高,而用其他通用语言则不然,很多通用语言所实现的矩阵运算都是对矩阵维数具有一点限制的,即使限制稍小的,但凡维数过大,就会造成运算上的溢出出错或者运算出错,甚至无法处理数据的负面结果【5】 【8】(1)输入激励为正弦信号(2)输入激励为脉冲模拟信号(3)输入激励为时钟信号(4) 输入激励为随机信号(5) 输入激励为阶跃信号=0.3=0.05=0.7结论:随着非线性环节的死区增大,阶跃响应曲线的范围逐渐被压缩,可以想象当死区足够大时,将不再会有任何响应产生。所以可以得到结论,在该非线性系统中,死区的大小可以改变阶跃响应的幅值和超调量。死区越大,幅值、超调量将越小,而调整时间几乎不受其影响第2章 MATLAB语言程序设计基础【1】>> A=1 2 3 4;4 3 2 1;2 3 4 1;3 2 4 1A = 1 2 3 4 4 3 2 1 2 3 4 1 3 2 4 1>> B=1+4i,2+3i,3+2i,4+i;4+i,3+2i,2+3i,1+4i;2+3i,3+2i,4+i,1+4i;3+2i,2+3i,4+i,1+4iB = 1.0000 + 4.0000i 2.0000 + 3.0000i 3.0000 + 2.0000i 4.0000 + 1.0000i 4.0000 + 1.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 1.0000 + 4.0000i 2.0000 + 3.0000i 3.0000 + 2.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i>> A(5,6)=5A = 1 2 3 4 0 0 4 3 2 1 0 0 2 3 4 1 0 0 3 2 4 1 0 0 0 0 0 0 0 5若给出命令A(5,6)=5则矩阵A的第5行6列将会赋值为5,且其余空出部分均补上0作为新的矩阵A,此时其阶数为56【2】相应的MATLAB命令:B=A(2:2:end,:)>> A=magic(8)A = 64 2 3 61 60 6 7 57 9 55 54 12 13 51 50 16 17 47 46 20 21 43 42 24 40 26 27 37 36 30 31 33 32 34 35 29 28 38 39 25 41 23 22 44 45 19 18 48 49 15 14 52 53 11 10 56 8 58 59 5 4 62 63 1>> B=A(2:2:end,:)B = 9 55 54 12 13 51 50 16 40 26 27 37 36 30 31 33 41 23 22 44 45 19 18 48 8 58 59 5 4 62 63 1从上面的运行结果可以看出,该命令的结果是正确的【3】>> syms x s; f=x5+3*x4+4*x3+2*x2+3*x+6f =x5 + 3*x4 + 4*x3 + 2*x2 + 3*x + 6>> f1,m=simple(subs(f,x,(s-1)/(s+1)f1 =19 - (72*s4 + 120*s3 + 136*s2 + 72*s + 16)/(s + 1)5m =simplify(100)【4】>> i=0:63; s=sum(2.sym(i)s =18446744073709551615【5】>> for i=1:120 if(i=1|i=2) a(i)=1; else a(i)=a(i-1)+a(i-2);end if(i=120) a=sym(a); disp(a); end end 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025, 20365011074, 32951280099, 53316291173, 86267571272, 139583862445, 225851433717, 365435296162, 591286729879, 956722026041, 1548008755920, 2504730781961, 4052739537881, 6557470319842, 10610209857723, 17167680177565, 27777890035288, 44945570212853, 72723460248141, 117669030460994, 190392490709135, 308061521170129, 498454011879264, 806515533049393, 1304969544928657, 2111485077978050, 3416454622906707, 5527939700884757, 8944394323791464, 14472334024676221, 23416728348467685, 37889062373143906, 61305790721611591, 99194853094755497, 160500643816367088, 259695496911122585, 420196140727489673, 679891637638612258, 1100087778366101931, 1779979416004714189, 2880067194370816120, 4660046610375530309, 7540113804746346429, 12200160415121876738, 19740274219868223167, 31940434634990099905, 51680708854858323072, 83621143489848422977, 135301852344706746049, 218922995834555169026, 354224848179261915075, 573147844013817084101, 927372692193078999176, 1500520536206896083277, 2427893228399975082453, 3928413764606871165730, 6356306993006846248183, 10284720757613717413913, 16641027750620563662096, 26925748508234281076009, 43566776258854844738105, 70492524767089125814114, 114059301025943970552219, 184551825793033096366333, 298611126818977066918552, 483162952612010163284885, 781774079430987230203437, 1264937032042997393488322, 2046711111473984623691759, 3311648143516982017180081, 5358359254990966640871840【6】>> k=1;for i=2:1000 for j=2:i if rem(i,j)=0 if j<i, break;end if j=i, A(k)=i; k=k+1; break; end end endenddisp(A); Columns 1 through 13 2 3 5 7 11 13 17 19 23 29 31 37 41 Columns 14 through 26 43 47 53 59 61 67 71 73 79 83 89 97 101 Columns 27 through 39 103 107 109 113 127 131 137 139 149 151 157 163 167 Columns 40 through 52 173 179 181 191