logo search
ЭУМКД_ДиВМ3

Интерполяционный полином Лагранжа

Входные параметры: N - число узлов интерполяции; y - массив размерности n, содержащий значения функции в узлах интерполяции; x-массив размерности n, содержащий значения узлов интерполяции; q-точка в которой вычисляем значения функции интерполяции.

Выходные параметры: приближенное значение функции в точке q; графическая интерпретация результата.

Схема алгоритма приведена на рисунке 6.

Задание. Аппроксимировать табличную функцию с помощью интерполяционного полинома Лагранжа.

xi

yi

xi

yi

1

2,05

6

1,88

2

1,94

7

1,71

3

1,92

8

1,60

4

1,87

9

1,56

5

1,77

10

1,40

Текст программы:

function Lagran(n:integer;x,y:TVector;q:real):real;

var i,j:integer; l,s:real;

begin

L:=0;

for i:=1 to n do

begin s:=1;

for j:=1 to N do

if j<>i then

s:=s*(q-x[j])/(x[i]-x[j]);

L:=L+y[i]*s;

end;

Lagran:=l

end

Вычисления по программе привели к следующим результатам:

X=1 Y=2,05

X=1,5 Y=2,38

X=2 Y=1,94

X=2,5 Y=1,83

X=3 Y=1,92

X=3,5 Y=1,94

X=4 Y=1,87

X=4,5 Y=1,78

X=5 Y=1,77

X=5,5 Y=1,83

X=6 Y=1,88

X=6,5 Y=1,83

X=7 Y=1,71

X=7,5 Y=1,59

X=8 Y=1,6

X=8,5 Y=1,67

X=9 Y=1,56

X=9,5 Y=1,09

X=10 Y=1,4

Рисунок 6 - Схема алгоритма приближения функций формулой Лагранжа

Варианты заданий для решения задачи приближения функций приведены в таблице 3.