Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

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

Читайте также:
  1. Интерполяционная формула лагранжа
  2. Интерполяционный полином Лагранжа.
  3. Общий вид функции Лагранжа
  4. При этом многочлен называется характеристическим многочленомдифференциального уравнения.

Пусть функция 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)

 
 

Построим график этой функции и отметим на нем узловые точки Mi(xi, yi)

 

Рис 3.1
Задача 1.

Найти приближенное значение функции f(arg) при данном значении аргумента arg с помощью интерполяционного многочлена Лагранжа, если функция задана таблицей.

x x0 x1 xn
y y0 y1 yn

arg=…


Алгоритм:

 
 

{Программа 3.1}

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 | Нарушение авторских прав


Читайте в этой же книге: ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ | Метод прямоугольников. | Практическая работа на ЭВМ | Решение систем линейных уравнений способом Гаусса. | Практическая работа на ЭВМ | ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ТРАНСЦЕНДЕНТНЫХ УРАВНЕНИЙ | Метод половинного деления | Несколько определений | Метод Эйлера. | Общий случай задачи оптимизации |
<== предыдущая страница | следующая страница ==>
Практическая работа на ЭВМ| Вычисление приближенного значения функции с помощью электронных таблиц

mybiblioteka.su - 2015-2024 год. (0.007 сек.)