多項式擬合

2021-09-09 08:31:47 字數 1385 閱讀 7122

class1.cs-擬合類

using system;

using system.collections.generic;

using system.text;

namespace 最小二乘法擬合多項式

guass[i, j] = sumarr(arrx, i, arry, 1, length);

}return computgauss(guass, n);

}public double sumarr(double arr, int n, int length) //求陣列的元素的n次方的和

return s;

}public double sumarr(double arr1, int n1, double arr2, int n2, int length)

return s;

}public double computgauss(double[,] guass, int n)

}if (k != j)

}if (0 == max)

for (i = j + 1; i < n; i++)

}}//結束for (j=0;j= 0; i--)

x[i] = (guass[i, n] - s) / guass[i, i];

}return x;

}//返回值是函式的係數

//例如:y=a0+a1*x 返回值則為a0 a1

//例如:y=a0+a1*x+a2*x*x 返回值則為a0 a1 a2

}}

progran.cs - 測試類

using system;

using system.collections.generic;

using system.text;

namespace 最小二乘法擬合多項式

; double zleastvalue = ;

//例如:y=a0+a1*x+a2*x*x 返回值則為a0 a1 a2

class1 sb = new class1();

xcoe = sb.multiline(xleastvalue, zleastvalue, 11, 5);

console.writeline("5階多項式因子:");

for(int i = 0;i < xcoe.length; i++)

console.writeline("多項式計算出來的位移值 標準位移值 兩者差值 線性度:");

for (int i = 0; i < xleastvalue.length; i++)

console.readkey(true);}}

}

多項式擬合缺點 多項式擬合

在網上看別人的心得 一 最小二乘法的基本原理 從整體上考慮近似函式同所給資料點 i 0,1,m 誤差 i 0,1,m 的大小,常用的方法有以下三種 一是誤差 i 0,1,m 絕對值的最大值,即誤差 向量的 範數 二是誤差絕對值的和,即誤差向量r的1 範數 三是誤差平方和的算術平方根,即誤差向量r的2...

多項式擬合

多項式擬合 多項式的一般形式 y p x n p x p x p x p 多項式擬合的目的是為了找到一組p0 pn,使得擬合方程盡可能的與實際樣本資料相符合。假設擬合得到的多項式如下 f x p x n p x p x p x p 則擬合函式與真實結果的差方如下 loss y 1 f x 1 2 y...

MATLAB多項式及多項式擬合

多項式均表示為陣列形式,陣列元素為多項式降冪係數 1.polyval函式 求多項式在某一點或某幾個點的值.p 1,1,1 x 2 x 1 x 1,0,1 y polyval p,x 另外求函式在某一點或某幾個點的值可以用函式feval.x 1,0,1 y feval x exp x x 注意用的乘法...