diamondyang 发表于 2009-3-19 19:36

请教曲线拟合问题!

function aaa
xdata=[-2.018;-1.818;-1.236;-1.018;-0.855;-0.018;0.291;0.691];
ydata=;
x=lsqcurvefit(@myfun,,xdata,ydata)

function F=myfun(x,xdata)
F=x(1)/(1+(x(1)/1.139-1)*exp(-x(2)*(xdata+0.855)));

我想要拟合公式y=a/(1+(a/1.139-1)*exp(-b*(x+0.855))),并且求出a和b的值。上面是我编的程序,运行时出现如下错误:

??? Error using ==> optim\private\lsqncommon
Function value and YDATA sizes are incommensurate.
Error in ==> lsqcurvefit at 182
= ...
Error in ==> aaa at 4
x=lsqcurvefit(@myfun,,xdata,ydata)
请大家帮忙解决!谢谢了!

sigma665 发表于 2009-3-20 09:18

曲线拟合,可以直接调用工具箱

ydlcsu 发表于 2009-3-20 09:51

function F=myfun(x,xdata)
F=x(1)./(1+(x(1)/1.139-1)*exp(-x(2)*(xdata+0.855)));%%注意,分母部分是矩阵形式,要使用./

diamondyang 发表于 2009-3-21 16:20

回复 板凳 ydlcsu 的帖子

谢谢,已调好
页: [1]
查看完整版本: 请教曲线拟合问题!