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

下载本文档

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

文档简介

1、实验名称:斐波那契数列 专业:电子科学与技术班级:序号:36提交日期:2022年4月16日实验目的与要求1. 认识Fib on acci数列,体验发现其通项公式的过程;2. 了解matlab软件中进行数据显示与数据拟合的方式;3. 掌握matlab软件中plot, polyfit 等函数的根本用法;4. 提高对数据进行分析与处理的能力。问题描述1.讨论数列an 1 an 1 an, a 1的变化规律。1在平面坐标系中画出数列变化的折线图;2观察图形,你认为数列的极限是什么;3观察图形,寻找恰当的函数去拟合这个数列;1画出局部和数列 Sn 变化的折线图,观察变化规律;2引入数列:Hn S2n ,

2、 Sn图观察其变化,猜想是否有极限;3引入数列:Gn S2作图观察其变化,寻找恰当的函数拟合;4调和级数的局部和数列的变化规律是什么?三、 问题解决第一题:讨论数列 an 1 an 1 an, a1 1的变化规律。1在平面坐标系中画出数列变化的折线图;2观察图形,你认为数列的极限是什么;3观察图形,寻找恰当的函数去拟合这个数列;解:1为了研究题设数列的变化规律,我们分别取此数列的前 50 项、前 100 项、前 200 项和前 500 项来观察。利用 Matlab 软件的数据可视化 功能,将这些数据显示在平面坐标系中,观察其中蕴涵的函数关系。具体 的实现流程为: 1定义数组 fn ; 2显示数

3、组 fn 。具体的代码如下:for i=3:n%fn的第三项到第n项fn=fn,fn(i-1)+1/fn(i-1);%将第i项添加到数组fn中end%循环结束plot(fn)%将装有数列前n项的数组显示出来114 -3 -2 -/501JICL051015202530354045n=500 Jt I IL1000102030405060708090n=1002515100 1J11111020406080100120140160180n=200302520151050 III050100150200250300350400450500n=500综上:从图像看来,该数列是递增数列。2丨从图像看来

4、,随着n的增大,数列趋向于无穷大。即极限为无穷大3经过上一步的观察,觉得这些数据应该是幕函数的形式。为了进一步验证 这个结论是否正确,可以利用幕函数取对数后,将lnx作为x轴,如果这些数据确实是幕函数的形式,那么经过变化后应该是一个线性关系,即一阶多项式, 从图形上看应该象一条直线。因此,再利用Matlab软件的数据可视化功能,将这些数据取对数后显示在平面坐标系中,观察它是否象一条直线。具体的实 现流程为:1定义数组fn ; 2数组fn取对数;3丨显示数组fn。具 体的代码如下:for i=2:n%fn 的第 2 项到第 n 项fn=fn,fn(i-1)+1/fn(i-1);将第 i 项添加到

5、数组 fn 中end循环结束fn=log(fn);将原来的数据取对数x=1:n;x=log(x);plot(x,fn)% 将装有数列前 n 项的数组显示出来经观察,觉得它确实象一条直线。可以改变参数 n 的值,反复观察。1.50.50.51.52.53.5n=502.51.50.50 I11J11111JL00.511.522.533.544.55n=1002.521.50.5n=20021.50.5n=500经过以上第一步的观察,确定数列的数据是幕函数的关系,第二步验证了 第一步得到的结论,因此我们认为数列的数据关系就是幕函数,乘方后就是线 性函数,即一阶多项式。利用 Matlab软件的数据

6、拟合功能,通过取对数后的 数据,用一阶多项式拟合出它的函数关系式,可以得到数列通项公式的一个近 似表达式。具体的实现流程为:1定义数组fn ; 2丨数组fn取对数;3用一阶多项式拟合数组fn。具体的代码如下:fn=1;%for i=2: n%fnfn=fn,fn(i-1)+1/fn(i-1);%end%将数列的第一项放到数组fn上的第2项到第n项将第i项添加到数组fn中循环结束fn=log(fn);xn=1:n;xn=log(xn);polyfit(xn,fn,1)%拟合装有数列前 n 项的数组为了提高精度,可以加大n的值。取n = 10000时得到结果:将原来的数据取对数从上面的表达式,可以

7、得到数列通项公式的近似:fn -经过第三步的拟合,得到了题设数列近似的通项公式,为了观察其吻合程度,我们将数列的拟合数据与原始数据的图形显示出来,进行比照观察。具体的实现流程为:1 定义数组 fn1,fn2 ; 2 显示数组 fn1,fn2 。具体的代码如下:fn1=;% 装拟合数据的数组for i=1:n%fn1 的第 1 项到第 n 项fn仁fn1,1.424*L0.4991;%将第i项添加到数组 fn1中endfn2=1;% 将数列的第一项放到数组 fn2 上for i=2:n%fn2的第2项到第n项fn2=fn2,fn2(i-1)+1/fn2(i-1);%将第i项添加到数组fn2中en

8、d% 循环结束x=1: n;%定义横坐标plot(x,fn1,x,fn2,r*)%显示,fn1:兰线,fn2 :红星n=500102030405060708090100n=100从图上可以看出可以用函数y=近似拟合。第二题:讨论调和级数的n 1 n变化规律。1画出局部和数列 Sn变化的折线图,观察变化规律;2引入数列:Hn S2n,俺图观察其变化,猜想是否有极限;3弓I入数列:Gn S作图观察其变化,寻找恰当的函数拟合;4调和级数的局部和数列的变化规律是什么?解:1为了研究Sn数列的变化规律,我们取此数列的前 50项、前100项、前200项和前500项来观察。利用Matlab软件的数据可视化功

9、能,将这些数据显示在平面坐标系中,观察其中蕴涵的函数关系。具体的代码如下: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=10065.554.543.532.521.51020406080100120140160180200n=200654311050100150200250300350400450500n=500观察得到局部和数列开始增长极快,随后上

10、升趋势慢慢减缓,增长越来越慢。依照图猜想其极限为正无穷。2同上我们取此数列的前 50项、前100项、前200项和前500项来 观察。利用Matlab软件的数据可视化功能,将这些数据显示在平面坐标系 中,观察其中蕴涵的函数关系。具体的代码如下:Hn=1/2,7/12;for i=3: nHn=H n,Hn( i-1)+1/(2*i*(2*i-1);endplot( Hn)图形如下:n=50n=100n=2000.70.680.660.640.620.60.580.560.540.520.5050100150200250300350400450500n=500由上图猜想该数列有极限为 0.7.3引

11、入GnS作图观察其变化,寻找恰当的函数拟合:代码如下:Gn=1.5;for j=2:nSn=1;for i=2:2AjSn=Sn+1/i;endGn=Gn,Sn;endplot(Gn)图像如下:2345678910n=108101214161820n=2087654321151050观察发现, Gn 的图像近似于一条直线,利用拟合代码如下:Gn=1.5;for j=2:20Sn=1;for i=2:2AjSn=Sn+1/i;endGn=Gn,Sn;endx=1:20;polyfit(x,Gn,1)返回:即:下面观察拟合数据与原始数据的吻合程度。经过第三步的拟合,得到了 gn 数列近似的通项公式,为了观察其吻合程 度,我们将 gn 数列的拟合数据与原始数据的图形显示出来,进行比照观察。 具体代码如下:Gn=1.5;for j=2:nSn=1;for i=2:2AjSn=Sn+1/i;endGn=Gn,Sn;endfn1=;for i=1:nfn1=fn1,0.6871*i+0.6369;endx=1

温馨提示

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

评论

0/150

提交评论