jnxh 发表于 2006-8-22 10:55

求助:函数拟合!

main.m
tdata=
ydata=
x0=
=curvefit('Yt',x0,tdata,ydata)

Yt.m
function F = myfun(x,tdata)
F=((2*x(3)/(x(2)-x(1)))*(exp(-x(1)*tdata)-exp(-x(2)*tdata)))/48


这个程序运行总出错,哪位高手可以帮忙看一下啊

[ 本帖最后由 cdwxg 于 2006-8-22 15:19 编辑 ]

dingd 发表于 2006-8-22 12:08

初值给的不对, 公式中有:x(3)/(x(2)-x(1)),x(1)和x(2)都给初值10,会造成分母为0,自然无法计算。做拟合等优化问题,还是1stOpt最好,不用猜初值

结果:
x3                 5005.10308270522
x2                 2.00793803886629
x1                 0.185501959221012

微微 发表于 2006-8-22 15:12

恩,高手阿

happy 发表于 2006-8-23 20:13

dingd是不是1stOpt的业务员阿?怎么到处推销1stOpt

happy 发表于 2006-8-23 20:27

不过话说回来,这个拟合用matlab是能做出来,不过效果不如1stOpt好
页: [1]
查看完整版本: 求助:函数拟合!