Читайте также: |
|
Пусть функция y=f(x) задана таблицей (*). Построим интерполяционный многочлен Ln(x) степень которого не больше n, и выполняются условия (3.1): Ln(xi)=yi, i=0, 1, …, n
Будем искать Ln(x) в виде , где pi(x) многочлен степени n и , т.е. pi(x) только в одной точке отличен от нуля при i=j, а остальных точках он обращается в нуль. Следовательно, все эти точки являются для него корнями:
pi(x)=c(x-x0)(x-x1)…(x-xi-1)(x-xi+1)…(x-xn)
при x=xi
pi(xi)=c(xi-x0)(xi-x1)…(xi-xi-1)(xi-xi+1)…(xi-xn)
1=c(xi-x0)(xi-x1)…(xi-xi-1)(xi-xi+1)…(xi-xn)
c=[(xi-x0)(xi-x1)…(xi-xi-1)(xi-xi+1)…(xi-xn)]-1
подставим с в формулу pi(x), получим
отсюда
(3.2)
Это и есть интерполяционный многочлен Лагранжа. По таблице (*) формула (3.2) позволяет весьма просто составить внешний вид многочлена.
x | x0 | x1 |
y | y0 | y1 |
x | ||
y |
Пример 1.
N=1 (два узла интерполяции)
– уравнение прямой, проходящей через точки (x0, y0), (x1, y1)
Пример 2.
N=2 (три узла интерполяции)
x | x0 | x1 | x2 |
y | y0 | y1 | y2 |
x | |||
y |
– уравнение параболы, проходящей через точки (x0, y0), (x1, y1), (x2, y2)
Задача 1.
Рис 3.1
Найти приближенное значение функции f(arg) при данном значении аргумента arg с помощью интерполяционного многочлена Лагранжа, если функция задана таблицей.
x | x0 | x1 | … | xn |
y | y0 | y1 | … | yn |
arg=…
Алгоритм:
program Lagrange;
uses Crt;
var X, Y: array[1..100] of Real;
Arg, L, F: Real; I, J, N:Integer;
begin
Write('Введите количество узлов интерполяции');
Readln(n);
WriteLn('Введите таблицу значений xi, yi');
for I:=0 to N do begin
Write('X[',I,']='); ReadLn(X[I]);
Write('Y[',I,']='); ReadLn(Y[I]);
end;
Write('Введите аргумент '); ReadLn(Arg);
L:=0;
For I:=0 to N do begin
F:=1;
for J:=0 to N do
if I<>J then F:=F*(Arg-X[J])/(X[I]-X[J]);
F:=F*Y[I]; L:=L+F;
end;
WriteLn('Значение многочлена Лагранжа в точке ',Arg:0:3);
WriteLn('равно ', L:0:3); ReadLn;
end.
Задача 2.
x | x0 | x1 | x2 |
y | y0 | y1 | y2 |
По заданной таблице значений функции составить формулу интерполяционного многочлена Лагранжа, построить график и отметить на нем узловые точки.
Решение: см. выше пример 2.
Варианты самостоятельных работ для задачи 1 и задачи 2 см. Приложение 2
Дата добавления: 2015-10-31; просмотров: 267 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Практическая работа на ЭВМ | | | Вычисление приближенного значения функции с помощью электронных таблиц |