MATLAB实验报告53581471.docx

上传人:b****5 文档编号:7281784 上传时间:2023-01-22 格式:DOCX 页数:38 大小:778.44KB
下载 相关 举报
MATLAB实验报告53581471.docx_第1页
第1页 / 共38页
MATLAB实验报告53581471.docx_第2页
第2页 / 共38页
MATLAB实验报告53581471.docx_第3页
第3页 / 共38页
MATLAB实验报告53581471.docx_第4页
第4页 / 共38页
MATLAB实验报告53581471.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

MATLAB实验报告53581471.docx

《MATLAB实验报告53581471.docx》由会员分享,可在线阅读,更多相关《MATLAB实验报告53581471.docx(38页珍藏版)》请在冰豆网上搜索。

MATLAB实验报告53581471.docx

MATLAB实验报告53581471

(此文档为word格式,下载后您可任意编辑修改!

一.试验时间:

20131015

二.实验地点:

大楼五楼8号机房

三.实验名称:

MATLAB数值计算

四.实验目的:

1.掌握MATLAB数据对象的特点以及数值的运算规则。

2.掌握MATLAB中建立矩阵的方法以及矩阵处理和分析的方法。

3.掌握MATLAB中常量与变量的使用及各种表达式的书写规则。

4.熟悉MATLAB常用函数的使用以及多项式的运用。

二.实验内容

1.求下列表达式的值。

(1)z1=

结果:

>>z1=2*sin((85360)*pi)(1+eps*eps)

z1=

1.3512

(2)z2=

结果:

>>x=[21+2*i;-0.455]

x=

2.00001.0000+2.0000i

-0.45005.0000

>>z2=12*log(x+sqrt(1+x))

z2=

0.65850.6509+0.4013i

-0.61621.0041

(3)z3=×sin(a+0.3)+ln(),a=-3.0,-2.9,-2.8,…2.8,2.9,3.0

结果:

>>a=-3:

0.1:

3;

>>z3=(eps(a*0.3)-eps(a*0.2))2.0.*sin(a+0.3)+log((a+0.3)2.0)

z3=

Columns1through5

0.3001+3.1416i0.2624+3.1416i0.2231+3.1416i0.1823+3.1416i0.1398+3.1416i

Columns6through10

0.0953+3.1416i0.0488+3.1416i-0.0000+3.1416i-0.0513+3.1416i-0.1054+3.1416i

Columns11through15

-0.1625+3.1416i-0.2231+3.1416i-0.2877+3.1416i-0.3567+3.1416i-0.4308+3.1416i

Columns16through20

-0.5108+3.1416i-0.5978+3.1416i-0.6931+3.1416i-0.7985+3.1416i-0.9163+3.1416i

Columns21through25

-1.0498+3.1416i-1.2040+3.1416i-1.3863+3.1416i-1.6094+3.1416i-1.8971+3.1416i

Columns26through30

-2.3026+3.1416i-2.9957+3.1416i-37.0245-2.9957-2.3026Columns31through35

-1.8971-1.6094-1.3863-1.2040-1.0498

Columns36through40

-0.9163-0.7985-0.6931-0.5978-0.5108

Columns41through45

-0.4308-0.3567-0.2877-0.2231-0.1625

Columns46through50

-0.1054-0.05130.00000.04880.0953

Columns51through55

0.13980.18230.22310.26240.3001

Columns56through60

0.33650.37160.40550.43830.4700

Column61

0.5008

2.创建一个由10个元素组成的等差数列x,第一个元素是1,第10个元素是20.

(1)计算其元素个数;

(2)取出其中第二个元素赋值给y.

(3)将数组X的前3个元素分别赋值为4,5,6.

(4)将数组X的前5个元素倒序后构成一个字数组赋值给Z。

(5)取出X中的第2到最后一个元素赋值给t。

结果:

>>X=linspace()

X=

Columns1through9

1.00003.11115.22227.33339.444411.555613.666715.777817.8889

Column10

20.0000

(1)>>n=10

n=

10

(2)>>y=X(1,2)

y=

3.1111

(3)>>X(1,1:

3)=[456]

X=

Columns1through9

4.00005.00006.00007.33339.444411.555613.666715.777817.8889

Column10

20.0000

(4)>>z=[X

(1)X

(2)X(3)X(4)X(5)];

>>fliplr(z)

ans=

9.44447.33335.22223.11111.0000

(5)>>t=X;

>>t

(1)=[]

t=

3.11115.22227.33339.444411.555613.666715.777817.888920.0000

3.已知A=,B=,求下列表达式的值。

(1)A+6*B和A-B+I(其中I为单位矩阵)。

(2)A*B和A.*B.

(3)A^3和A.^3.

(4)AB和A\B.

(5)[AB]和[A(1,3),:

);B^2].

结果:

>>A=[1234-4;34787;3657]

A=

1234-4

34787

3657

>>B=[13-1;203;3-27]

B=

13-1

203

3-27

(1)>>y=A+6*B

y=

1852-10

467105

215349

>>I=eye(3)

I=

100

010

001

>>y=A-B+I

y=

1231-3

32884

0671

(2)>>y=A*B

y=

684462

309-72596

154-5241

>>y=A.*B

y=

121024

680261

9-13049

(3)>>y=A^3

y=

3722623382448604

247370149188600766

78688454142118820

>>y=A.^3

y=

172839304-64

39304343658503

27274625343

(4)>>y=AB

y=

16.4000-13.60007.6000

35.8000-76.200050.2000

67.0000-134.000068.0000

>>y=A\B

y=

-0.03130.3029-0.3324

0.0442-0.03230.1063

0.0317-0.11580.1558

(5)>>y=[AB]

y=

1234-413-1

34787203

36573-27

>>y=[A([1,3],:

);B^2]

y=

1234-4

3657

451

11019

20-540

4.a=[-1,0.5,0],b=[-3.4,3,-6],求:

a=b,a==b,a~=b,a<=0.

结果:

>>a=[-1,0.5,0]

a=

-1.00000.50000

>>b=[-3.4,3,-6]

b=

-3.40003.0000-6.0000

>>a

ans=

010

>>a>=b

ans=

101

>>a==b

ans=

000

>>a~=b

ans=

111

>>a<=0

ans=

101

5.A=,B=,计算A&B,A|B,~A。

结果:

>>A=[-501;2.612;081]

A=

-5.000001.0000

2.60001.00002.0000

08.00001.0000

>>B=[42.50;060;-1.201]

B=

4.00002.50000

06.00000

-1.200001.0000

>>A&B

ans=

100

010

001

>>A|B

ans=

111

111

111

>>~A

ans=

010

000

100

6.求x^3+4x^2-17x-60=0的根。

结果:

>>y=sym('x^3+4*x^2-17*x-60')

y=

x^3+4*x^2-17*x-60

>>x=solve(y)

x=

-3

4

-5

7.求多项式2x^4+4x^2-5x在1,2,3,4处的值,对于矩阵的值,以及在矩阵中各点处的值。

结果:

>>p=[24-50];

>>x=1:

1:

4;

>>polyval(p,x)

ans=

12275172

>>x=[12;34];

>>polyval(p,x)

ans=

122

75172

>>polyvalm(p,x)

ans=

97138

207304

8.将多项式G(x)=x^4-5x-17x+129x-180,当x在0:

1:

20时多项式的值y上加上正态分布的随即行向量构成y1,对y1进行拟合,并对多项式y和y1分别进行插值,计算在5.5处的值。

结果:

>>G=[1-5-17129-180];

>>x=0:

1:

20;

>>y=polyval(G,x)

y=

Columns1through8

-180-72-140040198576

Columns9through16

130025204410716811016162002299031680

Columns17through21

42588560567245092160115600

>>z=randn(1,21)

z=

Columns1through9

-0.4326-1.66560.12530.2877-1.14651.19091.1892-0.03760.3273

Columns10through18

0.1746-0.18670.7258-0.58832.1832-0.13640.11391.06680.0593

Columns19through21

-0.0956-0.83230.2944

>>y1=y+z

y1=

1.0e+005*

Columns1through9

-0.0018-0.0007-0.00010.0000-0.00000.00040.00200.00580.0130

Columns10through18

0.02520.04410.07170.11020.16200.22990.31680.42590.5606

Columns19through21

0.72450.92161.1560

>>p1=polyfit(x,y1,1)

p1=

1.0e+004*

0.4592-2.3221

>>p2=polyfit(x,y1,2)

p2=

1.0e+004*

0.0527-0.59391.0128

>>p3=polyfit(x,y1,3)

p3=

1.0e+003*

0.0350-0.52342.2579-1.8420

>>p4=polyfit(x,y1,4)

p4=

1.0000-4.9981-17.0398129.3836-180.9366

>>z=interp1(x,y,5.5)

z=

119

>>z1=interp1(x,y1,5.5)

z1=

120.1900

三.学习体会

今天是第二次做MATLAB实验,经过上一次实验的教训,在做实验之前我认真的预习了实验。

可是在实验中还是不可避免的出现了些问题,例如对表达式的输入问题,第一大题的第三小题表达式z3=×sin(a+0.3)+ln(),一开始的时候我输入的是z3=(eps(a*0.3)-eps(a*0.2))2.0*sin(a+0.3)+log((a+0.3)2.0).可是运行结果显示错误。

正确的输入应该是z3=(eps(a*0.3)-eps(a*0.2))2.0.*sin(a+0.3)+log((a+0.3)2.0)。

经过这次实验我学习到用MATLAB计算表达式的值,建立矩阵的方法以及矩阵处理和分析的方法等,常用函数的使用以及多项式的运用等。

一.试验时间:

2013115

二.实验地点:

大楼五楼8号机房

三.实验名称:

MATLAB符号计算

四.实验目的:

1.熟悉掌握MATLAB符号表达式的创建。

2.熟悉掌握符号表达式的代数运算。

3.掌握符号表达式的化简和替换。

4.熟悉掌握符号微积分。

5.熟悉符号方程的求解。

五.实验内容

1.根据运行结果分析下面三种表示方法有什么不同含义?

(1)f=3*x^2+5*x+2

结果:

>>f=3*x^2+5*x+2

(2)f='3*x^2+5*x+2'

结果:

>>f='3*x^2+5*x+2'

f=

3*x^2+5*x+2

(3)x=sym('x');f=3*x^2+5*x+2

结果:

>>x=sym('x');

>>f=3*x^2+5*x+2

f=

3*x^2+5*x+2

2.因式分解x^4-5*x^3+5*x^2+5*x-6

结果:

>>f=sym('x^4-5*x^3+5*x^2+5*x-6')

f=

x^4-5*x^3+5*x^2+5*x-6

>>factor(f)

ans=

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

3.合并(x+1)^3+(x-1)^2+5*x-6的同类项

结果:

>>f=sym('(x+1)^3+(x-1)^2+5*x-6')

f=

(x+1)^3+(x-1)^2+5*x-6

>>collect(f,'x')

ans=

-4+x^3+4*x^2+6*x

5.求(x+1)^6的展开式

结果:

>>f=sym('(x+1)^6')

f=

(x+1)^6

>>expand(f)

ans=

x^6+6*x^5+15*x^4+20*x^3+15*x^2+6*x+1

4.求f(x,y)=1(x^3-1)+1(x^2+y+1)+1(x+y+1)+8的分子、分母

结果:

>>f=sym('1(x^3-1)+1(x^2+y+1)+1(x+y+1)+8')

f=

1(x^3-1)+1(x^2+y+1)+1(x+y+1)+8

>>[n,1]=numden(f)

n=

-9-8*x-16*y+8*x^4*y+8*x^3*y^2+9*x^4+3*x^3-8*x^2+9*x^5+8*x^6-7*x^2*y-7*y*x-7*y^2+18*x^3*y+8*x^5*y

d=

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

5.求下列极限

(1)log(sinx)(pi-2*x)^2

结果:

>>f=sym('log(sinx)(pi-2*x)^2')

f=

log(sinx)(pi-2*x)^2

>>limit(f,x,pi2)

ans=

-18

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

结果:

>>f=sym('5*x^2(1-x^2)+2^(1x)')

f=

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

>>limit(f,'x',inf)

ans=

-4

6.求下列函数的导数

(1)f(t)=,求f’(4)

结果:

>>symsxt

>>limit(((1-sqrt(4+x))(1+sqrt(4+x))-(1-sqrt(4))(1+sqrt(4)))x,x,0)

ans=

-118

(2)y=exp(x)*cos(x),求

结果:

>>f=sym('exp(x)*cos(x)')

f=

exp(x)*cos(x)

>>diff(f,'x',4)

ans=

-4*exp(x)*cos(x)

(3)

结果:

>>symsxt

>>limit((t+x-atan(t+x)-(t-atan(t)))x,x,0)

ans=

t^2(1+t^2)

7.已知f=,用符号微分求

结果:

>>symsax

>>f=[ax^21x;exp(a*x)log(x)sin(x)]

f=

[a,x^2,1x]

[exp(a*x),log(x),sin(x)]

>>diff(f)

ans=

[0,2*x,-1x^2]

[a*exp(a*x),1x,cos(x)]

8.求下列不定积分

(1)

结果:

>>f=sym('sin(2*x)sqrt(1+(sin(x))^2)')

f=

sin(2*x)sqrt(1+(sin(x))^2)

>>int(f,'x')

ans=

2*(1+sin(x)^2)^(12)

(2)

结果:

>>f=sym('1sqrt(x^2+5)')

f=

1sqrt(x^2+5)

>>int(f,'x')

ans=

asinh(15*5^(12)*x)

9.求下列定积分

(1)

结果:

>>f=sym('sqrt((sin(x))^3-(sin(x))^5)')

f=

sqrt((sin(x))^3-(sin(x))^5)

>>int(f,'x',0,pi)

ans=

45

(2)

结果:

>>f=sym('exp(x^22)')

f=

exp(x^22)

>>int(f,'x',0,1)

ans=

-12*i*erf(12*i*2^(12))*pi^(12)*2^(12)

10.用代数方程求解方程组

结果:

>>eq1=sym('x1-x2+4*x3-2*x4');

>>eq2=sym('x1-x2-x3+2*x4');

>>eq3=sym('3*x1+x2+7*x3-2*x4');

>>eq4=sym('x1-3*x2-12*x3+6*x4');

>>[x1,x2,x3,x4]=solve(eq1,eq2,eq3,eq4)

x1=

0

x2=

0

x3=

0

x4=

0

六.实验体会

MATLAB符号运算,我学习到如何利用sym命令创建符号常量。

例如,在第一题中如果直接输入f=3*x^2+5*x+2就会显示x没有定义,应当先利用sym命令定义x=sym(‘x’);另外还有利用[n,d]=numden(s)提取分子分母,factor(s),expand(s)进行因式分解与展开,simplify,simple(s)化解多项式。

以及用limit(f,x,a),diff(f,x,a)等函数求极限,微积分等。

一.实验时间:

20131111

二.试验地点:

大楼五楼8号机房

三.实验名称:

MATLAB环境及命令窗口的使用

四.实验目的

1.熟悉MATLAB的操作环境及基本操作方法。

2.熟悉MATLAB的通用参数设置。

3.熟悉MATLAB的搜索路径及设置方法。

4.熟悉MATLAB帮助信息的查阅方法。

五.实验内容

1.完成下列操作:

(1)在MATLAB命令窗口输入以下命令:

x=0:

pi10:

2*pi;

y=sin(x);

(2)在工作空间窗口选择变量y,再在工作空间窗口选择绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形。

(3)利用帮助学习save,load命令的用法,将工作区中变量全都保存在mydata.mat中,清空工作区,重新载入变量x,y查看变量信息,并把它们保存在mydata.mat中。

结果:

>>x=0:

pi10:

2*pi;

>>y=sin(x);

>>plot(y,'DisplayName','y','YDataSource','y');figure(gcf)

>>savemydata

>>clc

2.计算y=1.3^3sin(pi3)sprt26,实现

(1)结果用format命令按不同格式输出。

(2)观察在进行上述计算后命令历史窗口的变化,用功能键实现回调刚才计算语句。

(3)回调计算语句,把sin改为sn运行,观察反馈信息。

若回调语句后面加“;”号,看输出有何不同。

结果:

(1)>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

d24b1320

>>formatshorte

>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

9.7017e+000

>>formatrat

>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

2862295

>>>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

d24b1320

>>formatshorte

>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

9.7017e+000

>>formatrat

>>y=1.3*1.3*1.3*sin(pi3)*sqrt(26)

y=

2862295

(2)>>y=1.3*1.3*1.3*sn(pi3)*sqrt(26)

?

?

?

Undefinedfunctionormethod'sn'forinputargumentsoftype'double'.

>>y=1.3^3*sin(pi3)*sqrt(26);

>>

3.键入命令:

x=-10:

0.5:

10;

y=-8:

0.5:

8;

[X,Y]=meshgrid(x,y);

Z=sin(sqrt(X.^2+Y.^2)).sqrt(X.^2+Y.^2);

Meshz(X,Y,Z)%三维网格曲面

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

当前位置:首页 > 经管营销 > 金融投资

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1