»нтерпол€ционный многочлен Ћагранжа

ѕусть известны значени€ функции в точках xi ; i = 0,1,Е, n; x0< x1 <Е< xn. »нтерполируем полиномами. “ребуетс€ построить многочлен

ln(x) = a0 + a1 x +Е+ an xn

так, чтобы

f(xi) = l(xi);i = 0,1,Е, n.

ѕредставим ln(x) в виде линейной комбинации таких многочленов L j(x) n -й степени, что

,

где xi ; i = 0,1,Е, n - заданные узлы, f(xi) значени€ интерполируемой функции в узлах (i = 0,1,Е, n). ѕо определению следует, что числа x0, x1,Е,xj-1, xj+1,Е, xn корни многочлена L j(x). ѕоскольку степень многочлена L j(x) равна n, то он имеет вид:

L j(x) = A(x - x0) (x - x1)Е (x - xj-1) (x - xj+1(x - xn).

»з услови€ L j(xj) = 1 определ€ем A:

A =1/(xj - x0) (xj - x1)Е (xj - xj-1) (xj - xj+1)Е (xj - xn)

“аким образом,

.†††††††††††††††††††††††††††† (2.1)

т.е.

»нтерпол€ционный многочлен ln(x), записываетс€ в виде

†††††††††††††††††††††††††††††††††††††††††††††††††††††† (2.2)

и называетс€ интерпол€ционным многочленом Ћагранжа. ќбознача€ через , его можно представить в виде:

¬ычисление многочлена Ћагранжа упрощаетс€, если его узлы равноотсто€т друг от друга на рассто€нии h. ¬ этом случае они образуют арифметическую прогрессию: xi = x0 +ih; i = 0,1,Е, n. ѕусть x = x0 +dh. ѕодставл€€ в (2.1) вместо x и xi их выражени€ через x0 , i, h, d получаем.

†††††††††††††††††††††††††† (2.3)

 

јлгоритм интерпол€ции функции многочленом Ћагранжа.

¬вод: ”злы интерпол€ции X[i], Y[i]' i = 0,1,Е, n.

¬ывод: ¬ычислить l:= f(х).

l:= 0; с:= 1;

÷икл по j:= 0 то n выполнить

÷икл по i:= 0 то n выполнить

††††††† если j<>i, то c:= c*(x-Z[i])/(X[j]-X[i])

конец цикла по i;

l:= l +Y[j]*c;

конец цикла по j;

конец.

ѕример. ѕо таблице значений функции вычислить f(10)

x

2

5

7

8

12

f(x)

12

33

-12

2

20

 

 

xj

x - xj

„ислитель Ci

«наменатель Di

Lj = Ci /Di

f(xj )

l4

2

8

-60

900

-0.667

12

 

5

5

-144

-126

1.143

3

 

7

3

-240

50

-4,8

-12

 

8

2

-360

-72

5

2

 

12

-2

360

1400

0,257

20

 

 

g = -480

 

 

 

 

63.025

ќтвет: f(10) = 63,025.