24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1536  |  回复: 15
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

vs570588

木虫 (正式写手)

[求助] 帮帮忙看看我的难题

[求助] 求高手,拟合求参数

function M=Monod(c,Y)
M= -c(1).*Y./(Y+c(2))


Y=[255.55 246.44 237.28 228.36 136.08 114 99.16 82.33 69.4 56.94 42.31 0];
x=[-0.78 -2.2268 -5.2033 -6.1377 -8.6137 -8.6428 -8.4792 -8.1692 -7.7128 -7.11 -6.3608 -1.9];
x=x/214.63;
c0=[0.03 0.3];beta=nlinfit(Y,x ,’Monod’,c0);
为了参数c(1),c(2),这个小程序快把我折磨死了。现在出来NLINFIT did NOT converge. Returning results from last iteration.
beta =

    0.0271
   -8.1892
按道理,-8.1892不合理。出来的参数应该和我预估的差不多。大家看看,这是怎样回事?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

vs570588

木虫 (正式写手)


dubo(金币+1): 谢谢参与 2011-06-13 19:31:05
引用回帖:
Originally posted by dubo at 2011-05-30 19:43:12:
数据2:
t=[0 2 7 9 19 22 24 26 28 30 32 40];%时间采样点
s=[255.55 246.44 237.28 228.36 136.08 114 99.16 82.33 69.4 56.94 42.31 0];%每时刻浓度观测值
x=[255.55 246.44 237.28 228.36 136.08 114 99.1 ...

你好,我用重新参考别人写的程序,用数值解求参数,程序写的很繁琐,你能帮我改改吗?另外,现在运行不下去,提示说divided by zero.你能给看看,怎样把数据处理就能好些?
S=dsolve(‘Dy=-k1*y*214.63/(y+k2)’,’y(0)= 255.55’)
simplify(S)                                        %微分方程积分,求出来式子相当繁琐


function monodfit2
clear all;
t= [0 2 7 9 19 22 24 26 28 30 32 40]’;
c=[255.55 246.44 237.28 228.36 136.08 114 99.16 82.33 69.4 56.94 42.31 0]’;
[y_row,y_col]=size(c);
beta0=[0.03,0.3];
c0=255.55;
lb=[0 0];ub=[inf inf];
[beta,resnorm,residual,exitflag,output,lambda,jacobian] = ...
    lsqnonlin(@seqfun,beta0,lb,ub,[],t,c,y_col,c0);
ci = nlparci(beta,residual,jacobian);
function y = seqfun(beta,t,c,y_col,c0)      % Objective function
tspan = [0  max(t)];
[tt yy] = ode45(@modeleqs,tspan,c0,[],beta);
for col = 1:y_col
    yc(:,col) = spline(tt,yy(:,col),t);
end
y=[c(:,1)-yc(:,1)];

function dydt = modeleqs(t,y,beta)       % Model equation
dydt=beta(2)*lambertw(1/beta(2)*exp(-1/100*(21463*t*beta(1)-25555-100*beta(2)*log(19)-100* beta(2)*log(269)+200* beta(2)*log(2)+100* beta(2)*log(5))/ beta(2)));
12楼2011-06-02 15:07:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 16 个回答

文俊点点

木虫 (著名写手)


dubo(金币+1): 谢谢参与 2011-05-30 19:02:30
表示看不懂,短程序应该逻辑没有问题,是细节出现错误。
这是你所拥有的时间·····这是你所能改变的生活·········
2楼2011-05-28 17:52:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木虫pursuer

木虫 (正式写手)


dubo(金币+1): 谢谢参与 2011-05-30 19:03:40
只略懂些c++,顶起来,让高手进
努力提高自己,努力再努力
3楼2011-05-28 18:19:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

vs570588

木虫 (正式写手)

高手在哪里,大家看是数据本身的问题吗?
4楼2011-05-28 19:32:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见