实验报告
系 (部):信息工程班级: 姓 名:学 号:
课 程:MATLAB 实验名称:Matlab数值运算
目录
一 . 实验目的 ................................................................. 2 二 . 实验容 ..................................................................... 2 三 . 实验步骤 ................................................................. 2 四 . 实验具体过程及数据分析 ..................................... 4 五 . 实验原始记录 ....................................................... 12 六 . 实验心得、体会及思考 ....................................... 14
1
一 . 实验目的
掌握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.多项式插值和拟合 有一组实验数据如表所示
2
X Y 1 16 2 32 3 70 4 142 5 260 6 436 7 682 8 1010 9 1432 10 1960 请分别用拟合(二阶至三阶)和插值(线性和三次样条)的方法来估测X=9.5时Y的值。 3.数值微积分
(1)差分使用diff函数的实现
(2)可以用因变量和自变量差分的结果相除得到数值微分
(3)Cumsum函数求累计积分,trapz函数用梯形法求定积分,即曲线的面积 练习:如图瑞士地图,为了算出其国土面积,首先对地图作如下测量:以由西向向为X轴,由南到北方为Y轴,选择方便的原点,并将从最西边点到最东边界点在X轴的区间适当划分若干级,在每个分点的Y方向测出南边界点和北边界点的Y坐标Y1和Y2,这样就得到了下表,根据地图比例知道18mm相当于40km,试有测量数据计算瑞士国土近似面积,与其精确值41228km^2比较。 X 7 10.5 Y1 Y2 44 44 45 59 47 70 13 17.5 50 72 50 93 34 40.5 38 44.5 30 30 34 36 48 56 61 68.5 34 76.5 41 116 80.5 45 118 46 118 91 100 110 110 110 117 118 X 96 101 104 106.5 111.5 118 123.5 136.5 142 146 150 157 158 3
Y1 Y2
43 37 33 28 32 65 55 54 52 81 50 82 66 86 66 85 68 68 121 124 121 121 121 116 122 83 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]
4
S =
1 3 -5 0 9 >> S1=[2 3 11] S1 =
2 3 11 >> S2=[1 3 -5 4 7] S2 =
1 3 -5 >> S3=conv(S1,S2) S3 =
2 9 10 >> S4=deconv(S3,S1) S4 =
1 3 -5 >> S1=[2 4 2] S1 =
2 4 2 >> polyval(S1,3) ans = 32 >> x=1:10 x =
4 7 26 -29 4 7 65 77 5
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
6
Y =
1 4 4 4 3 X =
1 0 2 1 Q =
1 4 R =
0 0 >> poly2sym(Q) ans = x + 4
>> poly2sym(R) ans =
2*x^2 - 5*x - 1 >> conv(Q,X)+R-Y ans =
0 0 >> s1=[1 0 1] s2=[1 3] s3=[1 1] s4=conv(s1,s2) Y=conv(s4,s3)
2 -5 0 0 -1 0 7
X=[1 0 2 1] [Q,R]=deconv(Y,X) s1 =
1 0 1 s2 =
1 3 s3 =
1 1 s4 =
1 3 Y =
1 4 X =
1 0 Q =
1 4 R =
0 0
poly2sym(Q) ans = x + 4
1 3 4 4 2 1 2 -5 3 -1 8
poly2sym(R) ans = 2*x^2 - 5*x - 1 conv(Q,X)+R-Y ans =
0 0 0 0 0 2. x=1:10
y=[16 32 70 142 260 436 682 1010 1432 1960] p1=polyfit(x,y,1) y1=polyval(p1,9.5) 3. x=1:2:9 diff(x)
x=linspace(0,2*pi,100); y=sin(x); plot(x,y) y1=diff(y)./diff(x); plot(x(1:end-1),y1)
x=ones(1,10)
9
cumsum(x) x=linspace(0,pi,100); y=sin(x); s=trapz(x,y) 练习2:
x=[7 10.5 13 17.5 34 40.5 44.5 48 56 61 68.5 76.5 80.5 91 96 101 104 106.5 111.5 118 123.5 136.5 142 146 150 157 158];
y1=[44 45 47 50 50 38 30 30 34 36 34 41 45 46 43 37 33 28 32 65 55 54 52 50 66 66 68];
y2=[44 59 70 72 93 100 110 110 110 117 118 116 118 118 121 124 121 121 121 116 122 83 81 82 86 85 68]; X=x./18*40; Y1=y1./18*40; Y2=y2./18*40;
t1=trapz(X,Y1),t2=trapz(X,Y2),t=t2-t1 4.
(1)>> student.number='20050731001'; >> student.name='jack';
>> student(2).number='20050731002'; >> student(2).name='lucy'; (2)
>>student(1).subject=[] >>student(1).sorce=[] >>student
10
>>fieldnames(student) >>getfield(student,{2},'name') >>student=rmfield(student,'subject')
>>student=setfield(student,{1},'sorce',90); >>stuent(2).sorce=88; (3)
>> A={'How are you!',ones(3);[1 2;3 4],{'cell'}}; >> B(1,1)={'Hello world'}; >> B(2,1)={[ 1 2 3 4]}; (4) >>ans1=A(1,1) >> ans2=A{1,1} >> whos ans1 ans2 >> celldisp(A) >> a1=A{2,1}(1,2) >>[a2 a3]=deal(A{1:2})
11
. 实验原始记录
12
五
13
六 . 实验心得、体会及思考
通过本次实验,我更熟练的掌握了MATLAB的数值运算及其运算中所用到的函数,更好的明白了一些MATLAB数值运算的基本操作。做实验不仅仅要我们有清晰的思路,还要有一丝不苟的态度,认真严谨的实验才能得出更准确的实验结果。
14
因篇幅问题不能全部显示,请点此查看更多更全内容