Matlab基礎與應用教程答案人民郵電出版社.doc
《Matlab基礎與應用教程答案人民郵電出版社.doc》由會員分享,可在線閱讀,更多相關《Matlab基礎與應用教程答案人民郵電出版社.doc(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。
第1章 一、思考題 4. (1) B=A(2:5,1:2:5) (2)A(7)=[] (3) A=A+30 (4)size(A) (5) t(find(t==0))=eps (6)t=reshape(x,3,4) (7)abs(matlab) (8)char(93) 5. A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7] (1) B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C (2)A(find(A>=50 & A<=100)) 二、實驗題 1.x=-74/180*pi;y=-27/180*pi; sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi 2.a=-3.0:0.1:3.0; exp(-0.3*a).*sin(a+0.3) 3.x=[2,4;-0.45,5]; log(x+sqrt(1+x.*x))/2 4. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0]; (1)A*B ans = 129 432 4197 7 -407 -1052 402 591 12489 A.*B ans = 3 -108 134 68 -360 518 783 270 0 (2) A^3 ans = -28917 240246 -4368 137883 -259101 27669 171333 252504 38673 A.^3 ans = 27 157464 8 39304 -91125 343 658503 729000 3375 (3)A/B ans = -5.8845 5.3549 -0.2028 6.3554 -5.6596 4.3293 -6.6325 6.2078 9.0241 B/A ans = 30.2855 19.2643 -8.5614 33.4394 21.1547 -9.3974 -0.7443 -0.3938 0.2830 (4)[A,B] ans = 3 54 2 1 -2 67 34 -45 7 2 8 74 87 90 15 9 3 0 [A([1,3],:);B^2] ans = 3 54 2 87 90 15 600 183 -81 684 282 726 15 6 825 5.a=1+2i;b=3+4i; c=exp(pi*i/6) c = 0.8660 + 0.5000i c+a*b/(a+b) ans = 1.6353 + 1.8462i 第2章 一、思考題 3.s=0; for n=0:63 s=s+2^n; end disp(s) n=0:63; s=sum(2.^n) 二、實驗題 1. x=input(輸入一個四位整數(shù):); y=[fix(x/1000),mod(fix(x/100),10),mod(fix(x/10),10),mod(x,10)] z=mod((y+7),10) x=z(3)*1000+z(4)*100+z(1)*10+z(2) 2. gh=input(輸入工號); h=input(輸入工時); dj=84; if h>120 gz=dj*120+1.15*dj*(h-120); elseif h<60 gz=dj*h-700; else gz=dj*h; end format bank; display([gh,gz]) 3. 循環(huán)結(jié)構(gòu) n=input(input n:); s=0; for k=1:n s=s+1/k^2; end display(sqrt(s*6)) 向量運算 n=input(input n:); k=1:n; display(sqrt(sum(1./k.^2)*6)) 4. y=0;k=0; while y<3 k=k+1; y=y+1/(2*k-1); end display([k-1,y-1/(2*k-1)]) 5. x0=0;x=1;k=0; a=input(a=); b=input(b=); while abs(x-x0)>=1e-5 && k<500 x0=x; x=a/(b+x0); k=k+1; end display([k,x]); display([(-b+sqrt(b^2+4*a))/2,(-b-sqrt(b^2+4*a))/2]); 6. y=fun(40)/(fun(30)+fun(20)) (1)函數(shù)文件fun.m function f=fun(n) f=n+log(n^2+5); (2)函數(shù)文件fun.m function f=fun(n) a=1:n; f=sum(a.*(a+1)); 第3章 一、思考題 4. t=0:0.01:1.5; y=sqrt(3)/2*exp(-4*t).*sin(4*sqrt(3)*t+pi/3); 5. x=-10:0.01:10; y=linspace(-6,6,size(x,2)) z=x.^3+3*x.*y.^2; plot3(x,y,z) 6. x=100:100:400; y=100:100:400; z=[636,697,624,478;698,712,630,478;680,674,598,412;662,626,552,334]; [X,Y]=meshgrid(x,y); mesh(X,Y,z) 二、實驗題 1. (1)x=-10:0.01:10; plot(x,x-x.^3/3/2) (2)plot(x,exp(-x.*x/2)/2/pi) (3)x=-8:0.01:8; plot(x,sqrt((64-x.*x)/2)) (4)t=0:pi/100:6*pi; plot(t.*sin(t),t.*cos(t)) 2. (1) x1=linspace(0,1,100); y1=2*x1-0.5; t=linspace(0,pi,100); x=sin(3*t).*cos(t);y=sin(3*t).*sin(t); plot(x1,y1,r-,x,y,b:); text(0.4,1,y=2x-0.5); text(-0.4,0.5,x=sin(3t)cos(t)); text(-0.4,0.3,y=sin(3t)sin(t)); (2) subplot(1,2,1); scatter(x1,y1,10) title(y=2x-0.5); subplot(1,2,2); scatter(x,y,10) 3. subplot(1,2,1); x=1:1:100; y=sin(1./x); plot(x,y) subplot(1,2,2); fplot(sin(1/x),[1,100]) 4. subplot(2,2,1); bar(t,y); subplot(2,2,2); stairs(t,y); subplot(2,2,3); stem(t,y) subplot(2,2,4); semilogy(t,y); 5. theta=linspace(-pi,pi,100); ro=5.*cos(theta)+4; polar(theta,ro); fi=linspace(0,2*pi,100);a=1 r=a.*(1+cos(fi)); polar(fi,r); 6. t=0:pi/20:2*pi; x=exp(-t./20).*cos(t);y=exp(-t./20).*sin(t);z=t; plot3(x,y,z); t=0:0.01:1; x=t;y=t.^2;z=t.^3; plot3(x,y,z); 7. x=-30:0.1:0;y=0:0.1:30; [x,y]=meshgrid(x,y); z=10.*sin(sqrt(x.^2+y.^2))./sqrt(1+x.^2+y.^2); meshc(x,y,z); 8. x=linspace(-3,3,100);y=linspace(-3,3,100); [x y]=meshgrid(x,y); fxy=-5./(1+x.^2+y.^2); i=find(abs(x)<=0.8 & abs(y)<=0.5); fxy(i)=NaN; surf(x,y,fxy) 9. u=linspace(1,10,100);v=linspace(-pi,pi,100); [u,v]=meshgrid(u,v); x=3.*u.*sin(v);y=2.*u.*cos(v);z=4*u.^2; x=3*u.*sin(v);y=2*u.*cos(v);z=4*u.^2; surf(x,y,z);shading interp; light(position,[1,0,1]); 10. t=0:pi/100:2*pi; y=sin(t); comet(t,y) 第4章 一、思考題 5. (1)A=eye(3); (2)C=100+(200-100)*rand(5,6); (3)D=1+sqrt(0.2)*randn(1,500); (4)E=ones(size(A)); (5)A=A+30*eye(size(A)); (6)B=diag(diag(A)) 二、實驗題 1. P=pascal(5);H=hilb(5); Dp=det(P);Dh=det(H); Kp=cond(P);Kh=cond(H); P矩陣的性能更好,因為Kp較小 2. A=[1,-1,2,3;0,9,3,3;7,-5,0,2;23,6,8,3] B=[3,pi/2,45;32,-76,sqrt(37);5,72,4.5e-4;exp(2),0,97] A1=diag(A);B1=diag(B); A2=triu(A);B2=triu(B); A3=tril(A);B3=tril(B); rA=rank(A);rB=rank(B); nA=norm(A);nb=norm(B); cA=cond(A);cB=cond(B); 3. A=[31,1,0;-4,-1,0;4,-8,-2]; [V,D]=eig(A); 4. A=diag([-1,-1,-1,-1],-1)+diag([-1,-1,-1,-1],1)+diag([2,2,2,2,2]) b=[1,0,0,0,0]; x1=inv(A)*b; x2=A\b; [L,U]=lu(A); x3=U\(L\b); [Q,R]=qr(a); [Q,R]=qr(A); x4=R\(Q\b) R=chol(A); x5=R\(R\b) 5. B=sparse(A); x1=inv(B)*b; x2=B\b; [L,U]=lu(B); x3=U\(L\b); 第5章 一、思考題 3. A=randn(10,5); mean(A) std(A) max(max(A)) min(min(A)) sum(A,2) sum(sum(A)) sort(A,1) sort(A,2,descend) 二、實驗題 1. A=rand(1,30000); mean(A) std(A) max(A) min(A) size(find(A>0.5))/size(A) 2. h=[466,715,950,1422,1635]; w=[7.04,4.28,3.40,2.52,2.13]; hh=[500,900,1500]; ww=interp1(h,w,hh,spline) 3. x=linspace(1,10,50); y=log(x); f=polyfit(x,y,5); yy=polyval(f,x); plot(x,y,r-,x,yy,g.) 4. N=64; % 采樣點數(shù) T=5; % 采樣時間終點 t=linspace(0,T,N); % 給出N個采樣時間ti(I=1:N) x=3*exp(-t); % 求各采樣點樣本值x dt=t(2)-t(1); % 采樣周期 f=1/dt; % 采樣頻率(Hz) X=fft(x); % 計算x的快速傅立葉變換X F=X(1:N/2+1); % F(k)=X(k)(k=1:N/2+1) f=f*(0:N/2)/N; % 使頻率軸f從零開始 plot(f,abs(F),-*) % 繪制振幅-頻率圖 xlabel(Frequency); ylabel(|F(k)|) 5. (1)p1=[1 2 0 0 7];p2=[1 -2];p3=[1 0 0 5 1]; p12=conv(p1,p2); p=p12+[zeros(1,size(p12,2)-size(p3,2)),p3]; roots(p) (2)A=[-1,4,3;2,1,5;0,5,6]; Px=polyval(p,A) Pxm=polyvalm(p,A) 6. (1) z=fzero(3*x-sin(x)+1,0) (2) 建立函數(shù)文件myfun.m function F=myfun(X) x=X(1); y=X(2); F(1)=x*x+y*y-9; F(2)=x+y-1; 在命令窗口中輸入以下命令: x=fsolve(@myfun,[3,0],optimset(Display,off)) 第6章 一、思考題 2. fx=inline(1./(1+x.^2)); [I,n]=quad(fx,-100000,100000,1e-3); [I,n]=quadl(fx,-100000,100000,1e-3); x=-100000:0.01:100000; y=1./(1+x.*x); trapz(x,y); 3. (1) fx=inline(-2*y+2*x*x+2*x); [t,y]=ode23(fx,[0,0.5],1) (2) fx=inline(y-exp(x)*cos(x)); [t,y]=ode23(fx,[0,3],1) 二、實驗題 1. for x=1:3 fx=[x,x^2,x^3;1,2*x,3*x;0,2,6*x]; diff(fx) end 2. (1)x=0:0.01:1; y=x.^10+10.^x+1./log10(x); dy=diff(y)/0.01; (2)x=0:0.01:1; y=log(1+x); dy=diff(y,2)/0.01; plot(x(1:99),dy) 3. (1)fx=inline(x.^2.*sqrt(2*x.*x+3)); quad(fx,1,5) (2)fx=inline(x./sin(x).^2); quad(fx,pi/4,pi/3) (3)fx=inline(abs(cos(x+y))); dblquad(fx,0,pi,0,pi) (4)syms x y; fx=x*y; int(int(fx,y^2,y+2),-1,2) x的積分區(qū)間為【0,2】時 fx=inline(x.*y); dblquad(fx,0,2,-1,2) 4. x=0.3:0.2:1.5; y=[0.3895,0.6598,0.9147,1.1611,1.3971,1.6212,1.8325]; trapz(x,y) 5. (1) yp=inline(-(1.2+sin(10*x))*y); [t,y]=ode23(yp,[0,5],1); (2)令,則可寫出原方程的狀態(tài)方程形式: ---> 建立函數(shù)文件ztfun.m function y=ztfun(t,x) b=[0;0;cos(t)]; y=[0,1,0;0,0,1;-1/(3+sin(t)),-1,5*cos(2*t)/(t+1)^2]*x+b; 解微分方程組 [t,y]=ode23(@ztfun,[0,5],[1;0;2]); 6. 建立函數(shù)文件ztfun.m function yy=ztfun(t,y) yy=[y(2)*y(3);-y(1)*y(3);-0.51*y(1)*y(2)]; 解微分方程組 [t,y]=ode23(@ztfun,[0,5],[0;1;1]) 第7章 一、思考題 3. (1)數(shù)值積分 fx=inline(exp(x).*(1+exp(x)).^2); quad(fx,0,log(2)) 符號積分 f=sym(exp(x)*(1+exp(x))^2); v=int(f,0,log(2)); eval(v) (2)略 二、實驗題 1. A=sym([1,2,3;x,y,z;3,2,1]) rank(A) inv(A) det(A) 2. (1) y=sym(sqrt(x+sqrt(x+sqrt(x)))); y1=diff(y) y2=diff(y,x,2) (2) syms x y; fxy=sin(x^2*y)*exp(-x^2-y); diff(diff(fxy,x),y) 3. (1) syms x int(1/(1+x^4)) (2) syms x t int((-2*x*x+1)/(2*x*x-3*x+1)^2,x,cos(t),exp(2*t)) 4. syms n x symsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,inf) symsum(1/(2*n+1)/(2*x+1)^(2*n+1),n,0,5) 5. (1) syms x taylor((exp(x)+exp(-x))/2,5,0) (2) syms a x taylor(exp(-5*x)*sin(3*x+pi/3),5,a) 6. (1)x=solve(sym(x^3+a*x+1=0)) (2) [x y]=solve(sym(sqrt(x^2+y^2)-100=0,3*x+5*y-8=0)) 7. 方程轉(zhuǎn)化為: 符號解 [y1,y11]=dsolve(Dy=y1,Dy1+y=1-t^2/pi,y(-2)=5,y1(-2)=5,t) 數(shù)值解 編寫函數(shù)文件ztfun.m function yy=ztfun(t,y) yy=[y(2);1-t^2/pi-y(1)]; 在命令窗口輸入以下命令 [t,y]=ode45(@ztfun,[-2,7],[-5;5]); t=linspace(-2,7,49) y2=y 8. [x,y]=dsolve(Dx=3*x+4*y,Dy=-4*x+3*y,x(0)=0,y(0)=1) 第9章 二、實驗題 1. (1)新建一個Blank GUI。 (2)在窗口上添加一個Static Text、一個Edit Text,一個Push Botton,兩個Check Box,一組Radio Button。各控件的屬性設置如表9.1所示。 表9.1 界面控件屬性 控 件 屬 性 名 屬 性 值 靜態(tài)文本框 String 實驗一: 編輯框 String 按鈕 String 設置字體大小 單選按鈕1 String red 單選按鈕2 String yellow 單選按鈕3 String blue 單選按鈕4 String black Value 1.0 復選框1 String 傾斜 復選框2 String 加粗 (3)在按鈕的Callback函數(shù)中添加以下代碼: s=eval(get(handles.edit1,String)); set(handles.text1,FontSize,s); (4)在復選框1的Callback函數(shù)中添加以下代碼: if (get(hObject,Value) == get(hObject,Max)) set(handles.text1,FontAngle,italic); else set(handles.text1,FontAngle,normal); end 在復選框2的Callback函數(shù)中添加以下代碼: if (get(hObject,Value) == get(hObject,Max)) set(handles.text1,FontWeight,bold); else set(handles.text1,FontAngle,normal); end (5)在單選按鈕組的SelectionChangeFcn函數(shù)中添加以下代碼: set(handles.text1,ForegroundColor,get(eventdata.NewValue,string)); 2. (1)新建一個Blank GUI。 (2)用菜單編輯器編輯菜單,各菜單項屬性如表9.2. 表9.2 菜單項屬性 菜單項 Label 屬 性 值 Tag 屬 性 值 Menu Line Label m_line Help Help m_help Line Menu Item Line Style Line Style m_linestyle Line Width Line Width m_linewidth Line Color Line Color m linecolor Help Menu Item About About m_about (3)繪圖。在窗口的OpeningFcn函數(shù)添加以下代碼: global h; t=0:0.01:6; h=plot(t.*sin(t),t.*cos(t)) (4)在Line Style菜單項的Callback函數(shù)中添加以下代碼: global h; set(h,LineStyle,-.); 在Line Width菜單項的Callback函數(shù)中添加以下代碼: global h; set(h,LineWidth,2); 在Line Color菜單項的Callback函數(shù)中添加以下代碼: global h; set(h,color,red); 在About菜單項的Callback函數(shù)中添加以下代碼: msgbox(Help Item); 3. t=0:pi/20:6*pi;a=2;b=3; r=a+b*t; h_draw=polar(t,r,-*); h_menu=uicontextmenu; % % uimenu(h_menu,Label,red,Call,set(h_draw,Color,red);); uimenu(h_menu,Label,yellow,Call,set(h_draw,Color,yellow);); uimenu(h_menu,Label,blue,Call,set(h_draw,Color,blue);); set(h_draw,UIContextMenu,h_menu); % 4. (1)新建一個Blank GUI。 (2)在窗口上添加三個Static Text、三個Edit Text,一個Push Botton,一個坐標軸對象Axes。各控件的屬性設置如表9.3所示。 表9.3 界面控件屬性 控 件 屬 性 名 屬 性 值 Static Text text1 String a: text1 String b: text1 String n: Edit Text edit1 String edit2 String edit3 String pushbotton1 String 繪圖 Axes1 width 100 height 25 (3)在按鈕pushbutton1的Callback函數(shù)中添加以下代碼: t=0:pi/20:6*pi; a=eval(get(handles.edit1,String)); b=eval(get(handles.edit2,String)); n=eval(get(handles.edit3,String)); r=a.*cos(b+n.*t); polar(handles.axes1,t,r); 第10章 二、實驗題 1. 建立模型exercise10_1.mdl (1)雙擊Gain模塊,打開Function Block Parameters進行設置。設置完成后,單擊模型編輯窗口的Start Simulation按鈕,觀察曲線。 (2)選擇Math Operation模塊庫的Slide Gain模塊替代Gain模塊 2.略 3. Scope的雙輸入實現(xiàn)方法:雙擊Scope模塊,打開Scope示波器窗口,單擊該窗口工具欄的Parameters 按鈕(左數(shù)第二個),在打開的對話框的General選項卡的Numbers of axes:后的編輯框中輸入2,然后單擊OK按鈕返回,即可看到模型中的Scope模塊增加了一個輸入口 4. (1)先建立如下模型 (2)建立子系統(tǒng)。選中除輸入輸出模塊外其他模塊,執(zhí)行Edit菜單的Create Subsystem命令。 (3)封裝子系統(tǒng)。選中子系統(tǒng)模塊,執(zhí)行Edit菜單的Mask Subsystem命令。 在Mask Editor對話框的Parameters選項卡中的Dialog Parameters欄內(nèi)增加三個變量,單擊OK按鈕返回。 5. (1)建立S函數(shù)subsection.m function [sys,x0,str,ts]=subsection(t,x,u,flag) switch flag case 0 [sys,x0,str,ts]=mdlInitializeSizes; case 3 sys=mdlOutputs(t,x,u); case {1,2,4,9} sys=[]; otherwise error(Unhandled Flag, num2str(flag)); end function [sys,x0,str,ts]=mdlInitializeSizes() sizes=simsizes; sizes.NumContStates=0; sizes.NumDiscStates=0; sizes.NumOutputs=1; sizes.NumInputs=1; sizes.DirFeedthrough=1; sizes.NumSampleTimes=1; sys=simsizes(sizes); x0=[]; str=[]; ts=[-1,0]; function sys=mdlOutputs(t,x,u) if u>=0 & u<2 sys=u*u; elseif u>=2 & u<5 sys=4; elseif u>=5 & u<7 sys=14-2*u; else sys=0; end (2)模塊的封裝與測試參見教材Page 202 第11章 二、實驗題 2. (1)建立EXCEL文件,如氣溫.xls (2) Spreadsheet Link的安裝與啟動參見教材P206 (3)在Excel中選中需要的數(shù)據(jù),單擊Spreadsheet Link工具欄的“putmatrix”按鈕,指定導入MATLAB工作空間的變量名。 (4)單擊Spreadsheet Link工具欄中的“wizard”按鈕,彈出“MATLAB Function Wizard”對話框。在“Select a category”欄內(nèi)選擇matlab\polyfun 類后,在“Select a function”欄選擇spline函數(shù),在“Select a function signature”欄內(nèi)中選中spline(x,y,xx),彈出“Function Arguments”對話框。在對話框中的Inputs欄X右邊的展開按鈕,然后選中EXCEL表中的第1列數(shù)據(jù)(除標題行),按Enter鍵確認,返回“Function Arguments”對話框。單擊對話框Inputs欄右部的下拉條,使變量變?yōu)閅,同樣的方式設定Y的值,接著設定XX變量的值。然后單擊Optional output cell(s) 右邊的展開按鈕,在Excel表中選中輸出數(shù)據(jù)使用的單元格,返回對話框后單擊OK按鈕,完成計算。 3. clear all fid=fopen(exercise9_1.m,r); textall=fscanf(fid,%c,inf); ch=zeros(26,1); for n=1:size(textall,2) if isletter(textall(n)) if textall(n)>=a && textall(n)<=z textall(n)=char(textall(n)-(a-A)); end m=textall(n)-A+1; ch(m)=ch(m)+1; end end 4. (1)編輯c源程序exercise11_4.c,代碼如下: #include- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關 鍵 詞:
- Matlab 基礎 應用 教程 答案 人民郵電 出版社
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。
鏈接地址:http://www.hcyjhs8.com/p-12811984.html