高斯模型
关于高斯模型
高斯模型用于拟合峰值,由下式给出:
其中 a 是振幅,b 是质心(位置),c 与峰宽有关,n 是要拟合的峰值数量,1 ≤ n ≤ 8。
在科学和工程的许多领域都会遇到高斯峰值。例如,高斯峰值可以描述线发射频谱和化学浓度测定。
以交互方式拟合高斯模型
通过在 MATLAB® 命令行中输入
curveFitter
打开曲线拟合器。或者,在 App 选项卡上的数学、统计和优化组中,点击曲线拟合器。在曲线拟合器中,选择曲线数据。在曲线拟合器选项卡的数据部分中,点击选择数据。在选择拟合数据对话框中,选择 X 数据和 Y 数据,或仅选择 Y 数据(相对于索引绘图)。
点击拟合类型部分中的箭头以打开库,然后点击回归模型组中的高斯。
您可以在拟合选项窗格中指定以下选项:
将项数指定为范围 [1 8] 内的一个正整数。在结果窗格中查看模型项、系数值和拟合优度统计量。
(可选)在高级选项部分,指定系数起始值和约束边界,或更改算法设置。该 App 根据数据集计算高斯拟合的优化起点。您可以覆盖起点,并在拟合选项窗格中指定您自己的值。
高斯拟合对宽度参数
c1
施加下界为0
的约束。大多数库模型的默认下界为-Inf
,这表示系数无约束。
有关设置的详细信息,请参阅指定拟合选项和优化的起点。
使用 fit 函数拟合高斯模型
此示例说明如何使用 fit
函数对数据进行高斯模型拟合。
高斯库模型是 fit
和 fittype
函数的输入参量。指定模型类型 gauss
后跟项数,例如 'gauss1'
到 'gauss8'
。
拟合一个二项高斯模型
加载一些数据并拟合一个二项高斯模型。
[x,y] = titanium;
f = fit(x.',y.','gauss2')
f = General model Gauss2: f(x) = a1*exp(-((x-b1)/c1)^2) + a2*exp(-((x-b2)/c2)^2) Coefficients (with 95% confidence bounds): a1 = 1.47 (1.426, 1.515) b1 = 897.7 (897, 898.3) c1 = 27.08 (26.08, 28.08) a2 = 0.6994 (0.6821, 0.7167) b2 = 810.8 (790, 831.7) c2 = 592.9 (500.1, 685.7)
plot(f,x,y)
另请参阅
App
函数
fit
|fittype
|fitoptions