版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章第六章 MATLAB 数值计算数值计算6.1 线性方程组的解线性方程组的解6.1.1 LU 分解、行列式、逆和恰定方程的解分解、行列式、逆和恰定方程的解【例 6.1-1】“求逆”法和“左除”法解恰定方程的性能对比(1)randn(state,0);A=gallery(randsvd,100,2e13,2);x=ones(100,1);b=A*x;cond(A) ans = 1.9990e+013 (2)ticxi=inv(A)*b;ti=toceri=norm(x-xi)rei=norm(A*xi-b)/norm(b) ti = 0.4400eri = 0.0469rei = 0.004
2、7 (3)tic;xd=Ab;td=toc,erd=norm(x-xd),red=norm(A*xd-b)/norm(b) td = 0.0600erd = 0.0078red = 2.6829e-015 6.1.2 奇异值分解和矩阵结构奇异值分解和矩阵结构6.1.3 线性二乘问题的解线性二乘问题的解【例 6.1-2】对于超定方程,进行三种解法比较。其中取 MATLAB 库中的特殊Axy A函数生成。A=gallery(5);A(:,1)=;y=1.7 7.5 6.3 0.83 -0.082;x=inv(A*A)*A*y,xx=pinv(A)*y,xxx=Ay Warning: Matrix
3、is close to singular or badly scaled. Results may be inaccurate. RCOND = 7.087751e-018.x = 3.4811 5.1595 0.9534 -0.0466xx = 3.4759 5.1948 0.7121 -0.1101Warning: Rank deficient, rank = 3 tol = 1.0829e-010.xxx = 3.4605 5.2987 0 -0.2974 nx=norm(x),nxx=norm(xx),nxxx=norm(xxx) nx = 6.2968e+000nxx = 6.291
4、8e+000nxxx = 6.3356e+000 e=norm(y-A*x),ee=norm(y-A*xx),eee=norm(y-A*xxx) e = 1.1020e+000ee = 4.7424e-002eee = 4.7424e-002 6.2 特征值分解和矩阵函数特征值分解和矩阵函数6.2.2 特征值分解问题特征值分解问题【例 6.2-1】简单实阵的特征值问题。A=1,-3;2,2/3;V,D=eig(A) V = -0.7728 + 0.0527i -0.7728 - 0.0527i 0 + 0.6325i 0 - 0.6325iD = 0.8333 + 2.4438i 0 0 0.
5、8333 - 2.4438i 【例 6.2-2】把例 6.2-1 中的复数特征值对角阵 D 转换成实数块对角阵,使 VR*DR/VR=A。VR,DR=cdf2rdf(V,D) VR = -0.7728 0.0527 0 0.6325DR = 0.8333 2.4438 -2.4438 0.8333 【例 6.2-3】对亏损矩阵进行 Jordan 分解。A=gallery(5)VJ,DJ=jordan(A);V,D,c_eig=condeig(A);c_equ=cond(A);DJ,D,c_eig,c_equ A = -9 11 -21 63 -252 70 -69 141 -421 1684
6、-575 575 -1149 3451 -13801 3891 -3891 7782 -23345 93365 1024 -1024 2048 -6144 24572DJ = 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0D = Columns 1 through 4 -0.0328 + 0.0243i 0 0 0 0 -0.0328 - 0.0243i 0 0 0 0 0.0130 + 0.0379i 0 0 0 0 0.0130 - 0.0379i 0 0 0 0 Column 5 0 0 0 0 0.0396 c_eig = 1.0e+
7、010 * 2.1016 2.1016 2.0251 2.0251 1.9796c_equ = 5.2129e+017 6.2.3 矩阵的谱分解和矩阵函数矩阵的谱分解和矩阵函数【例 6.2-4】数组乘方与矩阵乘方的比较。clear,A=1 2 3;4 5 6;7 8 9;A_Ap=A.0.3A_Mp=A0.3 A_Ap = 1.0000 1.2311 1.3904 1.5157 1.6207 1.7118 1.7928 1.8661 1.9332A_Mp = 0.6962 + 0.6032i 0.4358 + 0.1636i 0.1755 - 0.2759i 0.6325 + 0.0666i
8、0.7309 + 0.0181i 0.8292 - 0.0305i 0.5688 - 0.4700i 1.0259 - 0.1275i 1.4830 + 0.2150i 【例 6.2-5】标量的数组乘方和矩阵乘方的比较。(A 取自例 6.2-4)pA_A=(0.3).ApA_M=(0.3)A pA_A = 0.3000 0.0900 0.0270 0.0081 0.0024 0.0007 0.0002 0.0001 0.0000pA_M = 2.9342 0.4175 -1.0993 -0.0278 0.7495 -0.4731 -1.9898 -0.9184 1.1531 【例 6.2-6】
9、sin 的数组运算和矩阵运算比较。(A 取自例 6.2-4)A_sinA=sin(A)A_sinM=funm(A,sin) A_sinA = 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794 0.6570 0.9894 0.4121A_sinM = -0.6928 -0.2306 0.2316 -0.1724 -0.1434 -0.1143 0.3479 -0.0561 -0.4602 6.3 多项式和卷积多项式和卷积6.3.2 多项式多项式6.3.2.1多项式表达方式的约定多项式表达方式的约定6.3.2.2多项式运算多项式运算函数函数【例 6.3-1】
10、求的“商”及“余”多项式。1) 1)(4)(2(32sssssp1=conv(1,0,2,conv(1,4,1,1);p2=1 0 1 1;q,r=deconv(p1,p2);cq=商多项式为商多项式为 ; cr=余多项式为余多项式为 ;disp(cq,poly2str(q,s),disp(cr,poly2str(r,s) 商多项式为 s + 5余多项式为 5 s2 + 4 s + 3 【例 6.3-2】求 3 阶方阵 A 的特征多项式。A=11 12 13;14 15 16;17 18 19;PA=poly(A) PPA=poly2str(PA,s) PA = 1.0000 -45.0000
11、 -18.0000 -0.0000PPA = s3 - 45 s2 - 18 s - 2.8387e-015 【例 6.3.1.2-3】由给定根向量求多项式系数向量。R=-0.5,-0.3+0.4*i,-0.3-0.4*i;P=poly(R)PR=real(P) PPR=poly2str(PR,x) P = 1.0000 1.1000 0.5500 0.1250PR = 1.0000 1.1000 0.5500 0.1250PPR = x3 + 1.1 x2 + 0.55 x + 0.125 【例 6.3-4】两种多项式求值指令的差别。S=pascal(4)P=poly(S);PP=poly2
12、str(P,s)PA=polyval(P,S)PM=polyvalm(P,S) S = 1 1 1 1 1 2 3 4 1 3 6 10 1 4 10 20PP = s4 - 29 s3 + 72 s2 - 29 s + 1PA = 1.0e+004 * 0.0016 0.0016 0.0016 0.0016 0.0016 0.0015 -0.0140 -0.0563 0.0016 -0.0140 -0.2549 -1.2089 0.0016 -0.0563 -1.2089 -4.3779PM = 1.0e-011 * -0.0077 0.0053 -0.0096 0.0430 -0.0068
13、 0.0481 -0.0110 0.1222 0.0075 0.1400 -0.0095 0.2608 0.0430 0.2920 -0.0007 0.4737 【例 6.3-5】部分分式展开。a=1,3,4,2,7,2;b=3,2,5,4,6;r,s,k=residue(b,a) r = 1.1274 + 1.1513i 1.1274 - 1.1513i -0.0232 - 0.0722i -0.0232 + 0.0722i 0.7916 s = -1.7680 + 1.2673i -1.7680 - 1.2673i 0.4176 + 1.1130i 0.4176 - 1.1130i -0.
14、2991 k = 6.3.2.3拟合和插值拟合和插值【例 6.3-6】 对于给定数据对 x0 , y0 ,求拟合三阶多项式,并图示拟合情况。(见图 6.3-1)x0=0:0.1:1;y0=-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22;n=3;P=polyfit(x0,y0,n)xx=0:0.01:1;yy=polyval(P,xx);plot(xx,yy,-b,x0,y0,.r,MarkerSize,20),xlabel(x) P = 56.6915 -87.1174 40.0070 -0.904302 4 8 1 2468
15、x图6.3-1 采用三次多项式所得的拟合曲线【例 6.3-7】以上例所给数据,研究一维插值,并观察插值与拟合的区别。x0=0:0.1:1;y0=-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22; xi=0:0.02:1;yi=interp1(x0,y0,xi,cubic); plot(xi,yi,-b,x0,y0,.r,MarkerSize,20),xlabel(x) x图6.3-2 通过三次多项式插值所得的曲线6.3.3 卷积卷积6.3.3.1离散序列的数值卷积离散序列的数值卷积6.3.3.2MATLAB 的的“卷积卷积”指令指
16、令【例 6.3-8】有序列 和 。elsennA12, 4 , 301)(elsennB9 , 3 , 201)((A)求这两个完整序列的卷积,并图示。(B)假设序列中最后 4 个非零值未知,而成A为截尾序列,求卷积并图示。(见图 6.3-3)a=ones(1,10);n1=3;n2=12;b=ones(1,8);n3=2;n4=9;c=conv(a,b);nc1=n1+n3;nc2=n2+n4;kc=nc1:nc2;aa=a(1:6);nn1=3;nn2=8;cc=conv(aa,b);ncc1=nn1+n3;nx=nn2+n4;ncc2=min(nn1+n4,nn2+n3);kx=(ncc
17、2+1):nx;kcc=ncc1:ncc2;N=length(kcc);stem(kcc,cc(1:N),r,filled)axis(nc1-2,nc2+2,0,10),grid,hold onstem(kc,c,b),stem(kx,cc(N+1:end),g),hold off 6 图6.3-3 “完整”序列卷积和“截尾”序列卷积6.4 数据分析函数数据分析函数6.4.2 随机数发生器和随机数发生器和 统计分析指令统计分析指令【例 6.4-1】基本统计示例。randn(state,0)A=randn(1000,4);AMAX=max(A),AMIN=min(A)AMED=median(A)
18、AMEAN=mean(A)ASTD=std(A) AMAX = 2.7316 3.2025 3.4128 3.0868AMIN = -2.6442 -3.0737 -3.5027 -3.0461AMED = -0.0131 0.0596 0.0122 0.0459AMEAN = -0.0431 0.0455 0.0177 0.0263ASTD = 0.9435 1.0313 1.0248 0.9913 【例 6.4-2】cov 和 corrcoef 的使用示例。rand(state,1)X=rand(10,3);Y=rand(10,3);mx=mean(X);Xmx=X-ones(size(X
19、)*diag(mx);CCX=Xmx*Xmx/(size(Xmx,1)-1)CX=cov(X),CY=cov(Y)Cxy=cov(X,Y)PX=corrcoef(X)Pxy=corrcoef(X,Y) CCX = 0.0871 0.0242 -0.0073 0.0242 0.0846 0.0056 -0.0073 0.0056 0.0607CX = 0.0871 0.0242 -0.0073 0.0242 0.0846 0.0056 -0.0073 0.0056 0.0607CY = 0.0721 0.0013 0.0165 0.0013 0.0714 -0.0535 0.0165 -0.05
20、35 0.0720Cxy = 0.0761 -0.0012 -0.0012 0.0708PX = 1.0000 0.2819 -0.1005 0.2819 1.0000 0.0785 -0.1005 0.0785 1.0000Pxy = 1.0000 -0.0168 -0.0168 1.0000 6.4.3 差分和累计指令差分和累计指令【例 6.4-3】用一个简单矩阵表现 diff 和 gradient 指令计算方式。F=1,2,3;4,5,6;7,8,9Dx=diff(F)Dx_2=diff(F,1,2)FX,FY=gradient(F)FX_2,FY_2=gradient(F,0.5) F
21、 = 1 2 3 4 5 6 7 8 9Dx = 3 3 3 3 3 3Dx_2 = 1 1 1 1 1 1FX = 1 1 1 1 1 1 1 1 1FY = 3 3 3 3 3 3 3 3 3FX_2 = 2 2 2 2 2 2 2 2 2FY_2 = 6 6 6 6 6 6 6 6 6 【例 6.4-4】函数的梯度和,用数值22),(yxyxz22),(yxyxz4),(2yxz计算验证,并图示。(见图 6.4-1)clear,dd=0.2;x=-1:dd:1;y=x;X,Y=meshgrid(x,y);Z=(X.2)+(Y.2);DZx,DZy=gradient(Z,dd,dd);DZ
22、2=4*del2(Z,dd,dd);DDZx0=DZx-2*X;DDZy0=DZy-2*Y;DDZ20=DZ2-4;subplot(1,3,1),stem3(X,Y,DDZx0)subplot(1,3,2),stem3(X,Y,DDZy0)subplot(1,3,3),stem3(X,Y,DDZ20)axis(-1,1,-1,1,-0.4,0.4)xlabel(x),ylabel(y) 01 01 0 2 4 01 01 0 2 4 01 0 2 4 x 图6.4-1理论计算和数值计算的差别图示【例 6.4-5】求积分,其中,。xdttyxs0)()(ttetysin8.0)(100 xdt=
23、0.1;t=(0:dt:10);y=exp(-0.8*t.*abs(sin(t);ss=dt*cumsum(y);ss10=dt*sum(y);ssend=ss(end);st=cumtrapz(t,y);st10=trapz(t,y);stend=st(end);disp(blanks(5),sum,blanks(6),cumsum,blanks(4),trapz,blanks(5),cumtrapz)disp(ss10,ssend,st10,stend)plot(t,y,b:,t,ss,r-,t,st,r.)legend(y(x),cunsum,cumtrapz,0) sum cumsum
24、 trapz cumtrapz 2.7082 2.7082 2.6576 2.65760246 0 5 1 2 5 图6.4-2矩形法和梯形法求积比较6.5 MATLAB 泛函指令泛函指令6.5.2 求函数零点求函数零点【例 6.5-1】通过求的零点,综合叙述相关指令的用法。tbettfat)(sin)(2P1=0.1;P2=0.5;y_C=sin(x).2.*exp(-P1*x)-P2*abs(x); x=-10:0.01:10;Y=eval(y_C);clf,plot(x,Y,r);hold on,plot(x,zeros(size(x),k);xlabel(t);ylabel(y(t),
25、hold off 图6.5-1 函数零点分布观察图zoom ontt,yy=ginput(5);zoom off图6.5-2 局部放大和利用鼠标取值图tt tt = -2.0046 -0.5300 -0.0115 0.6106 1.6590 t4,y4,exitflag=fzero(y_C,tt(4),P1,P2) Zero found in the interval: 0.59333, 0.6106.t4 = 0.5993y4 = 0exitflag = 1 6.5.3 求函数极值点求函数极值点【例 6.5-2】求的极小值点。它即是著名的 Rosenbrocks 222)1 ()(100),
26、(xxyyxfBanana 测试函数,它的理论极小值是。该测试函数有一片浅谷,许多算法难1, 1yx以越过此谷。ff=inline(100*(x(2)-x(1)2)2+(1-x(1)2,x); x0=-1.2,1;sx,sfval,sexit,soutput=fminsearch(ff,x0) Optimization terminated successfully: the current x satisfies the termination criteria using OPTIONS.TolX of 1.000000e-004 and F(X) satisfies the conver
27、gence criteria using OPTIONS.TolFun of 1.000000e-004 sx = 1.0000 1.0000sfval = 8.1777e-010sexit = 1soutput = iterations: 85 funcCount: 159 algorithm: Nelder-Mead simplex direct search 6.5.4 数值积分数值积分【例 6.5-3】求,其精确值为 。dxeIx10274684204. 0(1)fun.mfunction y=fun(x)y=exp(-x.*x);(2)Hf=fun;Isim=quad(Hf,0,1)
28、,IL=quadl(Hf,0,1) Isim = 0.7468IL = 0.7468 6.5.5 解常微分方程解常微分方程【例 6.5-4】求微分方程在初始条件情况下0)1 (222xdtdxxdtxd0)0(, 1)0(dtdxx的解,并图示。(见图 6.5-3 和 6.5-4)(1)(2)DyDt.mfunction ydot=DyDt(t,y)mu=2;ydot=y(2);mu*(1-y(1)2)*y(2)-y(1);(3)tspan=0,30;y0=1;0;tt,yy=ode45(DyDt,tspan,y0);%plot(tt,yy(:,1),title(x(t) 5 5 5 图6.5
29、-3 微分方程解(4)plot(yy(:,1),yy(:,2) 0 5 1 5 2 5 0123图6.5-4 相平面轨迹6.6 信号处理信号处理6.6.2 快速快速 Fourier 变换和逆变换变换和逆变换【例 6.6-1】利用 fft 和 ifft 指令重新计算两序列的卷积。所给已知序列为 , 。elsenna12, 4 , 301)(elsennb9 , 3 , 201)(cleara=ones(1,13);a(1,2,3)=0;b=ones(1,10);b(1,2)=0; c=conv(a,b); M=32;AF=fft(a,M);BF=fft(b,M);CF=AF.*BF; cc=re
30、al(ifft(CF); nn=0:(M-1);c(M)=0;error=c-cc;subplot(2,1,1),stem(nn,c,fill),grid,axis(0,31,0,9)xlabel(nn),ylabel(cc)subplot(2,1,2),stem(nn,error,fill),axis(0,31,-1,1)ylabel(error) 8 5 0 图6.6-1 变换法和直接法求卷积结果比较【例6.6-2】fft在信号分析中的应用。试用频谱分析方法从受噪声污染的信号中鉴别出有用信号。在此,。)(9cos65sin3)(tNttty)5 , 0()(NtNclear,randn(s
31、tate,0)t=linspace(0,10,512);y=3*sin(5*t)-6*cos(9*t)+5*randn(size(t);plot(t,y) 8 0 0 5 图6.6-2 受噪声污染的信号Y=fft(y);Ts=t(2)-t(1)Ws=2*pi/Ts;Wn=Ws/2w=linspace(0,Wn,length(t)/2);Ya=abs(Y(1:length(t)/2);plot(w,Ya) Ts = 0.0196Wn = 160.5354 , 0 İ 0 0 00 0 0 0 图6.6-3 受噪声污染信号的幅频谱ii=find(w=20);plot(w(ii),Ya(ii)gri
32、d,xlabel(Frequency Rad/s) 05 00 0 0 0 图6.6-4 受噪声污染信号幅频谱的局部放大6.6.3 数字滤波数字滤波【例 6.6-3】设计一个低通滤波器,从受噪声干扰的多频率混合信号中获取 10Hz 的信)(tx号,见图 6.6-5。在此,)()1002cos()102sin()(tntttx而。)2 . 0 , 0()(Ntnclear,randn(state,1)ws=1000;t=0:1/ws:0.4;x=sin(2*pi*10*t)+cos(2*pi*100*t)+0.2*randn(size(t);wn=ws/2;B,A=butter(10,30/wn
33、);y=filter(B,A,x);plot(t,x,b-,t,y,r.,MarkerSize,10)legend(Input,Output,0) 1 5 2 5 图6.6-5 10 阶 Butterworth 滤波器的滤波效果6.7 系统分析系统分析6.7.2 线性时不变对象线性时不变对象 LTI【例 6.7-1】已知一个两输入两输出系统的状态方程四对组,据此建立 LTI 对象“状态方程子类”模型。然后再从此模型获取传递函数二对组。A=0.5 0.5 0.7071;-0.5 -0.5 0.7071;-6.364 -0.7071 -8;B=0 0 4;1 0 1;C=0.7071 -0.7071 0;0 0.5 -0.5;D=0;S_ss=ss(A,B,C,D) a = x1 x2 x3 x1 0.5 0.5 0.7071 x2 -0.5 -0.5 0.7071 x3 -6.364 -0.7071 -8 b = u1 u2 x1 0 1 x2 0 0 x3 4 1 c = x1 x2 x3 y1 0.7071 -0.7071 0 y2 0 0.5 -0.5 d = u1 u2 y1 0 0 y2 0 0 Continuous-time model. S_tf=tf(minr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 印染助剂复配工标准化强化考核试卷含答案
- 托育师安全专项知识考核试卷含答案
- 石墨化工操作管理评优考核试卷含答案
- 味精发酵工岗位专业实务考核试卷含答案
- 动物胶提胶浓缩工基础管理水平考核试卷含答案
- 消毒员岗前综合评价考核试卷含答案
- 避雷器装配工岗前岗中考核试卷含答案
- 劳务经纪人岗位质量监控考核试卷含答案
- 汽轮机值班员安全生产基础知识测试考核试卷含答案
- 客运车辆驾驶员岗位模拟考核试卷含答案
- 2026小学数学北师大版新教材培训:四至六年级教材解析
- 2026人教版小学三年级下册数学期末综合试卷3套(打印版+答案解析)
- 2026年巨量本地推初级题库
- 校本教材-无人机空气动力学与飞行原理
- T/CEC 193-2018 电力行业无人机巡检作业人员培训考核规范
- 麻醉科术中过敏反应处理教程
- 生物医药研发项目计划书范例
- 医疗器械经营质量管理规范现场检查原则培训试题及答案
- 智能交通系统在公共交通线路优化中的应用可行性研究报告
- 第十届“雄鹰杯”小动物医师技能大赛备考试题库(附答案)
- 医院食品安全培训
评论
0/150
提交评论