演習課題提出


TI01020  武田 渉

補間法とは
n+1個の分点x0,x1,...,xnに対する関数値yk(k=0,1,...,n)が与えられたとき、これらの点以外のx,(x0 < x < xn)の値に対するy(=F(x))の値を求める算法である。
[練習問題]
n=1
y0+y1(x-x0)/(x1-x0)
n=2
y0+y1(x-x0)(x1-x0)/(x1-x0)+y2(x-x0)/(x2-x0)*(x-x1)/(x2-x1)
n=3
y0+y1(x-x0)(x1-x0)/(x1-x0)+y2(x-x0)/(x2-x0)*(x-x1)/(x2-x1)+y3(x-x0)/(x3-x0)*(x-x1)(x3-x1)*(x-x2)/(x3-x2)

この式に
(x0,y0)=(2,3)
(x1,y1)=(1,2)
(x2,y2)=(3,1)
(x3,y3)=(4,3)
を代入すると
n=1
-2x+7
n=2
x^2-5x+7
n=3
(x^3-6x^2+7x)/2+7
になる。これがこのグラフである。

[練習問題]
 x=0°,10°,20°,30°,...,90°のsin(x)の値が与えられたときのLagrangeの係数を求めるプログラムを完成させた。sin45°の値を補間。
ソースコード
[実行結果]
[45 deg:0.78540 rad Pn:0.70711 True:0.70711]

[考察]
適当な数の点が与えられた時、その点を全て通る関数は色々考えられる。 補間法の目的は全ての点を通る滑らかで比較的単純な関数を定めることであると考えられる。
ラグランジュの補間法は、与えられたn+1個の点より、n次の関数(曲線)を推定し、与えられていないその曲線上の点を推定する方法である。