2013第四章matlab攻略(2)

2019-05-18 21:09

[xx,yy]=ginput(1) xx= 1.5054e-008 yy= 3.1416

图 4.1-6 函数极值点附近的局部放大和交互式取值

【例4.1-8】求

f(x,y)?100(y?x2)2?(1?x)2的极小值点。它即是著名的Rosenbrock's

\测试函数,它的理论极小值是x(1)

(2)

?1,y?1。

ff=@(x)(100*(x(2)-x(1).^2)^2+(1-x(1))^2);

x0=[-5,-2,2,5;-5,-2,2,5];

[sx,sfval,sexit,soutput]=fminsearch(ff,x0) sx =

1.0000 -0.6897 0.4151 8.0886 1.0000 -1.9168 4.9643 7.8004 sfval =

2.4112e-010 sexit = 1

soutput =

iterations: 384 funcCount: 615

algorithm: 'Nelder-Mead simplex direct search' message: [1x196 char]

(3)检查目标函数值

format short e

disp([ff(sx(:,1)),ff(sx(:,2)),ff(sx(:,3)),ff(sx(:,4))]) 2.4112e-010 5.7525e+002 2.2967e+003 3.3211e+005

4.1.5 常微分方程的数值解

d2x2dx??(1?x)?x?0,??2,在初始条件【例 4.1-9】求微分方程2dtdt 6

x(0)?1,dx(0)?0情况下的解,并图示。(见图4.1-7和4.1-8) dt(1) (2) [DyDt.m]

function 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))

xlabel('t'),title('x(t)')

图 4.1-7 微分方程解

(4)

plot(yy(:,1),yy(:,2))

xlabel('位移'),ylabel('速度')

图 4.1-8 平面相轨迹

4.2 矩阵和代数方程

7

4.2.1 一

矩阵运算和特征参数 矩阵运算

【例 4.2-1】已知矩阵A2?4,B4?3,采用三种不同的编程求这两个矩阵的乘积

C2?3?A2?4B4?3。

(1)

clear

rand('state',12)

A=rand(2,4);B=rand(4,3); %------------------

C1=zeros(size(A,1),size(B,2)); for ii=1:size(A,1) for jj=1:size(B,2) for k=1:size(A,2) C1(ii,jj)=C1(ii,jj)+A(ii,k)*B(k,jj); end end end C1 C1 =

1.0559 0.9859 1.2761 1.7654 1.8483 1.8811

(2)

%------------------

C2=zeros(size(A,1),size(B,2)); for jj=1:size(B,2) for k=1:size(B,1) C2(:,jj)=C2(:,jj)+A(:,k)*B(k,jj); end end C2 C2 =

1.0559 0.9859 1.2761 1.7654 1.8483 1.8811

(3)

C3=A*B, C3 =

1.0559 0.9859 1.2761 1.7654 1.8483 1.8811

(3)

C3_C3=norm(C3-C1,'fro') C3_C2=norm(C3-C2,'fro') C3_C3 = 0 C3_C2 = 0

【例 4.2-2】观察矩阵的转置操作和数组转置操作的差别。

format rat A=magic(2)+j*pascal(2) A =

1 + 1i 3 + 1i 4 + 1i 2 + 2i %

8

A1=A' A2=A.' A1 =

1 - 1i 4 - 1i 3 - 1i 2 - 2i A2 =

1 + 1i 4 + 1i 3 + 1i 2 + 2i

B1=A*A' B2=A.*A' C1=A*A.' C2=A.*A.' B1 =

12 13 - 1i 13 + 1i 25 B2 =

2 13 + 1i 13 - 1i 8 C1 =

8 + 8i 7 + 13i 7 + 13i 15 + 16i C2 =

0 + 2i 11 + 7i 11 + 7i 0 + 8i

二 矩阵的标量特征参数

【例4.2-3】矩阵标量特征参数计算示例。

A=reshape(1:9,3,3) r=rank(A) d3=det(A) d2=det(A(1:2,1:2)) t=trace(A) A =

1 4 7 2 5 8 3 6 9 r =

2 d3 =

0 d2 =

-3 t =

15

【例4.2-4】矩阵标量特征参数的性质。

format short g rand('state',0) A=rand(3,3); B=rand(3,3);

C=rand(3,4); D=rand(4,3);

tAB=trace(A*B) tBA=trace(B*A) tCD=trace(C*D)

tDC=trace(D*C) tAB =

9

3.6697 tBA =

3.6697 tCD =

2.1544 tDC =

2.1544

d_A_B=det(A)*det(B) dAB=det(A*B) dBA=det(B*A) d_A_B =

0.0846 dAB =

0.0846 dBA =

0.0846

dCD=det(C*D)

dDC=det(D*C) dCD =

-0.012362 dDC =

-2.1145e-018

4.2.2 矩阵的变换和特征值分解

【例4.2-5】行阶梯阵简化指令rref计算结果的含义。 (1)

A=magic(4) [R,ci]=rref(A) A =

16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 R =

1 0 0 1 0 1 0 3 0 0 1 -3 0 0 0 0 ci =

1 2 3

(2)

r_A=length(ci) r_A = 3

(3)

aa=A(:,1:3)*R(1:3,4) err=norm(A(:,4)-aa) aa = 13 8 12 1 err = 0

10


2013第四章matlab攻略(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:香港员工手册

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: