一,实验内容
实验一 斐波那契数列
讨论数列an?1?an?1?an,a1?1的变化规律。
(1)在平面坐标系中画出数列变化的折线图; (2)观察图形,你认为数列的极限是什么;
(3)观察图形,寻找恰当的函数去拟合这个数列;
二,实验分析
由题目可以知道,数列的某一项的值与它的前一项有关。
利用matlab软件的数据可视化功能将这些数据显示成平面曲线的形式后,我们可以观察到数列的变化规律;通过matlab软件的数据拟合功能,我们可以大概知道数列的函数关系式,结合上面的递推公式,就可以推导出来数列的通项公式。
三,实验过程
本试验将数列的有限项,看成是待处理的数据。首先利用matlab软件的可视化功能,将这些数据显示在平面坐标系中,观察其图形类似什么曲线,结论是:指数函数的曲线。进一步,利用指数函数与对数函数的互逆关系,将原有数据取对数,再观察其曲线形状是否类似直线,以验证原来的观察是否正确。通过观察到的目标函数,然后利用matlab软件的数据拟合功能,得到数列通项公式的近似关系。最后,从近似关系出发,推导出来数列的通项公式。
(1)在平面坐标中画出数列变化的折线图 数据的可视化
将离散的数据:F1,F2,F3,F4,?,Fn,?,
看成平面坐标系里的点:(1,F1),(2,F2),(3,F3),(4,F4),?,(n,Fn),?, 利用matlab软件的plot函数在平面坐标系里划出一个点列,就可以实现离散数据的可视化。plot函数的基本使用格式为:plot(y),其中参数y表示竖坐
标,即需要显示的数据。
具体的实现流程为:(1)定义数组fn;(2)显示数组fn。具体的代码如下:
function shulie(n) fn=[1,2]; for i=3:n
fn=[fn,fn(i-1)+1/fn(i-1)]; end plot(fn)
效果图: 当n=50时,
当n=100时,
当n=150时,
从图中可以看出数列是一个递增数列
(2)观察图形,你认为数列的极限是什么;
由图可知,数列递增,则当n趋向于无穷大时,数列的值也趋向于正 无穷大
(3)观察图形,寻找恰当的函数去拟合这个数列;
通过对图案的分析,利用Matlab软件的数据可视化功能,将这些数据取平方后显示在平面坐标系中,观察它是否象一条直线。具体的实现流程为:(1)定义数组fn;(2)数组fn取对数;(3)显示数组fn。具体的代码如下:
function shulieer(n) fn=[1,2]; for i=3:n
fn=[fn,fn(i-1)+1/fn(i-1)];
end fn=fn.*fn; plot(fn)
效果图: N=50,
N=100时,
获得数据的近似关系式
通过Matlab的数据拟合功能,拟合出经过平方以后的函数关系式子,从而求的数列的近似通项公式。
具体的实现流程为:1. 定义数组fn 2. 对数组取平方 3. 用一阶多项式拟合数组
代码;function shuliesan(n) fn=[1,2]; for i=3:n
fn=[fn,fn(i-1)+1/fn(i-1)]; end xn=1:n; fn=fn.*fn;
polyfit(xn,fn,1)
运行函数后的返回结果为 2.0297 0.4420 y=sqrt(2.0297n +0.4420)
观察拟合数据与原始数据的吻合程度
具体的实现流程为:(1)定义数组fn1,fn2;(2)显示数组fn1,fn2。具