请问matlab中nlinfit拟合函数怎么用

>>t=[0.25,0.5,0.75,1,1.5,2,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16];>>y=[30,68... >> t = [0.25,0.5,0.75,1,1.5,2,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16];
>> y = [30,68,75,82,82,77,68,68,58,51,50,41,38,35,28,25,18,15,12,10,7,7,4];

拟合出k1,k2,k3,函数是这样的:
展开
 我来答
xueyuan828
2014-06-08 · 超过13用户采纳过TA的回答
知道答主
回答量:24
采纳率:0%
帮助的人:24.3万
展开全部
t = [0.25,0.5,0.75,1,1.5,2,2.5,3,3.5,4,4.5,5,6,7,8,9,10,11,12,13,14,15,16];
y = [30,68,75,82,82,77,68,68,58,51,50,41,38,35,28,25,18,15,12,10,7,7,4];
mf=@(cs,t1)cs(1)*cs(3)/(cs(1)-cs(2))*(exp(-cs(2)*t1)-exp(-cs(1)*t1));
c=lsqcurvefit(mf,rand(3,1),t,y)
mf1=c(1)*c(3)/(c(1)-c(2))*(exp(-c(2)*t)-exp(-c(1)*t));
plot(t,y,'r*',t,mf1)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jimtien
2014-06-08 · TA获得超过7654个赞
知道大有可为答主
回答量:2146
采纳率:88%
帮助的人:1123万
展开全部
fun=inline('k(1)*k(3)/(k(1)-k(2))*(exp(-k(2)*t)-exp(-k(1)*t))','k','t');
k0=[1 0.5 1]; %初始条件

nlintool(t,y,fun,k0)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式