最小二乘法擬合多項式

2021-08-21 12:10:43 字數 1214 閱讀 9757

最小二乘法擬合多項式

求解 給定資料點(xi ,yi),用最小二乘法擬合資料的多項式,並求平方誤差。

#include

#include

#include

#include

using

namespace

std;

const

int maxn=1000;

int n,m;

double b[maxn];// σxy

double a[maxn];// 多項式係數

double a[maxn][maxn];//求出 σx^i

double sum_x[maxn];

double x[maxn][maxn];//x[i][j] 儲存的是xj的第i次方

double y[maxn][maxn];//y[i][j] 儲存的是y[j]*x[i];

//求x矩陣

void print_1()

cout

}//求 σxy

for(int i=1;i<=m;i++)

for(int i=0;i<=2*m;i++)

for(int i=0;i<=m;i++)

a[i][m+1]=b[i];

}print_1();//輸出看單個元素,就像列的那個表

}//高斯消元 列主元素消元法以及求a

void xiao_gauss(int cur)//不交換列

else

for(int i=cur+1;i<=m;i++)//除了本行下面的都要減

}xiao_gauss(cur+1);

}}void f_a()

for(int i=0;i<=m;i++)

cout

<<"a"

<"= "

cout

<<"input fitting m times"

>m;

init();

//採用高斯完全消元法

xiao_gauss(0);

f_a();

return

0; }/*

70 1

0.5 1.75

0.6 1.96

0.7 2.19

0.8 2.44

0.9 2.71

1.0 3.00

*/

最小二乘法 多項式

多項式最小二乘法 基於一元二次方程進行推理 方程式是 f x ax 2 bx c 其中點 n x i,y i 表示多個點資訊,擬合乙個二次方程 其中原理為 i 1 n a x i 2 bx i c y i 2 min 對各個係數求導 i 1 n a x i 2 bx i c y i 2 min 對a...

多項式曲線擬合最小二乘法

對給定的試驗資料點 xi,yi i 1,2,n 可以構造m次多項式 資料擬合的最簡單的做法就是使誤差p xi yi的平方和最小 當前任務就是求乙個p x 使得 從幾何意義上講就是尋求給與定點 xi,yi 距離的平方和最小的曲線y p x 函式p x 稱為擬合函式或者是最小二乘解,求擬合函式p x 的...

最小二乘法多項式曲線擬合

最小二乘法多項式曲線擬合,根據給定的m個點,並不要求這條曲線精確地經過這些點,而是曲線y f x 的近似曲線y x 原理部分由個人根據網際網路上的資料進行總結,希望對大家能有用 給定資料點pi xi,yi 其中i 1,2,m。求近似曲線y x 並且使得近似曲線與y f x 的偏差最小。近似曲線在點p...