MATLAB Polyfit 関数 - 多項式近似

1.基本形

p = polyfit(x,y,n)

    この関数は、n 次の多項式を使用してデータ点 (x, y) のセットを近似し、多項式の係数を配列 p の形式で出力します。p の係数は降べきで配列され、配列の長さは n です。 +1。

p(x)=p_{1}x^{n}+p_{2}x^{n-1}+...+p_{n}x+p_{n+1}

    近似された多項式係数をプロットしたい場合は、polyval 関数を使用できます。

y1 = polyval(p,x1)

    この関数の機能は、指定された x1 値に対して多項式係数配列 p を通じて対応する y1 値を計算することです。その後、x1 と y1 を使用して多項式曲線を簡単に描くことができます。x1 は通常、linspace 関数で定義されたより細かい引数値です。

Polyfit 関数のより完全な概要については、「多項式曲線近似」を参照してください。

2. 例

    バルブポートを流れる流量面積 x と質量流量 y の 10 組のデータを 2 次多項式で近似し、データ点と 2 次多項式をグラフに描画します。

x = [0.9181,1.1006,1.2803,1.4574,1.6317,1.8033,1.9721,2.1382,2.3016,2.4623];
y = [0.1108,0.1306,0.1529,0.1805,0.1972,0.2181,0.2412,0.2601,0.2864,0.3195];
p = polyfit(x,y,2);
xx = linspace(0.8,3);
yy = polyval(p,xx);
figure
plot(x,y,'ko',xx,yy,'LineWidth',2,'MarkerFaceColor','k');

 実行後、配列 p の値は [0.0155, 0.0784, 0.0271] となり、近似された 2 次多項式が次のようになることを示します。

p(x)=0.0155x^{2}+0.0784x+0.0271

おすすめ

転載: blog.csdn.net/Ronko_G/article/details/130381406