数值分析设计曲线拟合的最小二乘法..doc
文本预览下载声明
曲线拟合的最小二乘法
一、目的和意义
在科学实验的统计方法研究中,往往要从一组实验数据中,寻找自变量x与因变量y之间的函数关系。由于观测数据往往不准确,因此不要求经过所有点,而只要求在给定点上误差而只要求所在所有给定点上的误差 按某种标准最小。若记,就是要求向量的范数最小。如果用最大范数,计算上困难较大,通常采用欧式范数作为误差度量的标准。的函数类型往往与实验的物理背景以及数据的实际分布有关,它一般含有某些待定参数。如果是所有待定参数的线性函数,那么相应的问题称为线性最小二乘问题,否则称为非线性最小二乘问题。最小二乘法还是实验数据参数估计的重要工具。这是因为这种方法比其他方法更容易理解,即使在其他方法失效的情况下,用最小二乘法还能提供解答,而且从统计学的观点分析,用该方法求得各项估计具有最优统计特征,因此这一方法也是系统识别的重要基础。线性最小二乘问题可以借助多元微分学知识通过求解法方程组得到解答。
用最小二乘法求拟合曲线时,首先要确定的形式。这不单纯是数学问题,还与所研究问题的运动规律以及所得观测数据有关;通常要从问题的运动规律以及给定数据描图,确定的形式,并通过实际计算选出较好的结果。为了使问题的提法更有一般性,通常把最小二乘法中的都考虑为加权平方和
这里是上的加权函数,它表示不同点处的数据比重不同。
二、计算方法
分) 0 5 10 15 20 25 30 35 40 45 50 55 0 1.27 2.16 2.86 3.44 3.87 4.15 4.37 4.51 4.58 4.02 4.64 在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间的拟合曲线。
本题要求我们用对曲线进行拟合,这里故
,,
,,
,
,,
由于, 可以利用此式算出拟合曲线的,即
所以求得,,, ,误差为
,而均方误差为
下图可见实际测出值与拟合值的差别,下表可见拟合出的每一点的误差以及均方误差。
t y 拟合值 误差 误差平方 0 0 0 0 0 5 1.27 1.20215 -0.06785 0.004603623 10 2.16 2.1662 0.0062 3.844E-05 15 2.86 2.91855 0.05855 0.003428103 20 3.44 3.4856 0.0456 0 25 3.87 3.89375 0.02375 0.000564063 30 4.15 4.1694 0.0194 0 35 4.37 4.33895 -0.03105 0.000964102 40 4.51 4.4288 -0.0812 0 45 4.58 4.46535 -0.11465 0.013144622 50 4.02 4.475 0.455 0.207025 55 4.64 4.48415 -0.15585 0.024289222 均方误差 0 三、结构程序设计
在本题使用Visual Studio c# .NET编译程序。
//在窗体的Load事件里调用InitialDeal和Deal函数来处理数据。
private void ResultReport_Load(object sender, System.EventArgs e)
{
this.InitialDeal();
this.Deal();
}
//初始化各个变量。
private void InitialDeal()
{
int i = 0;
while(tString.Length 0)
{
t[i++] = Convert.ToDouble(tString.Substring(0,tString.IndexOf(,))) * tUnit;
tString = tString.Remove(0,tString.IndexOf(,) + 1);
}
num = i;
i = 0;
while(yString.Length 0)
{
y[i++] = Convert.ToDouble(yString.Substring(0,yString.IndexOf(,))) * yUnit;
yString = yString.Remove(0,yString.IndexOf(,) + 1);
}
i = 0;
while(i num)
{
a11 += y[i]*y[i];
i++;
}
this.labelA11.Text = a11.ToString(#.00E0
显示全部