数学建模社区-数学中国

标题: 拟合问题 帮帮忙 [打印本页]

作者: bmagic    时间: 2014-11-3 23:07
标题: 拟合问题 帮帮忙
如何用matlab对指定的一个公式进行曲线拟合?
x=[2008 2009 2010 2011 2012 2013 ];
y=[203.03 203.21 203.81 204.14 204.53 204.92];
方程式y=a*exp(b*x+c*x^2)
我用了cftool的自定义方程来做,拟合的结果老是一条直线,求大神们帮忙


作者: haoyongle    时间: 2014-11-3 23:45
选取不同才初值条件试试

作者: madio    时间: 2014-11-4 08:22
首先一个,就是你的x的值太大了,放到指数函数的幂次中肯定超过一般机器的范围了,我把它改为
x=[1 2 3 4 5 6]了,另外就是你的这些数本身就近似一条直线,所以画出来的图也是这个效果,但是这只是一个指数函数的一小部分的图,和直线相近也是正常的,毕竟任何函数在小的邻域内都可以用直线近似的,下面是我的拟合结果,效果还是不错的,你可以看看

General model:
     f(x) = a*exp(b*x+c*x^2)
Coefficients (with 95% confidence bounds):
       a =       202.7  (202.2, 203.1)
       b =    0.001743  (0.0003527, 0.003133)
       c =   1.574e-05  (-0.0001785, 0.00021)

Goodness of fit:
  SSE: 0.01735
  R-square: 0.9936
  Adjusted R-square: 0.9894
  RMSE: 0.07605





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5