如何使用cftool在Matlab中拟合指数增长?

时间:2016-03-30 01:32:49

标签: matlab curve-fitting

我正在尝试使用Matlab将我的数据拟合成指数曲线,但我的拟合非常糟糕。我是一个非常业余的程序员,所以我真的不知道如何使用cftool和适合的选项(我试过)。如何更改值以更好地适应?

见下面链接中的图片

Results of the fit: value a should be negative

1 个答案:

答案 0 :(得分:1)

曲线拟合工具功能强大,但有时需要一些帮助。在实践中,cftool所做的是对变量进行初始猜测,然后尝试通过每次稍微改变它们来迭代地改进这些值,然后重新评估拟合的好坏程度。一旦参数的微小变化只会使拟合变差,它就会返回结果。对于更复杂的方程(例如指数拟合),这有时可以收敛到局部最小值而不是全局最小值,这是您所看到的。

通过设置所需的公式(在您的情况下,如您所做的那样指数拟合)然后单击Fit Options并在其中播放参数来解决此问题。大多数默认值都适用于大多数意图和目的,但您应该使用变量的Starting值以及这些变量可以采用的下限和上限。这在“适合选项”对话框的底部完成。正如您所指出的,您知道b在您的情况下是否定的,因此您可以将b StartPoint设置为负值,并将上限设置为0.您也可以在a起点和所有其他上下界做出一些明智的猜测。

enter image description here