Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




Пусть функция f(x) задана в (n + 1) узлах, произвольно расположенных на отрезке [a;b]: y0 = f(x0), y1 = f(x1), … yn = f(xn).

Требуется найти интерполирующий алгебраический многочлен Ln(x), степени не выше n, удовлетворяющий условию (6.3.1-2), такой, что:

L0 = y0, L1 = y1, …, Ln = yn. (6.3.2-1)

Будем искать Ln(x) вида:

Ln = Q0(x)y0 + Q1(x)y1 + … + Q n(x) yn, (6.3.2-2)

где Qi(x) – коэффициенты, зависящие только от узлов , i=0,1, …,n и текущего х.

Для того чтобы выполнялись условия интерполяции (6.3.2-1), требуется, чтобы коэффициенты Qi(x) удовлетворяли условию:

Действительно, чтобы L(х0)=y0, необходимо, чтобы в (6.3.2-2)

Q0(x0) = 1, Q1(x0) = 0, …, Qn(x0)= 0.

В то же время в других узлах интерполяции первое слагаемое формулы 6.3.2-2, связанное с yi, должно быть равно нулю, то есть: Q0(xi) = 0, i = 1, 2, …, n.

Этим требованиям отвечает коэффициент вида:

(6.3.2-3)

Поскольку в числителе Q0(x) записано произведение разностей со всеми узлами кроме х0, то Q0(x ) обращается в ноль при х = хi; i = 1, 2, …, n. В то же время при х = х0числитель и знаменатель дроби взаимно сокращаются и Q0(x0)=1.

Для того чтобы Ln(x1) = y1, коэффициенты в (6.3.2-2) должны принять значения:

Q1(x1) = 1; Q0(x1) = 0… Qn(x1) = 0.

Чтобы в других узлах коэффициент Q1(x), связанный с yi, принял значение ноль, нужно, чтобы Q1(xi) = 0, i = 0, 2, 3, …, n. Тогда произведение разностей в числителе обращается в ноль во всех узлах, кроме х1, а при х = х1 коэффициент равен 1.

Обобщая сказанное выше, получим выражение для Qi(x):

(6.3.2-4)

Для интерполяционного многочлена Лагранжа это выражение будет следующее:

. (6.3.2-5)

Несмотря на громоздкость (6.3.2-5), одним из преимуществ формулы Лагранжа является возможность ее записи непосредственно по заданной таблице значений функции. Для этого следует учесть следующее правило: формула содержит столько слагаемых, сколько узлов в таблице; каждое слагаемое – это произведение дробного коэффициента на соответствующее значение yi; числитель коэффициента при yi содержит произведение разностей х со всеми узлами кроме а знаменатель повторяет числитель при х = .

Используя приведенные правила, получим формулы Лагранжа для двух узлов ( n=1 ) - линейная интерполяция:

для трех узлов ( n=2 ) - квадратичная интерполяция:

(6.3.2-6)

 

Оценку погрешности формулы Лагранжа определяют исходя из приближенного равенства

где m – число узлов, используемое в формуле.

Для того, чтобы уменьшить погрешность интерполяции, используется прием перенумерации узлов исходной таблицы, последовательно выбирая в качестве х0, , х2 и т.д. узлы, наиболее близко расположенные к искомой точке х, по возможности симметрично относительно точки х0. Такой прием позволяет уменьшить степень интерполяционного полинома для достижения требуемой точности (не использовать все заданные узлы).

 

Пример 6.3.2-1. Пусть функция y = f(x) задана таблично:

xi   1.2 1.4 1.6 1.8
y i   -0.16 -0.24 -0.24 -0.16

Требуется с использованием формулы Лагранжа вычислить значение f(x) в точке x = 1.45.

Перенумеруем узлы:

x0 = 1.4 y0 =-0.24

x1 = 1.6 y1 = -0.24

x2 = 1.2 y2 = -0.16

х3 = 1.8 y3 = -0.16

x4 = 1.0 y4 = 0.0.

Для приближенного вычисления значения функции воспользуемся формулами линейной и квадратичной интерполяции:

При n + 1 = 2 используем узлы x0 и x1

.

При n +1 = 3 используем узлы x0, x1 и x2

Для оценки погрешности используем соотношение

Если полученная величина соответствует заданной погрешности (например, e=0.1), то вычисления прекращают. Если e<Rn, то количество узлов увеличивают. Вычисления повторяют до тех пор, пока не выполнится условие Rn ≤ e.

Если, в соответствии с условиями поставленной задачи, требуется найти значения функции не в одной, а в нескольких точках, то рекомендуется провести преобразования формулы и получить многочлен в явном виде (Пример 6.3.1-1).

Если в формуле были использованы все точки, заданные таблицей, то оценить погрешность не представляется возможным.




Поделиться с друзьями:


Дата добавления: 2014-12-27; Просмотров: 954; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.