实验1-华工电信数学实验-大二下.docx_第1页
实验1-华工电信数学实验-大二下.docx_第2页
实验1-华工电信数学实验-大二下.docx_第3页
实验1-华工电信数学实验-大二下.docx_第4页
实验1-华工电信数学实验-大二下.docx_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验名称:斐波那契数列专业:电子科学与技术 班级:姓名:序号:36提交日期:2011年4月16日一、 实验目的与要求1 认识Fibonacci数列,体验发现其通项公式的过程;2 了解matlab软件中进行数据显示与数据拟合的方式;3 掌握matlab软件中plot, polyfit等函数的基本用法;4 提高对数据进行分析与处理的能力。二、 问题描述1 讨论数列的变化规律。(1)在平面坐标系中画出数列变化的折线图;(2)观察图形,你认为数列的极限是什么;(3)观察图形,寻找恰当的函数去拟合这个数列;2 讨论调和级数的 变化规律。(1)画出部分和数列 变化的折线图,观察变化规律;(2)引入数列: ,作图观察其变化,猜测是否有极限;(3)引入数列: ,作图观察其变化,寻找恰当的函数拟合;(4)调和级数的部分和数列的变化规律是什么?三、 问题解决第一题:讨论数列的变化规律。(1)在平面坐标系中画出数列变化的折线图;(2)观察图形,你认为数列的极限是什么;(3)观察图形,寻找恰当的函数去拟合这个数列;解:(1)为了研究题设数列的变化规律,我们分别取此数列的前50项、前100项、前200项和前500项来观察。利用Matlab软件的数据可视化功能,将这些数据显示在平面坐标系中,观察其中蕴涵的函数关系。具体的实现流程为:(1)定义数组fn;(2)显示数组fn。具体的代码如下:fn=1,2; %将数列的第一项第二项放到数组fn上for i=3:n %fn的第三项到第n项fn=fn,fn(i-1)+1/fn(i-1); %将第i项添加到数组fn中end %循环结束plot(fn) %将装有数列前n项的数组显示出来n=50n=100n=200n=500综上:从图像看来,该数列是递增数列。(2)从图像看来,随着n的增大,数列趋向于无穷大。即极限为无穷大。(3)经过上一步的观察,觉得这些数据应该是幂函数的形式。为了进一步验证这个结论是否正确,可以利用幂函数取对数后,将lnx作为x轴,如果这些数据确实是幂函数的形式,则经过变化后应该是一个线性关系,即一阶多项式,从图形上看应该象一条直线。因此,再利用Matlab软件的数据可视化功能,将这些数据取对数后显示在平面坐标系中,观察它是否象一条直线。具体的实现流程为:(1)定义数组fn;(2)数组fn取对数;(3)显示数组fn。具体的代码如下:fn=1; %将数列的第一项放到数组fn上for i=2:n %fn的第2项到第n项 fn=fn,fn(i-1)+1/fn(i-1); %将第i项添加到数组fn中end %循环结束fn=log(fn); %将原来的数据取对数x=1:n;x=log(x);plot(x,fn) %将装有数列前n项的数组显示出来 经观察,觉得它确实象一条直线。可以改变参数n的值,反复观察。n=50n=100n=200n=500经过以上第一步的观察,确定数列的数据是幂函数的关系,第二步验证了第一步得到的结论,因此我们认为数列的数据关系就是幂函数,乘方后就是线性函数,即一阶多项式。利用Matlab软件的数据拟合功能,通过取对数后的数据,用一阶多项式拟合出它的函数关系式,可以得到数列通项公式的一个近似表达式。具体的实现流程为:(1)定义数组fn;(2)数组fn取对数;(3)用一阶多项式拟合数组fn。具体的代码如下:fn=1; %将数列的第一项放到数组fn上for i=2:n %fn的第2项到第n项 fn=fn,fn(i-1)+1/fn(i-1); %将第i项添加到数组fn中end %循环结束fn=log(fn); %将原来的数据取对数xn=1:n;xn=log(xn);polyfit(xn,fn,1) %拟合装有数列前n项的数组为了提高精度,可以加大n的值。取n10000时得到结果:0.4994,0.3518从上面的表达式,可以得到数列通项公式的近似:fn1.422n0.4994经过第三步的拟合,得到了题设数列近似的通项公式,为了观察其吻合程度,我们将数列的拟合数据与原始数据的图形显示出来,进行对比观察。具体的实现流程为:(1)定义数组fn1,fn2;(2)显示数组fn1,fn2。具体的代码如下:fn1=; %装拟合数据的数组for i=1:n %fn1的第1项到第n项 fn1=fn1,1.424*i0.4991; %将第i项添加到数组fn1中 endfn2=1; %将数列的第一项放到数组fn2上for i=2:n %fn2的第2项到第n项 fn2=fn2,fn2(i-1)+1/fn2(i-1); %将第i项添加到数组fn2中end %循环结束x=1:n; %定义横坐标plot(x,fn1,x,fn2,r*) %显示, fn1:兰线,fn2:红星n=50n=100从图上可以看出可以用函数y=1.424n0.4991近似拟合。第二题:讨论调和级数的 变化规律。(1)画出部分和数列 变化的折线图,观察变化规律;(2)引入数列: ,作图观察其变化,猜测是否有极限;(3)引入数列: ,作图观察其变化,寻找恰当的函数拟合; (4)调和级数的部分和数列的变化规律是什么?解:(1)为了研究 数列的变化规律,我们取此数列的前50项、前100项、前200项和前500项来观察。利用Matlab软件的数据可视化功能,将这些数据显示在平面坐标系中,观察其中蕴涵的函数关系。具体的代码如下:S=; %装拟合数据的数组S(1)=1; %将数列的第一项放到数组S上for n=2:n, %S的第二项到第n项S=S,S(n-1)+1/n; %将第i项添加到数组fn中end %循环结束x=1:n; % x的范围plot(x,S,x,S,r*) %将装有数列前n项的数组显示出来得到图像:n=50n=100n=200n=500观察得到部分和数列开始增长极快,随后上升趋势慢慢减缓,增长越来越慢。依照图猜测其极限为正无穷。(2)同上我们取此数列的前50项、前100项、前200项和前500项来观察。利用Matlab软件的数据可视化功能,将这些数据显示在平面坐标系中,观察其中蕴涵的函数关系。具体的代码如下:Hn=1/2,7/12;for i=3:nHn=Hn,Hn(i-1)+1/(2*i*(2*i-1);endplot(Hn)图形如下:n=50n=100n=200n=500由上图猜测该数列有极限为0.7.(3)引入 ,作图观察其变化,寻找恰当的函数拟合:代码如下:Gn=1.5;for j=2:nSn=1;for i=2:2jSn=Sn+1/i;endGn=Gn,Sn;endplot(Gn)图像如下:n=10n=20观察发现,Gn的图像近似于一条直线,利用拟合代码如下:Gn=1.5;for j=2:20Sn=1;for i=2:2jSn=Sn+1/i;endGn=Gn,Sn;endx=1:20;polyfit(x,Gn,1)返回:0.6871 0.6640即: Gn=0.6871n+0.6369下面观察拟合数据与原始数据的吻合程度。经过第三步的拟合,得到了gn数列近似的通项公式,为了观察其吻合程度,我们将gn数列的拟合数据与原始数据的图形显示出来,进行对比观察。具体代码如下: Gn=1.5;for j=2:nSn=1;for i=2:2jSn=Sn+1/i;endGn=Gn,Sn;endfn1=;for i=1:nfn1=fn1,0.6871*i+0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论