MATLAB数值运算实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

系(部):信息工程班级:

姓名:学号:

课程:MATLAB 实验名称:Matlab数值运算

目录

一 . 实验目的 (2)

二 . 实验内容 (2)

三 . 实验步骤 (2)

四 . 实验具体过程及数据分析 (3)

五 . 实验原始记录 (9)

六 . 实验心得、体会及思考 (11)

一. 实验目的

掌握MATLAB的数值运算及其运算中所用到的函数,掌握结构数组和细胞数组的操作。

二. 实验内容

1.多项式运算。

2.多项式插值和拟合。

3.数值微积分。

4.结构数组和细胞数组。

三. 实验步骤

1.多项式运算

(1)多项式表示。在MATLAB中,多项式表示成向量形式。

如:s^4+3s*s^3-5*s^2+9

>>S=[1 3 -5 0 9]

(2)多项式的加减法相当于向量的加减法,但须注意阶次要相同。如不同,低阶要补0。

如多项式2*s^2+3*s+9与多项式s^4+3*s^3-5*s^2+4s+7相加。

(3)多项式的乘、除法分别用函数conv和deconv实现。

(4)多项式求根用函数roots

(5)多项式求值用函数polyval

练习1:求(s^2+1)(s+3)(s+1)/(s^3+2*s+1)的“商”及“余”多项式

2.多项式插值和拟合

有一组实验数据如表所示

请分别用拟合(二阶至三阶)和插值(线性和三次样条)的方法来估测X=9.5

时Y的值。

3.数值微积分

(1)差分使用diff函数的实现

(2)可以用因变量和自变量差分的结果相除得到数值微分

(3)Cumsum函数求累计积分,trapz函数用梯形法求定积分,即曲线的面积

练习:如图瑞士地图,为了算出其国土面积,首先对地图作如下测量:以由西向东方向为X轴,由南到北方为Y轴,选择方便的原点,并将从最西边点到最东边界点在X轴的区间适当划分若干级,在每个分点的Y方向测出南边界点和北边界点的Y坐标Y1和Y2,这样就得到了下表,根据地图比例知道18mm相当于40km,试有测量数据计算瑞士国土近似面积,与其精确值41228km^2比较。

4.结构数组与细胞数组

(1)结构数组的创建

(2)结构数组的操作

练习:创建一结构数组stusorce,其域为:No,Name,English,Math,Chinese,Total,Average。结构数组的大小为2*2。

(3)细胞数组的创建

(4)细胞数组的操作

练习:创建一大小为2*2细胞数组stucell,其元素的类型分别为:结构类型、字符串、矩阵和细胞类型。

四. 实验具体过程及数据分析

1.

>> S1=[2 4 2]

S1 =

2 4 2

>> roots(S1)

ans =

-1

-1

>> S=[1 3 -5 0 9]

S =

1 3 -5 0 9

>> S1=[2 3 11]

S1 =

2 3 11

>> S2=[1 3 -5 4 7]

S2 =

1 3 -5 4 7

>> S3=conv(S1,S2)

S3 =

2 9 10 26 -29 65 77 >> S4=deconv(S3,S1)

S4 =

1 3 -5 4 7

>> S1=[2 4 2]

S1 =

2 4 2

>> polyval(S1,3)

ans =

32

>> x=1:10

x =

1 2 3 4 5 6 7 8 9 10 >> y=polyval(S1,x)

y =

8 18 32 50 72 98 128 162 200 242 练习1:

>> clear all

>> s1=[1 0 1]

s2=[1 3]

s3=[1 1]

s4=conv(s1,s2)

Y=conv(s4,s3)

X=[1 0 2 1]

[Q,R]=deconv(Y,X)

s1 =

1 0 1

s2 =

1 3

s3 =

1 1

s4 =

1 3 1 3

Y =

1 4 4 4 3

X =

1 0

2 1

Q =

1 4

R =

0 0 2 -5 -1

>> poly2sym(Q)

ans =

x + 4

>> poly2sym(R)

ans =

2*x^2 - 5*x - 1

>> conv(Q,X)+R-Y

ans =

0 0 0 0 0 >> s1=[1 0 1]

s2=[1 3]

s3=[1 1]

s4=conv(s1,s2)

Y=conv(s4,s3)

X=[1 0 2 1]

[Q,R]=deconv(Y,X)

s1 =

1 0 1

s2 =

1 3

s3 =

1 1

s4 =

1 3 1 3

Y =

1 4 4 4 3 X =

1 0

2 1

Q =

1 4

相关文档
最新文档