一元线性数据拟合c语言编程,最小二乘法一阶线性拟合二阶曲线拟合的C语言程序实现…

  • Post author:
  • Post category:其他


用C语言编写的最小二乘法求解程序

一、最小二乘法原理与计算方法

2

(x) a ax ax 012对于m组测量数据,选取

anxn进行n阶拟合,按

照残差平方和最小原则,对各个待定系数求偏导数,使之都等于0,通过数学运算可得到各个系数的

最小二乘的法方程为运算式如下,求解这个线性方程组就可以得出各个系数的值。

m 1 i 1 m

1-235-png_6_0_0_0_0_0_0_892.979_1262.879-893-0-179-893.jpg

xi i 1 m

xn

i

i 1

x

i 1mi 1

m

i

2

x i

n 1x ii 1

m

m

n

xi yi 0i 1

i 1 mm

1-289-png_6_0_0_0_0_0_0_892.979_1262.879-893-0-554-893.jpg

1-236-png_6_0_0_0_0_0_0_892.979_1262.879-893-0-848-893.jpg

n 1

xi 1 xiyi i 1i 1

m m

2n n n xx iiyi

i 1 i 1

m

当n=1时,为1阶拟合,又称直线拟合,即系数矩阵是一个2*2的矩阵,通过线性方程的求解运

算,求得线性回归方程的系数表达式为:

当n=2时,为2阶曲线拟合,所得到的系数矩阵是一个3*3的矩阵【用aij(i,j=1,2,……)的形式表达】,通过线性方程的求解运算,求得线性回归方程的系数表达式为: