Читайте также: |
|
Интерполяционные формулы Ньютона пригодны лишь для равноотстоящих узлов интерполирования. Рассмотрим интерполяционную формулу Лагранжа, которая применима при любом расположении узлов. Пусть дана система точек x 0, x 1, …, xn, принадлежащих некоторому отрезку [ a, b ] и известны соответствующие значения функции yi = f (xi). Найдем многочлен Ln (x), удовлетворяющий условиям Ln (xi) = yi.
При построении многочлена Лагранжа используются многочлены n -й степени pi (x), принимающие значение 1 в точке xi и нулевые значения в остальных узлах интерполяции xj, j ≠ i. Так как xj при j ≠ i являются корнями многочлена pi (x), то справедливо разложение pi (x) на множители
pi (x) = Ci (x – x 0)(x – x 1)…(x – xi – 1)(x – xi + 1)… (x – xn), i = 0, 1,…, n.
Из условия pi (xi) = 1 находим значение константы Ci
Ci = 1/[(xi – x 0)(xi – x 1)…(xi – xi – 1)(xi – xi + 1)… (xi – xn)],
и получаем выражение для многочленов pi (xi):
(4.16)
Интерполяционный многочлен Лагранжа имеет вид
. (4.17)
Формулу Лагранжа можно преобразовать так, чтобы упростить вычисления. Вынесем за знак суммы произведение
П n + 1(x) = (x – x 0)(x – x 1)…(x – xn),
которое является многочленом степени n + 1. Получим
Теперь формулу Лагранжа можно записать в виде
, (4.18)
где Di = (xi – x 0)(xi – x 1)…(xi – xi – 1)(x – xi)(xi – xi + 1)… (xi – xn).
Обратите внимание на то, что в произведении Di из n + 1 сомножителя вместо скобки (xi – xi) присутствует множитель (x – xi).
Пример 4.4. Вычислить значение функции из примера 4.3 в точке x = 2,3 с помощью интерполяционной формулы Лагранжа.
Решение в программе Excel. Результат выполнения задания показан в таблице 4.6. В таблице 4.5 для контроля приведены формулы в соответствующих ячейках. Приведем алгоритм ввода данных и расчетных формул.
1) В ячейку A 1 вводим имя переменной «x=», а в B 1 — ее значение 2,3. Присвоим ячейке B 1 имя x. Для этого выделим ячейку B 1 и выполним команду «Вставка — Имя — Присвоить — x».
2) В столбцы A 2: A 7, B 2: B 7, C 2: C 7 и строку D 2: J 2 введем данные как в таблице 4.5.
В остальных заполненных ячейках таблицы 4.5 содержатся формулы, которые рекомендуется ввести в следующем порядке:
3) (Заполнение диагонали.) В ячейку D 3 вводим «=x-$B3»; выделим D 3, копируем в буфер, а затем поочередно вставим в ячейки E 4, F 5, G 6 и H 7. В этих ячейках будут записаны соответственно формулы «=x-$B4», «=x-$B5», «=x-$B6», «=x-$B7».
4) (Заполнение ячеек под диагональю.) В ячейку D 4 вводим «=B4-B$3». Копируем D 4 маркером заполнения вниз до D 7. Аналогично, в ячейку E 5 вводим «=B5-B$3». Копируем E 5 маркером заполнения вниз до E 7; в ячейку F 6 вводим «=B6-B$3». Копируем F 6 в F 7. В ячейку H 7 вводим «=x-$B7».
5) (Заполнение ячеек над диагональю.) В ячейку E 3 вводим «=B3-B$4». В ячейку F 3 вводим «=B3-B$5». Копируем F 3 маркером заполнения вниз до F 4. в ячейку G 3 вводим «=B3-B$6». Копируем G 3 маркером заполнения вниз до G 5.
6) (Вычисление многочлена Лагранжа.) В ячейку I 3 вводим формулу «=ПРОИЗВЕД(D3:H3)» и копируем ее вниз до I 7. В ячейку J 3 вводим формулу «=C3/I3» и копируем ее вниз до J 7. В ячейку J 8 вводим «=СУММ(J3:J7)», в ячейку H 9 — «=D3*E4*F5*G6*H7», а в J 9 — «=H9*J8».
Табл. 4.5.
C | D | E | F | G | H | I | J | |
yi | Di | yi/Di | ||||||
=x-$B3 | =B3-B$4 | =B3-B$5 | =B3-B$6 | =B3-B$7 | =ПРОИЗВЕД(D3:H3) | =C3/I3 | ||
=B4-B$3 | =x-$B4 | =B4-B$5 | =B4-B$6 | =B4-B$7 | =ПРОИЗВЕД(D4:H4) | =C4/I4 | ||
5,5 | =B5-B$3 | =B5-B$4 | =x-$B5 | =B5-B$6 | =B5-B$7 | =ПРОИЗВЕД(D5:H5) | =C5/I5 | |
5,7 | =B6-B$3 | =B6-B$4 | =B6-B$5 | =x-$B6 | =B6-B$7 | =ПРОИЗВЕД(D6:H6) | =C6/I6 | |
5,8 | =B7-B$3 | =B7-B$4 | =B7-B$5 | =B7-B$6 | =x-$B7 | =ПРОИЗВЕД(D7:H7) | =C7/I7 | |
=СУММ (J3:J7) | ||||||||
=D3*E4 *F5*G6*H7 | =H9*J8 |
Табл. 4.6.
A | B | C | D | E | F | G | H | I | J | |
x= | 2,3 | |||||||||
i | xi | yi | Di | yi/Di | ||||||
0,3 | -0,5 | -1 | -1,5 | -2 | 0,45 | 8,888889 | ||||
2,5 | 0,5 | -0,2 | -0,5 | -1 | -1,5 | 0,075 | 66,66667 | |||
5,5 | 0,5 | -0,7 | -0,5 | -1 | -0,175 | -31,4286 | ||||
3,5 | 5,7 | 1,5 | 0,5 | -1,2 | -0,5 | 0,45 | 12,66667 | |||
5,8 | 1,5 | 0,5 | -1,7 | -2,55 | -2,27451 | |||||
54,51914 | ||||||||||
0,08568 | 4,6712 |
Результат f (2,3) = 4,6712 совпадает со значением, полученным в примере 4.3. Так и должно быть, ведь по заданным точкам многочлен n -й степени определяется единственным образом.
Дата добавления: 2015-07-20; просмотров: 187 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Интерполяционные формулы Ньютона | | | Остаточный член интерполяционной формулы Лагранжа |