用matlab绘制logistic曲线的图

用matlab绘制logistic曲线的图,第1张

用matlab绘肆运制logistic曲线的图,可以按下列方法来进行。

第一步:根据给出的数据t和F,用nlinfit非线性回归函数拟合出logistic函数的系数

第二步:根据logistic函数,求埋老出对应裂液梁于t=0:0.1:41的F值

第三步:根据t和F值绘制其logistic曲线图

用nlinfit()函数,可以求得

A=45.6785;r=0.17849;rm=5.1545

【亩数1】初始值是这么定的:

>>[c,d]=solve('c/(1+(c/60.2-1)*exp(-5*d))=67.2','c/(1+(c/60.2-1)*exp(-20*d))=90.9','c','d')

c =

62.457687920920008140916437719297-1.6291275002135204129081793780683*i

62.457687920920008140916437719297+1.6291275002135204129081793780683*i

241.95986840768380162085441918688

d =

-.95675170588036288272009149214033e-1+.43712460153973020393407947582405*i

-.95675170588036288272009149214033e-1-.43712460153973020393407947582405*i

.29854891132649696390901254874996e-1

【2】fun的函数形式就是logistic函数。

【3】b1 =

180.9871 0.0336

可以改成这样,效果一样:

%==============

[c,d]=solve('c/(1+(c/60.2-1)*exp(-5*d))=67.2','c/(1+(c/60.2-1)*exp(-20*d))=90.9','c','d') %求初始参数

t=0:51%令1954年为初始年

x=[60.2 61.5 62.8 64.6 66 67.2 66.2 65.9 67.3 69.1 70.4 72.5 74.5 76.3 78.5 80.7 83 85.2 87.1 89.2 90.9 92.4 93.7 95 96.259 97.5 98.705 100.1 101.654 103.008 104.357 105.851 107.5 109.3 111.026 112.704 114.333 115.823 117.171 118.517 119.85 121.121 122.389 123.626 124.761 125.786 126.743 127.627 128.453 129.227 129.988 130.756]

b0=[ eval(c(3)), eval(d(3))]%初始参数值

fun=inline('b(1)./(1+(b(1)/60.2-1)*exp(-b(2)*t))','b','t')

[b1,r1,j1]=nlinfit(t,x,fun,b0)

y1=fun(b1,t)%非线性拟合的方程

plot(t+1954,x,'*',t+1954,y1) %对原始数据与曲线拟合后的值作图

grid

R1=r1.^2

R2=(x-mean(x)).^2

R=1-R1/R2 %可决虚信系数差耐轮

W=sum(abs(r1)) %残差绝对值之

%==============


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12551375.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存