自定义线性拟合
关于自定义线性模型
在曲线拟合器应用程序中,您可以使用自定义公式适合定义你自己的线性或非线性方程。自定义方程拟合使用非线性最小二乘拟合程序。
中定义一个自定义线性方程自定义公式,但非线性拟合效率较低,通常比线性最小二乘拟合慢。如果需要自定义方程的线性最小二乘拟合,请选择线性拟合代替。线性模型是(可能是非线性的)项的线性组合。它们由参数为线性的方程定义。
提示
如果需要自定义方程的线性最小二乘拟合,请选择线性拟合.如果你不知道你的方程是否可以表示为一组线性函数,那么选择自定义公式代替。看到交互式选择自定义方程拟合.
交互式选择线性拟合自定义拟合
在Curve Fitter应用中,选择一些曲线数据。在曲线更健康选项卡,在数据部分中,点击选择数据.在“选择拟合数据”对话框中,选择X数据而且Y数据值。
曲线拟合器创建一个默认多项式拟合。
更改模型类型。在曲线更健康选项卡,在适合类型部分,单击箭头打开图库。在图库中,单击线性拟合在自定义组。
在合适的选项窗格中,单击时将显示示例方程线性拟合.
你可以改变
x
而且y
到任何有效变量名。下面的方框显示了示例方程。改变系数而且条款条目来更改示例项并定义自己的方程。
有关示例,请参见适合自定义线性勒让德多项式在曲线拟合应用程序.
在命令行中选择线性拟合
要使用线性拟合算法,请指定模型项的单元格数组或字符串数组作为适合
或fittype
功能。不要在这些项的表达式中包含系数。如果有常数项,则使用'1'作为数组中对应的表达式。
指定如下形式的线性模型:
Coeff1 * term1 + coeff2 * term2 + coeff3 * term3 +...
term1
,term2
,等等,使用单元格数组或字符串数组,其中每个没有系数的项被指定为一个单独的元素。例如:线性modelterms = {“term1”,“term2”,“term3”,...}
确定需要输入的线性模型项
fittype
.例如,模型A *log(x) + b*x + c
一个
,b
,c
.它有三项日志(x)
,x
,1
(因为c = c * 1
).要指定这个模型,可以使用以下术语:线性模型术语= {'log(x)','x','1'}
.的单元格数组或线性模型项的字符串数组作为输入
fittype
功能:线性匹配类型=匹配类型({日志(x)的,“x”,' 1 '})
线性模型:linearfittype(a,b,c,x) = a*log(x) + b*x + c
加载一些数据并使用
fittype
的输入适合
函数。负载人口普查F = fit(cdate,pop,linearfittype)
f =线性模型:f(x) = a*log(x) + b*x + c系数(95%置信限):a = -4.663e+04 (-4.973e+04, -4.352e+04) b = 25.9 (24.26, 27.55) c = 3.029e+05 (2.826e+05, 3.232 2e+05)
适合
功能:F = fit(x,z,{日志(x)的,“x”,' 1 '})
绘制拟合和数据。
情节(f cdate流行)
有关示例,请参见在命令行上拟合自定义线性勒让德多项式.
拟合自定义线性勒让德多项式
适合自定义线性勒让德多项式在曲线拟合应用程序
这个例子展示了如何使用几个自定义线性方程来拟合数据。数据是根据核反应生成的12C (e, e 'α)8是。方程使用勒让德多项式项的和。
考虑一个实验,124兆电子从12C核。在随后的反应中,α粒子被释放出来并产生剩余的原子核8是。通过分析阿尔法粒子发射的数量作为角度的函数,你可以推导出关于原子核动力学的某些信息12C.反应运动学如下所示。
数据是通过将固态探测器放置在Θ的值来收集的α范围从10o到240年o在10o增量。
有时用勒让德多项式将变量表示为角度的函数是有用的
在哪里Pn(x)是阶的勒让德多项式n,x因为(Θα),一个n是拟合系数。有关生成勒让德多项式的信息,请参见勒让德
函数。
对于α -发射数据,可以通过调用理论模型直接将系数与核动力学联系起来。此外,理论模型引入了上述无限和的约束条件。特别地,通过考虑反应的角动量,仅使用偶数项的四次勒让德多项式可以有效地描述数据。
你可以用Rodrigues公式生成勒让德多项式:
到四次的勒让德多项式
n |
Pn(x) |
---|---|
0 |
1 |
1 |
x |
2 |
(1/2) (3x2- 1) |
3. |
(1/2) (5x3.- 3x) |
4 |
(1/8) (35x4- 30x2+ 3) |
这个例子展示了如何使用只有偶数项的四次勒让德多项式拟合数据:
加载12C发射数据。
负载carbon12alpha
工作区现在包含两个新变量:
角
角度向量(以弧度为单位)的范围是从10o到240年o在10o增量。计数
是一个矢量的原始粒子计数对应的发射角度角
.
打开曲线拟合器应用程序。
curveFitter
在“曲线拟合器”应用程序中曲线更健康选项卡,在数据部分中,点击选择数据.在“选择拟合数据”对话框中,选择
角
而且计数
随着X数据而且Y数据值,分别创建一个适合这两个变量的默认多项式。将拟合类型更改为默认自定义线性拟合。在曲线更健康选项卡,在适合类型部分,单击箭头打开图库。在图库中,单击线性拟合在自定义组。
使用线性拟合而不是自定义公式因为勒让德多项式只依赖于预测变量和常数。您将为模型指定的方程是y1(x)(即本程序开始时给出的方程)。因为
角
为弧度,勒让德项的辐角由cos(Θα).在合适的选项窗格,改变方程项。
改变系数名字
a2
,a4
,a0
.改变条款值
a2
致以下:(1/2) * (3 * cos (x) ^ 2 - 1)
当你编辑术语时,曲线拟合器应用程序会更新拟合。
改变条款值
a4
致以下:(1/8) * (35 * cos (x) ^ 4-30 * cos (x) ^ 2 + 3)
拟合显示在曲线拟合应用程序。
在拟合表窗格中,双击适合的名字值并将其更改为
Leg4Even
.显示残差。在曲线更健康选项卡,在可视化部分中,点击残差图.
拟合似乎很好地遵循了数据的趋势,而残差似乎是随机分布的,不表现出任何系统行为。
的数值拟合结果结果窗格。看看括号中的每个系数值及其置信范围。95%置信限表示与一个0(x),一个4(x)是相当准确的,但是一个2(x)系数具有较大的不确定性。
为了证实α -发射数据最好由只有偶数项的四次勒让德多项式描述的理论论点,接下来使用偶数项和奇数项对数据进行拟合:
首先,复制勒让德多项式进行拟合修改。在曲线更健康选项卡,在文件部分中,点击重复的.的新选项卡中显示复制的拟合适合窗格。
在拟合表窗格,重命名新的适合
Leg4EvenOdd
.在合适的选项窗格,改变方程项。
编辑下列术语以拟合由所给出的模型y2(x):
点击最后的+按钮两次,添加奇数勒让德项。
将新的系数名称更改为
a1
而且a3
.改变条款值
a1
致以下:cos (x)
改变条款值
a3
致以下:(1/2) * (5 * cos (x) ^ 3 - 3 * cos (x))
观察在曲线拟合器应用程序中绘制的新拟合,并检查在结果窗格。
注意奇数勒让德系数(
a1
而且a3
)可能会被删除,以简化拟合,因为它们的值很小,而且它们的置信边界包含零。这些结果表明,奇勒让德项对拟合的贡献不显著,偶数勒让德项与之前的拟合基本没有变化。这就证实了最初的模型选择在Leg4Even
合身是最好的。并排比较。单击位于合适图形选项卡最右侧的Document Actions箭头。选择
瓷砖都
选项并指定1 × 2布局。控件,可以只显示图形合适的选项,结果,拟合表窗格。
在命令行上拟合自定义线性勒让德多项式
在你在Curve Fitter应用程序中创建的命令行中适合相同的模型。
要使用线性拟合算法,请指定模型项的单元格数组或字符串数组作为
fittype
函数。使用相同的条款你在曲线拟合器应用程序中输入Leg4Even
拟合,并且不指定任何系数。linear = fittype({”(1/2)* (3 * cos (x) ^ 2 - 1)”,...”(1/8)* (35 * cos (x) ^ 4-30 * cos (x) ^ 2 + 3)的,' 1 '})
linearft =线性模型:linearft (a, b, c, x) = a * ((1/2) * (3 * cos (x) ^ 2 - 1))…+ b*(1/8)*(35*cos(x)^4-30*cos(x)^2+3)) + c
加载
角
而且计数
工作区中的变量。负载carbon12alpha
使用
fittype
的输入适合
函数,并指定角
而且计数
工作区中的变量。F =拟合(角度,计数,线性度)
线性模型:f = f (x) = a * ((1/2) * (3 * cos (x) ^ 2 - 1))…+ b*((1/8)*(35*cos(x)^4-30*cos(x)^2+3)) + c系数(95%置信限):a = 23.86 (4.436, 43.29) b = 201.9 (180.2, 223.6) c = 102.9 (93.21, 112.5)
绘制拟合和数据。
情节(f,角,计算)
有关线性模型术语的详细信息,请参见fittype
函数。