我第一次使用Matlab进行数据拟合,我无法使其适合我的数据。我有几百个测量值,我从0-1
标准化(参见链接图像)。
然后我想用修改后的ERF拟合数据,即:0.5 + {0.5*[erf(x/(2*(t*d)^(1/2)))]}
。我想推断t
的值,因此我甚至尝试将值赋给d
(无论如何都是已知的常量)并将初始0.5
替换为未知值的常量发现:a + {0.5*[erf(x/(2*(t*6E-20)^(1/2)))]}
。我也尝试过使用ERFC而不是ERF。
然而,我总是得到一条非常陡峭的拟合曲线,与我的数据不符。
我知道,给定一个固定的d
,我应该从Matlab得到t
左右3-7
的值,因为我可以在Excel中很好地拟合数据(以定性方式,即:用眼睛)给定的函数和t
的{{1}}的值。
我应该提到excel中的拟合是通过找到拐点并使用稍微不同的等式来模拟拐点上方和下方的数据来完成的。我也在Matlab中尝试过这种方法,但仍然无法使其工作。
由于某种原因,来自Matlab的拟合总是返回与3-7
相同的值作为插入的起始点,无论我使用何种方法,我总是得到相同的陡峭曲线。我对t
的限制为t
。
我做错了什么?
谢谢!
朱塞佩