主要内容

自定义线性拟合

关于自定义线性模型

在曲线拟合器应用程序中,您可以使用自定义公式适合定义你自己的线性或非线性方程。自定义方程拟合使用非线性最小二乘拟合程序。

中定义一个自定义线性方程自定义公式,但非线性拟合效率较低,通常比线性最小二乘拟合慢。如果需要自定义方程的线性最小二乘拟合,请选择线性拟合代替。线性模型是(可能是非线性的)项的线性组合。它们由参数为线性的方程定义。

提示

如果需要自定义方程的线性最小二乘拟合,请选择线性拟合.如果你不知道你的方程是否可以表示为一组线性函数,那么选择自定义公式代替。看到交互式选择自定义方程拟合

交互式选择线性拟合自定义拟合

  1. 在Curve Fitter应用中,选择一些曲线数据。在曲线更健康选项卡,在数据部分中,点击选择数据.在“选择拟合数据”对话框中,选择X数据而且Y数据值。

    曲线拟合器创建一个默认多项式拟合。

  2. 更改模型类型。在曲线更健康选项卡,在适合类型部分,单击箭头打开图库。在图库中,单击线性拟合自定义组。

    合适的选项窗格中,单击时将显示示例方程线性拟合

    默认线性拟合方程

  3. 你可以改变x而且y到任何有效变量名。

  4. 下面的方框显示了示例方程。改变系数而且条款条目来更改示例项并定义自己的方程。

有关示例,请参见适合自定义线性勒让德多项式在曲线拟合应用程序

在命令行中选择线性拟合

要使用线性拟合算法,请指定模型项的单元格数组或字符串数组作为适合fittype功能。不要在这些项的表达式中包含系数。如果有常数项,则使用'1'作为数组中对应的表达式。

指定如下形式的线性模型:

Coeff1 * term1 + coeff2 * term2 + coeff3 * term3 +...
其中没有系数term1term2,等等,使用单元格数组或字符串数组,其中每个没有系数的项被指定为一个单独的元素。例如:
线性modelterms = {“term1”“term2”“term3”...}

  1. 确定需要输入的线性模型项fittype.例如,模型

    A *log(x) + b*x + c
    线性的一个b,c.它有三项日志(x)x,1(因为c = c * 1).要指定这个模型,可以使用以下术语:线性模型术语= {'log(x)','x','1'}

  2. 的单元格数组或线性模型项的字符串数组作为输入fittype功能:

    线性匹配类型=匹配类型({日志(x)的“x”' 1 '})
    线性模型:linearfittype(a,b,c,x) = a*log(x) + b*x + c

  3. 加载一些数据并使用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 '})

  4. 绘制拟合和数据。

    情节(f cdate流行)

有关示例,请参见在命令行上拟合自定义线性勒让德多项式

拟合自定义线性勒让德多项式

适合自定义线性勒让德多项式在曲线拟合应用程序

这个例子展示了如何使用几个自定义线性方程来拟合数据。数据是根据核反应生成的12C (e, e 'α)8是。方程使用勒让德多项式项的和。

考虑一个实验,124兆电子从12C核。在随后的反应中,α粒子被释放出来并产生剩余的原子核8是。通过分析阿尔法粒子发射的数量作为角度的函数,你可以推导出关于原子核动力学的某些信息12C.反应运动学如下所示。

数据是通过将固态探测器放置在Θ的值来收集的α范围从10o到240年o在10o增量。

有时用勒让德多项式将变量表示为角度的函数是有用的

y x n 0 一个 n P n x

在哪里Pnx)是阶的勒让德多项式nx因为(Θα),一个n是拟合系数。有关生成勒让德多项式的信息,请参见勒让德函数。

对于α -发射数据,可以通过调用理论模型直接将系数与核动力学联系起来。此外,理论模型引入了上述无限和的约束条件。特别地,通过考虑反应的角动量,仅使用偶数项的四次勒让德多项式可以有效地描述数据。

你可以用Rodrigues公式生成勒让德多项式:

P n x 1 2 n n d d x n x 2 1 n

到四次的勒让德多项式

n

Pn(x)

0

1

1

x

2

(1/2) (3x2- 1)

3.

(1/2) (5x3.- 3x

4

(1/8) (35x4- 30x2+ 3)

这个例子展示了如何使用只有偶数项的四次勒让德多项式拟合数据:

y 1 x 一个 0 + 一个 2 1 2 3. x 2 1 + 一个 4 1 8 35 x 4 30. x 2 + 3.

  1. 加载12C发射数据。

    负载carbon12alpha

    工作区现在包含两个新变量:

    • 角度向量(以弧度为单位)的范围是从10o到240年o在10o增量。

    • 计数是一个矢量的原始粒子计数对应的发射角度

  2. 打开曲线拟合器应用程序。

    curveFitter

  3. 在“曲线拟合器”应用程序中曲线更健康选项卡,在数据部分中,点击选择数据.在“选择拟合数据”对话框中,选择而且计数随着X数据而且Y数据值,分别创建一个适合这两个变量的默认多项式。

  4. 将拟合类型更改为默认自定义线性拟合。在曲线更健康选项卡,在适合类型部分,单击箭头打开图库。在图库中,单击线性拟合自定义组。

    线性拟合的默认拟合选项

    使用线性拟合而不是自定义公式因为勒让德多项式只依赖于预测变量和常数。您将为模型指定的方程是y1x)(即本程序开始时给出的方程)。因为为弧度,勒让德项的辐角由cos(Θα).

  5. 合适的选项窗格,改变方程项。

    1. 改变系数名字a2a4,a0

    2. 改变条款a2致以下:

      (1/2) * (3 * cos (x) ^ 2 - 1)

      当你编辑术语时,曲线拟合器应用程序会更新拟合。

    3. 改变条款a4致以下:

      (1/8) * (35 * cos (x) ^ 4-30 * cos (x) ^ 2 + 3)

      线性拟合的修正系数和术语

      拟合显示在曲线拟合应用程序。

  6. 拟合表窗格中,双击适合的名字值并将其更改为Leg4Even

    曲线拟合显示Leg4Even适合

  7. 显示残差。在曲线更健康选项卡,在可视化部分中,点击残差图

    Leg4Even拟合和残差图

    拟合似乎很好地遵循了数据的趋势,而残差似乎是随机分布的,不表现出任何系统行为。

  8. 的数值拟合结果结果窗格。看看括号中的每个系数值及其置信范围。95%置信限表示与一个0x),一个4x)是相当准确的,但是一个2x)系数具有较大的不确定性。

    结果窗格显示Leg4Even拟合的系数值和拟合优度统计数据

  9. 为了证实α -发射数据最好由只有偶数项的四次勒让德多项式描述的理论论点,接下来使用偶数项和奇数项对数据进行拟合:

    y 2 x y 1 x + 一个 1 x + 一个 3. 1 2 5 x 3. 3. x

    首先,复制勒让德多项式进行拟合修改。在曲线更健康选项卡,在文件部分中,点击重复的.的新选项卡中显示复制的拟合适合窗格。

  10. 拟合表窗格,重命名新的适合Leg4EvenOdd

  11. 合适的选项窗格,改变方程项。

    编辑下列术语以拟合由所给出的模型y2x):

    1. 点击最后的+按钮两次,添加奇数勒让德项。

    2. 将新的系数名称更改为a1而且a3

    3. 改变条款a1致以下:

      cos (x)

    4. 改变条款a3致以下:

      (1/2) * (5 * cos (x) ^ 3 - 3 * cos (x))

      修改了Leg4EvenOdd拟合的系数和术语

  12. 观察在曲线拟合器应用程序中绘制的新拟合,并检查在结果窗格。

    结果窗格显示Leg4EvenOdd拟合的系数值和拟合优度统计信息

    注意奇数勒让德系数(a1而且a3)可能会被删除,以简化拟合,因为它们的值很小,而且它们的置信边界包含零。这些结果表明,奇勒让德项对拟合的贡献不显著,偶数勒让德项与之前的拟合基本没有变化。这就证实了最初的模型选择在Leg4Even合身是最好的。

  13. 并排比较。单击位于合适图形选项卡最右侧的Document Actions箭头。选择瓷砖都选项并指定1 × 2布局。

    控件,可以只显示图形合适的选项结果,拟合表窗格。

    在曲线拟合器应用程序中,这两个曲线并排拟合

在命令行上拟合自定义线性勒让德多项式

在你在Curve Fitter应用程序中创建的命令行中适合相同的模型。

  1. 要使用线性拟合算法,请指定模型项的单元格数组或字符串数组作为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

  2. 加载而且计数工作区中的变量。

    负载carbon12alpha

  3. 使用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)

  4. 绘制拟合和数据。

    情节(f,角,计算)

有关线性模型术语的详细信息,请参见fittype函数。

Baidu
map