(C )曲線擬合的最小二乘法

2021-06-02 22:34:19 字數 1331 閱讀 6195

using system;

using system.collections.generic;

using system.linq;

using system.text;

namespace 數值分析實驗報告

#region 曲線擬合的最小二乘法

private static void imput()

console.writeline("請輸入實驗資料的x值:");

string x = console.readline().split(',');

console.writeline("請輸入實驗資料的y值:");

string y = console.readline().split(',');

if (x.length != y.length)

console.writeline("請輸入實驗資料各個點的權函式值:");

string w = console.readline().split(',');

if (x.length != w.length)

console.writeline("請輸入擬合曲線的最高項次數:");

int n = int.parse(console.readline());

console.writeline("實驗資料的法方程為:");

double[,] g = new double[n + 1, n + 2];

for (int i = 0; i < n + 1; i++)

}else

}x_num += n * double.parse(w[x]);

if (j == n + 1)

y_num += p * double.parse(w[x]) * double.parse(y[x]);}}

}if (j == n + 1)

else}}

for (int i = 0; i < n + 1; i++)

console.writeline();

}console.readline();

}#endregion

private static void wucha()

;double f = ;

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

處的值與真實值的誤差為:\n",x[i]);

console.writeline(wucha[i]);

}console.readline();}}

}

這個程式只是實現了根據已知點來得到方程組的矩陣,解方程組的程式實現還沒有實現,不過可以參考上篇高斯列主元法解方程組的程式!

最小二乘法曲線擬合

設有如下實驗資料x1 2345 6789 1011 1213 141516y 46.4 88.8 9.22 9.59.7 9.86 1010.2 10.32 10.42 10.5 10.55 10.58 10.60 試用最小二乘法多次 1到5次 多項式曲線擬合以上資料。import numpy as...

最小二乘法曲線擬合

在實際工程中,我們常會遇到這種問題 已知一組點的橫縱座標,需要繪製出一條盡可能逼近這些點的曲線 或直線 以進行進一步進行加工或者分析兩個變數之間的相互關係。而獲取這個曲線方程的過程就是曲線擬合。首先,我們從曲線擬合的最簡單情況 直線擬合來引入問題。如果待擬合點集近似排列在一條直線上時,我們可以設直線...

最小二乘法的曲線擬合

最小二乘法的曲線擬合 bool cdatadistillview leastdoublemultiplication long px,long py,long m,long n,double result,double warp for i 0 i m i z 0 b 0 1 d1 n p 0 c ...