华工数学实验作业2Matlab基础知识.docx

上传人:b****8 文档编号:11049329 上传时间:2023-02-24 格式:DOCX 页数:17 大小:314.32KB
下载 相关 举报
华工数学实验作业2Matlab基础知识.docx_第1页
第1页 / 共17页
华工数学实验作业2Matlab基础知识.docx_第2页
第2页 / 共17页
华工数学实验作业2Matlab基础知识.docx_第3页
第3页 / 共17页
华工数学实验作业2Matlab基础知识.docx_第4页
第4页 / 共17页
华工数学实验作业2Matlab基础知识.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

华工数学实验作业2Matlab基础知识.docx

《华工数学实验作业2Matlab基础知识.docx》由会员分享,可在线阅读,更多相关《华工数学实验作业2Matlab基础知识.docx(17页珍藏版)》请在冰豆网上搜索。

华工数学实验作业2Matlab基础知识.docx

华工数学实验作业2Matlab基础知识

 

《数学实验》报告

 

学院:

电子与信息学院

专业班级:

通信工程4班

学号:

201130301443

姓名:

李腾辉

实验名称:

Matlab基础知识

实验日期:

2013.03.16

第二次实验

1.实验内容

2.实验过程

1.观察数据间的大概函数关系

利用题设递推关系,画出100个点的曲线,图片如下:

由曲线大致可以看出其是不断增长的,没有收敛的趋势。

代码如下:

functionstep1(n)%声明函数名task

an=1;%定义数组an

fori=2:

n%an从第二项开始

an=[an,an(i-1)+1/an(i-1)];%将第i项添加到数组an中

plot(i-1,an(i-1),'r*');

holdon

end%循环结束

2.获得数据的近似函数关系式

由第一步可以猜想曲线可能可以用多项式拟合或者是幂函数拟合

(1)尝试用多项式拟合

50项拟合曲线:

y=-0.1436*x^4+0.2261*x^3–0.1193*x^2+1.9093*x+7.2045

100项拟合曲线:

y=-0.1844*x^4+0.3034*x^3–0.1982*x^2+2.7086*x+10.0951

200项拟合曲线:

y=-0.2509*x^4+0.4221*x^3-0.2990*x^2+3.8420*x+14.1978

观察拟合数据与原始数据的吻合程度

经过几次实验观察发现,这几个拟合曲线的表达式各异,且在后面的数据与实际数据相差甚远,如下图所示:

50项拟合曲线:

y=-0.1436*x^4+0.2261*x^3–0.1193*x^2+1.9093*x+7.2045

的后50项严重偏离

100项拟合曲线:

y=-0.1844*x^4+0.3034*x^3–0.1982*x^2+2.7086*x+10.0951

的后50项严重偏离

200项拟合曲线:

y=-0.2509*x^4+0.4221*x^3-0.2990*x^2+3.8420*x+14.1978

的后100项严重偏离

于是决定放弃多项式拟合,源代码如下:

Functionstep2(n)%声明函数名task

an=1;%定义数组an

fori=2:

n%an从第二项开始

an=[an,an(i-1)+1/an(i-1)];%将第i项添加到数组an中

end%循环结束

nn=1:

n;

p=polyfit(nn,an,4)%使用前n项进行拟合

bn=1;

fori=2:

(n+50)%校验拟合曲线后50项的情况

bn=[bn,bn(i-1)+1/bn(i-1)];

end

nn=1:

n+50;

pn=polyval(p,nn);%将拟合好的曲线数据放入pn数组中

plot(nn,pn,'-',nn,bn,'+'),gridon%同时画出两根曲线

 

(2)尝试用幂函数拟合

这里使用Matlab自带的强大的拟合工具箱CurveFittingTool,可以方便许多。

1.先使用命令行工具生成两个数列

i=1:

300

an=1;fori=2:

300;an=[an,an(i-1)+1/an(i-1)];end;an

图片如下

2.在CurveFittingTool中进行相关操作,如图所示

具体是先选择xdata为i;然后选择Ydata为an;

然后在右边的拟合方式选择power,参数选择两个,如下图

然后这个工具就会自动拟合出曲线,以及曲线方程和相关性的结果

 

由结果可知拟合方程为:

Y=1.451*x^0.4959–0.0165

更精确地

Y=1.408*x^0.5004+0.09922(用3000组数据拟合出的)

相关性非常地好

下面用这个方程去验证后面的曲线,结果如下图:

当n远大时,曲线依然符合得很好,证明这个拟合方程是正确的,只有存在小量的误差,可以通过增加数据采集量将误差降到更小。

源码:

functionstep3(n)

an=1;%定义数组an

fori=2:

n%an从第二项开始

an=[an,an(i-1)+1/an(i-1)];%将第i项添加到数组an中

end%循环结束

pn=[];

fori=1:

n

pn=[pn,1.451*i^0.4959-0.0165];

end

nn=1:

n;

plot(nn,pn,'r',nn,an,'+'),gridon%同时画出两根曲线

至此,第一题完成。

结论:

这个数列是幂函数构成的,极限不存在

 

第二题

1.实验内容

2.实验过程

(1)部分和数列{Sn}的折线图

部分和函数{S500}的图像,从图像上观察,曲线单调上升,增速越来越慢,极限不存在

程序:

functiontiaohe1(n)

an=1;

fori=2:

n

an=[an,an(i-1)+1/i];

end

i=1:

n;

plot(i,an,'r');

(2)Hn=S2n-Sn

n=100的图像

n=200的图像

 

n=400的图像

经过大量数据的检验,可以知道hn是收敛于小于0.7的某个数

程序:

functiontiaohe2(n)

sn1=1;

fori=2:

n

sn1=[sn1,sn1(i-1)+1/i];

end

sn2=1;

fori=2:

2*n

sn2=[sn2,sn2(i-1)+1/i];

end

hn=1/2;

fori=1:

n

hn=[hn,sn2(2*i)-sn1(i)];

end

plot(hn)

 

(3)Gn=S2n

N=3的图像

N=5的图像

由图像可猜想可用线性拟合

N=5的拟合情况,此时y=0.6414x+0.8238

N=10的拟合情况,此时y=0.6733x+0.7338

N=15拟合情况,此时y=0.6831x+0.6893

代码如下:

functiontiaohe3(n)

fn=[1];

fori=2:

2^n

fn=[fn,fn(i-1)+1/i];

end

gn=fn

(2);

fori=2:

n

gn=[gn,fn(2^i)];

end

i=1:

n;

p=polyfit(i,gn,1)

pn=polyval(p,i);

plot(i,pn,'-',i,gn,'*'),gridon

Corrolation=corrcoef(gn,pn)

(4)变化规律

Sn单调递增,不收敛;Hn是收敛的;Gn的拟合曲线是一条直线,方程与y=0.6831x+0.6893相近

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

当前位置:首页 > 高等教育 > 经济学

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

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