数学实验1数据拟合.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数学实验1数据拟合

数学实验报告 学生姓名 学科专业 任课教师 所在学院 报告提交日期 实验一 斐波那契数列 (一)练习题1 一.实验目的 学会用MATLAB研究调和级数的变化规律及其性质。 学会用MATLAB进行数据的拟合以及图像的绘制。 1.研究调和级数 观察调和级数的部分数列 的折线图。 实验方法: 根据调和级数部分和数列公式:生成以n为自变量和以其部分数列 为因变量的曲线。 代码如下: function fib1(n) fn=1; for i=2:n; fn=[fn, fn(i-1)+1./i]; end plot (fn) 选择n=1000,调用上述函数画图。 选择n=10000,调用上述函数画图。 由其图可知在n=1000和n=10000时有明显上升,是递增数列,不收敛 问题二:数列 : 的变化规律,猜测其是否有极限。 实验方法: 由公式 , 为因变量的曲线。 代码如下: function fib2(n) fn=1; hn=0.5; for i=2:2*n; fn=[fn,fn(i-1)+1./i]; end for j=2:n; hn=[hn, fn(2*j)-fn(j)]; end plot(hn) 实验过程:选择n=10000,调用上述函数画图 得出结论:的增长在n较小时增长速度很快,但当n时,大致收敛于。 问题三:数列 的变化规律,寻找恰当的函数拟合。 实验方法: 由公式 , 为因变量的曲线。 代码如下: function fib3(n) fn=1; gn=1.5; for i=2:2*n; fn=[fn, fn(i-1)+1./i]; end for j=2:n; gn=[gn, fn(2*j)]; end plot(gn) 实验过程:选择n=10000,调用上述函数画图 图形分析:根据图形初步猜测函数关系式为对数函数,进行图形拟合: 代码如下: function fib4(n) fn=1; gn=1.5; for i=2:2*n; fn=[fn,fn(i-1)+1./i]; end for j=2:n; gn=[gn,fn(2*j)]; end x=1:n; y=exp(gn); plot(y) 作图:选择n=10000,画出图形,如下 一阶线性拟合编程: function y=fib5(n) fn=1; gn=1.5; for i=2:2*n; fn=[fn,fn(i-1)+1./i]; end for j=2:n; gn=[gn,fn(2*j)]; end x=1:n; y=exp(gn); y=polyfit(x,y,1) 运行结果: y= 0.2509 -0.0001 拟合验证: 将拟合表达式式的折线图与的折线图比较,验证猜想。 代码如下: function y=fib6(n) fn1=[ ]; for i=1:n; fn1=[fn1,log(3.5617*i+0.8907)]; end fn=1; gn=1.5; for i=2:2*n; fn=[fn,fn(i-1)+1./i]; end for j=2:n; gn=[gn,fn(2*j)]; end x=1:n; plot(x,gn,'b',x,fn1,'r*') legend('原始数据','拟合数据') 得出结论: 根据拟合曲线,exp()为线性函数,所以我们可以据此求其拟合表达式,得:exp()=3.5617*n+0.8907,即 =ln(3.5617*n+0.8907) 问题4讨论部分和数列 的变化规律。 在综合上述实验,可以得出以下结论: 部分和数列是一个递增且发散的数列。 (二)练习题2 实验目的: 分析1990-2010年的人口增长规律,建立合理的人口增长模型,预测未来人口数量。 问题描述: 人年份增长与人口数量可以用哪些曲线进行拟合,且能根据拟合做出哪些预测 实验方法:画出散点图,再进行猜测符合那种曲线。 实验步骤:输入1990-2010的人口数量,画出散点图。 代码如下: t=[1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000]; t=[t,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010]; n=[114333,115823,117171,118517,119850,121121,122389,123626,124761,125786,126743]; n=[n,127627,128453,129227,129988,130756,131448,132129,132802,133450,134091]; plot

您可能关注的文档

文档评论(0)

wuailuo + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档