MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx

上传人:b****2 文档编号:924681 上传时间:2023-04-29 格式:DOCX 页数:29 大小:595.96KB
下载 相关 举报
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第1页
第1页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第2页
第2页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第3页
第3页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第4页
第4页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第5页
第5页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第6页
第6页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第7页
第7页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第8页
第8页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第9页
第9页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第10页
第10页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第11页
第11页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第12页
第12页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第13页
第13页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第14页
第14页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第15页
第15页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第16页
第16页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第17页
第17页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第18页
第18页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第19页
第19页 / 共29页
MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx

《MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx》由会员分享,可在线阅读,更多相关《MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx(29页珍藏版)》请在冰点文库上搜索。

MATLAB基础及其应用教程周开利邓春晖课后答案Word格式.docx

plot(xi,y0,'

xi,y1,xi,y3,'

plot(xi,y1-y0,xi,y3-y0);

插值和拟合方法相比较,都合理,误差也相近。

梯形法积分

x=-3:

0.01:

3;

y=exp(-x.^2/2);

z=trapz(x,y)/(2*pi)

z=

0.3979

辛普森积分

z=quad('

exp(-x.^2/2)'

-3,3)/(2*pi)

0.3979

积分区间改为-5~5:

x=-5:

5;

0.3989

-5,5)/(2*pi)

0.3989

积分区间改变了,两种积分的结果依然相同。

梯形积分中改变x的维数为2维数组

x(1,:

)=-5:

5

x(2,:

Errorusing==>

trapz

LENGTH(X)mustequalthelengthofthefirstnon-singletondimensionofY.

结论参考教材第82页。

x=linspace(0,1,4);

y=x./(x.^2+4);

t=cumsum(y)*(1-0)/(4-1);

z1=t(end)

z2=trapz(x,y)

z3=quad('

x./(x.^2+4)'

0,1)

z4=quadl('

z1=

0.1437

z2=

0.1104

z3=

0.1116

z4=

A=[5121;

2511;

12102;

12210];

b=[991515]'

;

tol=1.0*10^-6;

imax=5;

x0=zeros(1,4);

tx=jacobi(A,b,imax,x0,tol);

forj=1:

size(tx,1)

fprintf('

%4d%4.2f%4.2f%4.2f%4.2f\n'

...

j-1,tx(j,1),tx(j,2),tx(j,3),tx(j,4))

end

00.000.000.000.00

11.801.801.501.50

20.540.480.660.66

31.311.321.221.22

40.810.790.860.86

51.131.131.091.09

11.801.081.100.88

20.971.021.021.00

30.991.001.001.00

41.001.001.001.00

51.001.001.001.00

w=1.2;

tx=sor(A,b,imax,x0,tol,w);

fprintf('

j-1,tx(j,1),tx(j,2),tx(j,3),tx(j,4))

12.161.121.270.97

20.621.100.981.03

31.060.951.001.00

41.001.011.001.00

若取w=0.02,以下结果表明收敛速度更快:

11.841.091.120.89

20.941.021.021.00

tic;

[x,flag,relres,iter,resvec]=pcg(A,b,1e-6,10);

t1=toc

t1=

0.0064

用同样的方法计算得到不同迭代方法所用时间,迭代次数都取10次

Jacobi迭代法

0.0279

Gauss-Seidel迭代法

0.0221

SOR迭代法

0.0272

可见上述三种迭代法的用时相当,而共轭梯度法用时只有它们的1/4左右。

先将微分方程写成自定义函数ex9fun.m

functionf=ex9fun(x,y)

f=-2*x*y;

二三阶龙格-库塔法:

在命令窗口输入以下语句:

[x,y]=ode23('

ex9fun'

[0:

0.1:

1.2],1)

x=

0

0.1000

0.2000

0.3000

0.4000

0.5000

0.6000

0.7000

0.8000

0.9000

1.0000

1.1000

1.2000

y=

0.9900

0.9608

0.9139

0.8522

0.7788

0.6977

0.6127

0.5273

0.4449

0.3679

0.2982

0.2369

改进欧拉法:

[x,y]=euler2('

[01.2],1,0.1)

0

0.9607

0.9138

0.8520

0.6978

0.6129

0.5279

0.4457

0.3691

0.2997

0.2387

方程的解析解用Dsolve('

Dy=-2*x*y'

'

y(0)=1'

x'

)求得为y=exp(-x^2)。

第四章习题及参考答案

1.填空题

(1)结构数组元素是__结构__类型数据,细胞数组元素是细胞类型数据。

(2)结构数组名与域名之间以_圆点“.”_间隔,同一域的数据类型__相同__。

(3)创建结构数组可以对结构数组的域直接赋值和采用函数_struct_,当采用函数创建时,可以一次给多个元素赋值,此时,各元素值应以_{}_括号括起来,如果某个_域_的值都相同,则可以只输入一次。

(4)创建细胞数组可以对细胞元素直接赋值或采用函数_cell_,采用函数创建的细胞数组所有元素的值为_空值。

(5)删除域名的函数是_rmfield_,删除结构数组元素的方法是将欲删除的元素赋空值。

(6)利用函数_fieldnames_可以得到结构数组的域名,利用函数_getfield_可以得到结构数组的域值,利用多种方法可以访问结构数组的元素。

(7)将细胞元素赋以空值可以删除细胞元素内容(用花括号),如果要从细胞数组中删除某个细胞元素,则需要_将细胞元素(用园括号)赋以空值。

(8)利用花括号和下标可以得到细胞数组的元素内容,利用圆括号和下标可以得到细胞数组的元素。

(9)结构细胞数组的元素是结构类型数据,元素值是结构。

2.选择题

(1)在MATLAB命令窗口输入语句:

teacher=struct('

name'

{'

John'

Smith'

},'

age'

{25,30});

现需将结构数组teacher的第一个age域值修改为35,则应使用__C__。

A.setfield(teacher,'

age

(1)'

35)

B.teacher

(1)=setfield(teacher

(1),'

C.teacher

(1).age=35

D.teacher=(teacher.age

(1)=35)

(2)对于题

(1)创建的结构数组teacher,若进行下列操作,其结果为__A__。

fieldnames(teacher)

A.ans=

'

B.ans=

name

age

C.ans=

name:

'

age:

25

D.ans=

30

(3)对于题

(1)创建的结构数组teacher,若需要引用Smith的年龄,可以使用__BD__。

A.getfield(teacher,'

age

(2)'

B.getfield(teacher

(2),'

C.teacher.age

(2)

D.teacher

(2).age

(4)在MATLAB命令窗口输入语句:

则,再输入a1=teacher

(1)的结果为__A__,输入a2=teacher

(1).name的结果为__C__。

A.a1=

B.a1=

John

C.a2=

John

D.a2=

(5)在MATLAB命令窗口输入语句:

teacher1=struct('

teacher2=struct('

25'

30'

});

则,再输入a1=teacher1

(1).age

(2)的结果为__C__,输入a1=teacher2

(1).age

(2)的结果为__D__,输入a1=teacher1

(1).age的结果为__A__,输入a1=teacher2

(1).age的结果为__A__。

A.a1=

25

30

C.出错信息

D.a1=

teacher05=struct('

id'

xx010'

xx016'

},...

黎明'

王佳薇'

course'

{{'

高数'

},{'

电路'

模电'

}});

student05=struct('

number'

20050731021'

20050731031'

20050731036'

张小霞'

郭凯'

周明辉'

}},...

score'

{[708778],[829088],[889291]});

teacher05

(1)

ans=

id:

name:

course:

{'

}

teacher05

(2)

student05

(1)

number:

course:

score:

[708778]

student05

(2)

[829088]

student05(3)

[889291]

class05_strct{1}=teacher05;

class05_strct{2}=student05;

class05_strct{1}

(1),class05_strct{1}

(2)

class05_strct{2}

(1),class05_strct{2}

(2),class05_strct{2}(3)

teacher04=struct('

xx012'

姚大志'

数电'

高频'

student04=struct('

20040734005'

20040734036'

王雪梅'

高志刚'

}},'

{[7580],[5665]});

class04_strct{1}=teacher04;

class04_strct{2}=student04;

class={class05_strct,class04_strct};

celldisp(class)

class{1}{1}=

1x2structarraywithfields:

id

name

course

class{1}{2}=

1x3structarraywithfields:

number

score

class{2}{1}=

class{2}{2}=

score

class{2}

[1x2struct][1x2struct]

class

(2)

{1x2cell}

class{2}

(2)

[1x2struct]

class{2}{2}

class{2}{2}

(2)

[5665]

class{2}{2}

(2).name,class{2}{2}

(2).course,class{2}{2}

(2).score

高志刚

5665

class{2}{2}

(2).score

(1)=85;

class{2}{2}

(2).course

(1),class{2}{2}

(2).score

(1)

85

第五章习题及参考答案

解答:

symsabcx

f=(a*x^2+b*x+c-3)^3-a*(c*x^5+4*b*x-1)-18*b*((2+5*x)^7-a+c)

fx=collect(f,x)

fx=

-1406250*b*x^7+(a^3-3937500*b)*x^6+(3*b*a^2-a*c-4725000*b)*x^5+(-3150000*b+(c-3)*a^2+2*b^2*a+a*(2*(c-3)*a+b^2))*x^4+(-1260000*b+4*(c-3)*b*a+b*(2*(c-3)*a+b^2))*x^3+((c-3)*(2*(c-3)*a+b^2)+2*b^2*(c-3)+a*(c-3)^2-302400*b)*x^2+(3*(c-3)^2*b-4*b*a-40320*b)*x+(c-3)^3-18*b*(128+c-a)+a

fa=collect(f,a)

fa=

x^6*a^3+3*(b*x+c-3)*x^4*a^2+(18*b-c*x^5-4*b*x+1+3*(b*x+c-3)^2*x^2)*a+(b*x+c-3)^3-18*b*((2+5*x)^7+c)

symsxy

f=x^2*y+x*y-x^2-2*x;

g=-(1/4)*x*exp(-2*x)+(3/16)*exp(-2*x);

fx=collect(f)

(y-1)*x^2+(y-2)*x

gepx=collect(g,exp(-2*x))

gepx=

(-1/4*x+3/16)*exp(-2*x)

(1)

symsx

f=x^3-3*x^2-3*x+1;

F=factor(f)

F=

(x+1)*(x^2-4*x+1)

(2)

g=x^3-7*x+6;

G=factor(g)

G=

(x-1)*(x-2)*(x+3)

f1=cos(x)+sqrt(-sin(x)^2);

f2=x^3+3*x^2+3*x+1;

simple(f1)

simplify:

cos(x)+(-1+cos(x)^2)^(1/2)

radsimp:

cos(x)+i*sin(x)

combine(trig):

cos(x)+1/2*(-2+2*cos(2*x))^(1/2)

factor:

cos(x)+(-sin(x)^2)^(1/2)

expand:

combine:

convert(exp):

1/2*exp(i*x)+1/2/exp(i*x)+1/4*4^(1/2)*((exp(i*x)-1/exp(i*x))^2)^(1/2)

convert(sincos):

convert(tan):

(1-tan(1/2*x)^2)/(1+tan(1/2*x)^2)+(-4*tan(1/2*x)^2/(1+tan(1/2*x)^2)^2)^(1/2)

collect(x):

mwcos2sin:

simple(f2)

x^3+3*x^2+3*x+1

(x+1)^3

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2