最小点多项式曲线


2

我试图求解图(A)中x和y分量达到的最小值。我知道您可以使用IgorPro执行此操作,但我想知道如何使用Excel解决它。

情节A.

该图使用以下数据点构建:

110 0.177
115 0.093
120 0.033
125 0.006
130 0.007
135 0.04
140 0.101
145 0.186
150 0.272

如您所见,有一个最小的x和y数据点。但是,我想解决多项式拟合达到的最小点。


您的示例是二次函数。那么只需使用普通数学(二次方程式)来解决它?
Seth

Answers:


2

给定其形式的方程的二次趋势线的最小值的坐标y(x)=a*x^2+b*x+c 计算为: x=-b/2/ay=c-b^2/4/a

提供的数据点的图表看起来像

在此输入图像描述

并且图上的趋势函数方程式Excel为:

y=0.0005*x^2-0.1383*x+8.8197

,所以看来a=0.0005b=-0.1383c=8.8197。让我们找到最小值。计算结果为:

x=138.3, y = -0.743745000. 

等等,什么?但趋势线明显看起来更高,所有积极!发生了什么?!让我们画一个这个函数的图:

在此输入图像描述

它向下移动,完全没有数据点!并且最小坐标是正确的,但是对于这个移位函数,不是我们需要的。

这里问题的根源隐藏在细节中。图中显示的等式具有四舍五入的系数。舍入到小数点后四位。

"Four decimal places would be enough for everyone (c)", right?

显然,不是,尤其是在x>1谈论x>100s时

小数位数为9,系数为:

a=0.000542468, b=-0.138278225, c=8.819723377,

这些情节看起来还不错:

在此输入图像描述

和最小的计算坐标看起来也合理:

x = 127.4528866, y = .007743909.

好多了!

但是我们如何能够将这个更准确的最小化?

这里有一个简单的方法,基于矩阵的功能MINVERSE()MMULT()

假设XYB7:B15,我们填写3x4矩阵E7:H9

在此输入图像描述

从三个单元格开始 E7=COUNT(B7:B15)F7=SUM(B7:B15)H7=SUM(C7:C15)

每个公式中的下一个五个单元, G7G8G9H8H9,需要被输入作为 阵列式(类型Ctrl+ Shift+ Enter ,而不是仅仅Enter):

G7

=SUM(B7:B15^2)

G8

=SUM(B7:B15^3) 

G9

=SUM(B7:B15^4)

H8

=SUM(B7:B15*C7:C15)

H9

=SUM(B7:B15^2*C7:C15)

Block 在以下位置E8:F9完成对称3x3矩阵E7:G9

E8

=F7

,复制E8填写E8:F9

选择F11:F13并输入以下数组公式

= MMULT(MINVERSE(E7:G9),H7:H9)

在此输入图像描述

它可以计算出所需的更准确的值

c= 8.81972337662,
b=-0.13827822511,
a= 0.00054246753.

作为旁注:最好先将原始m<=X<=M范围转换为单位间隔0<=x<=1,找到最小坐标,然后转换xX

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.