数学实验1数据拟合 2

发布 2022-07-02 03:31:28 阅读 8088

数学实验报告。

学生姓名。学科专业。

任课教师。所在学院。

报告提交日期。

实验一斐波那契数列。

一)练习题1

一.实验目的:

学会用matlab研究调和级数的变化规律及其性质。

学会用matlab进行数据的拟合以及图像的绘制。

1.研究调和级数。

观察调和级数的部分数列的折线图。

实验方法:根据调和级数部分和数列公式:生成以n为自变量和以其。

部分数列为因变量的曲线。

**如下:function fib1(n)

fn=1;for i=2:n;

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

endplot(fn)

实验过程:选择n=1000,调用上述函数画图,图形如下。

选择n=10000,调用上述函数画图,图形如下。

得出结论:由其图可知在n=1000和n=10000时有明显上升,是递增数列,不收敛。

问题二:数列:的变化规律,猜测其是否有极限。

实验方法:由公式,生成以n为自变量和以其部分数列为因变量的曲线。

**如下:function fib2(n)

fn=1;hn=0.5;

for i=2:2*n;

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

endfor j=2:n;

hn=[hn,fn(2*j)-fn(j)];

endplot(hn)

实验过程:选择n=10000,调用上述函数画图,图形如下。

得出结论:的增长在n较小时增长速度很快,但当n时,大致收敛。

于。问题三:

数列:的变化规律,寻找恰当的函数拟合。

实验方法:由公式,生成以n为自变量和以其部分数列为因变量。

的曲线。**如下:

function fib3(n)

fn=1;gn=1.5;

for i=2:2*n;

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

endfor j=2:n;

gn=[gn,fn(2*j)];

endplot(gn)

实验过程:选择n=10000,调用上述函数画图,图形如下。

图形分析:根据图形初步猜测函数关系式为对数函数,进行图形拟合:**如下:

function fib4(n)

fn=1;gn=1.5;

for i=2:2*n;

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

endfor j=2:n;

gn=[gn,fn(2*j)];

endx=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];

endfor j=2:n;

gn=[gn,fn(2*j)];

endx=1:n;

y=exp(gn);

y=polyfit(x,y,1)

运行结果:y=

拟合验证:将拟合表达式式的折线图与的折线图比较,验证猜想。**如下:

function y=fib6(n)

fn1=for i=1:n;

fn1=[fn1,log(3.5617*i+0.8907)];

endfn=1;

gn=1.5;

for i=2:2*n;

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

endfor j=2:n;

gn=[gn,fn(2*j)];

endx=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-2024年的人口增长规律,建立合理的人口增长模型,**未来人口数量。

问题描述:人年份增长与人口数量可以用哪些曲线进行拟合,且能根据拟合做出哪些**。

实验方法:画出散点图,再进行猜测符合那种曲线。

实验步骤:输入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,1 25786,126743];

n=[n,127627,128453,129227,129988,130756,131448,132129,132802,133450, 134091];

plot(t,n,'r+')

xlabel('年份');ylabel('数量');

据图,先现以年份为自变量,人口数量为因变量依次进行一阶拟合。**如下:

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,1334

p1=polyfit(t,n,1)

plot(t,n,'r+',t,polyval(p1,t))

r1=dot(n-polyval(p1,t),n-polyval(p1,t))

legend('测量数据','1阶拟合'')

得图形。且p1=

1.0e+06*

r1=1.4525e+07

再现以年份为自变量,人口数量为因变量依次进行六阶拟合。**如下: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,1334 50,134091];

p2=polyfit(t,n,6)

plot(t,n,'r+',t,polyval(p2,t))

r2=dot(n-polyval(p2,t),n-polyval(p2,t))

legend('测量数据','6阶拟合')

且得。p2=

1.0e+16*

r2=再现以年份为自变量,人口数量为因变量依次进行双曲拟合。**如下: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,1257 86,126743];

n=[n,127627,128453,129227,129988,130756,131448,132129,132802,133450,13 4091];

p3=polyfit(1./t,1./n,1)

plot(t,n,'r+',t,1./polyval(p1,1./t))

r3=dot(n-1./polyval(p3,1./t),n-1./polyval(p3,1./t))

legend('测量数据','双曲线拟合')

且得。p3=

r3=2.4159e+07

再现以年份为自变量,人口数量为因变量依次进行指数拟合。**如下: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,1257 86,126743];

p4=polyfit(1./t,log(n),1)

plot(t,n,'r+',t,exp(polyval(p4,1./t)))

r4=dot(n-exp(polyval(p4,1./t)),n-exp(polyval(p4,1./t)))

legend('测量数据','指数拟合')

且得。p4=

1.0e+04*

r4=1.8600e+07

再现以年份为自变量,人口数量为因变量依次进行对数拟合。**如下: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,12476 1,125786,126743];

p5=polyfit(log(t),n,1)

plot(t,n,'r+',t,polyval(p5,log(t)))

r5=dot(n-polyval(p5,log(t)),n-polyval(p5,log(t)))

legend('测量数据','对数拟合')

且得。p5=

1.0e+07*

r5=1.4250e+07

对比分析对数,六阶,指数拟合较好,其中。

对数函数为n=1.950x10^6ln(t)-1.4699x1o^7

**出2011,2024年人口分别为133455万,134425万六阶函数为n=7.9x10^13t-2.6421x10^16

**出2011,2024年人口分别为1.32x10^17明显有误。

指数函数为n=exp(27-31262/t)

**出2011,2024年人口分别为94324万,95056万明显有误。

所以对数函数较准公式:n=1.950x10^6ln(t)-1.4699x1o^7

人口趋势分析:中国的人口目前仍在持续增长,但是增速明显放缓,要防备人口老龄化以及未来劳动力短缺的问题,应按实际情况及时制定新的人口政策,适当放开计划生育的约束,优化人口结构。保持人口低速平稳增长。

四、总结分析和心得体会。

1.初步了解了matlab软件的用法。

2.学会了编写简单的matlab程序。

3.分析算法和调试程序的过程培养了逻辑思维能力。

4.认识到在matlab中采用拟合的方法时解决问题的强大之处,了解到学习matlab软件的重要性。

数学实验1数据拟合 2

数学实验报告。实验一斐波那契数列。一 练习题1 一 实验目的 学会用matlab研究调和级数的变化规律及其性质。学会用matlab进行数据的拟合以及图像的绘制。1.研究调和级数。观察调和级数的部分数列的折线图。实验方法 根据调和级数部分和数列公式 生成以n为自变量和以其部分数列为因变量的曲线。如下 ...

数学建模 最小二乘拟合实验

数学建模期末实验作业 院系 数学学院。专业 信息与计算科学。年级 2014级。试题编号 37 胡克定律的综合评价分析。背景摘要 利用一个打蛋器和一个物理学公式,毁掉一面六英寸厚的承重墙,这么天方夜谭的事你能相信吗?但它却真的发生了!越狱 这一电视剧相信很多人都耳熟,即使没看过里面的内容,但应该都曾经...

数学建模插值与拟合实验题

1.处理2021年大学生数学建模竞赛a题 中国人口增长 附件中的数据,得到以下几个问题的拟合结果,并绘制图形。1 对1994 2021年出生婴儿的性别比进行拟合,并以此 2021 2021年间的性别比。2 生育率随年龄的变化而变化,试以生育年龄为自变量,生育率为因变量,对各年的育龄妇女生育率进行拟合...