EssayAI
Блог
Блог
Математика и алгоритмы

Интерполяционная формула Лагранжа: узлы и базисные полиномы

2 мая 2026Время чтения: 7 минут
#интерполяционная формула Лагранжа#базисные полиномы#узлы интерполяции#погрешность интерполяции#многочлен Ньютона
Интерполяционная формула Лагранжа: узлы и базисные полиномы

Интерполяционная формула Лагранжа - это способ построить единственный многочлен степени не выше nn, который проходит ровно через n+1n+1 заданную точку (x0,y0),…,(xn,yn)(x_0, y_0), \dots, (x_n, y_n). В отличие от подгонки коэффициентов через систему уравнений, интерполяционная формула Лагранжа даёт готовое явное выражение: она сразу собирает искомый полином из элементарных «кирпичиков» - базисных полиномов, каждый из которых отвечает за один узел. Это делает её удобной для теории и для ручного счёта по короткой таблице, хотя на практике у неё есть и слабые места, о которых речь ниже.

Постановка задачи интерполяции

Дана таблица значений неизвестной функции: набор узлов интерполяции x0,x1,…,xnx_0, x_1, \dots, x_n (все различны) и соответствующие значения yi=f(xi)y_i = f(x_i). Требуется найти многочлен Ln(x)L_n(x) степени не выше nn, такой что Ln(xi)=yiL_n(x_i) = y_i во всех узлах. Такой многочлен существует и единственен - это следствие того, что определитель Вандермонда для различных узлов отличен от нуля. Единственность важна: какой бы метод вы ни применили (Лагранжа, Ньютона, решение системы), при одних и тех же узлах получится один и тот же полином, отличаться будет лишь форма записи и объём вычислений.

Интерполяционная формула Лагранжа отвечает именно на этот вопрос, не требуя решать линейную систему. Ниже - мини-форма: впишите узлы и значения из своей таблицы, а в чате соберём базисные полиномы ℓi(x)\ell_i(x), итоговый многочлен и при желании оценку погрешности.

Базисные полиномы Лагранжа

Ключевая идея - для каждого узла xix_i построить свой базисный полином ℓi(x)\ell_i(x), который равен единице в «своём» узле и нулю во всех остальных:

ℓi(xj)={1,j=i,0,j≠i.\ell_i(x_j) = \begin{cases} 1, & j = i, \\ 0, & j \ne i. \end{cases}

Такой полином легко выписать явно как произведение: в числителе перемножаются все множители (x−xj)(x - x_j) при j≠ij \ne i, а знаменатель нормирует значение до единицы в точке xix_i:

ℓi(x)=∏j=0j≠inx−xjxi−xj.\ell_i(x) = \prod_{\substack{j=0 \\ j \ne i}}^{n} \frac{x - x_j}{x_i - x_j}.

Подстановка x=xix = x_i обнуляет всё, кроме нужного множителя, и даёт ровно 11; подстановка любого другого узла x=xkx = x_k (k≠ik \ne i) включает в числитель множитель (xk−xk)=0(x_k - x_k) = 0. Каждый ℓi(x)\ell_i(x) - многочлен степени ровно nn.

Знаменатель $\prod_{j \ne i}(x_i - x_j)$ - это просто число, оно не зависит от $x$. Считайте его один раз для каждого узла, иначе арифметические ошибки почти неизбежны.

Сборка интерполяционного многочлена

Имея базисные полиномы, итоговый многочлен собирается как линейная комбинация значений yiy_i с весами ℓi(x)\ell_i(x) - это и есть интерполяционная формула Лагранжа:

Ln(x)=∑i=0nyi ℓi(x)=∑i=0nyi∏j=0j≠inx−xjxi−xj.L_n(x) = \sum_{i=0}^{n} y_i\, \ell_i(x) = \sum_{i=0}^{n} y_i \prod_{\substack{j=0 \\ j \ne i}}^{n} \frac{x - x_j}{x_i - x_j}.

Проверка условия интерполяции тривиальна: подставив x=xkx = x_k, мы получаем Ln(xk)=∑iyiℓi(xk)=ykL_n(x_k) = \sum_i y_i \ell_i(x_k) = y_k, потому что все ℓi(xk)\ell_i(x_k) зануляются, кроме ℓk(xk)=1\ell_k(x_k) = 1. Так интерполяционная формула Лагранжа гарантированно проходит через все табличные точки. Для двух узлов она вырождается в обычную линейную интерполяцию (прямую через две точки), для трёх - в параболу.

Пример: парабола по трём точкам

Пусть даны три узла: (0,1)(0, 1), (1,3)(1, 3), (2,7)(2, 7). Тогда n=2n = 2, и базисные полиномы такие:

ℓ0(x)=(x−1)(x−2)(0−1)(0−2)=(x−1)(x−2)2,\ell_0(x) = \frac{(x-1)(x-2)}{(0-1)(0-2)} = \frac{(x-1)(x-2)}{2}, ℓ1(x)=(x−0)(x−2)(1−0)(1−2)=−x(x−2),\ell_1(x) = \frac{(x-0)(x-2)}{(1-0)(1-2)} = -x(x-2), ℓ2(x)=(x−0)(x−1)(2−0)(2−1)=x(x−1)2.\ell_2(x) = \frac{(x-0)(x-1)}{(2-0)(2-1)} = \frac{x(x-1)}{2}.

Подставляя в формулу с весами y0=1y_0 = 1, y1=3y_1 = 3, y2=7y_2 = 7, после раскрытия скобок получаем L2(x)=x2+x+1L_2(x) = x^2 + x + 1. Легко проверить: L2(0)=1L_2(0) = 1, L2(1)=3L_2(1) = 3, L2(2)=7L_2(2) = 7 - все узлы воспроизведены точно.

Погрешность интерполяции

Если значения yiy_i взяты от гладкой функции ff, отклонение многочлена от самой функции в произвольной точке описывает остаточный член. При f∈Cn+1f \in C^{n+1} на отрезке, содержащем узлы и точку xx, найдётся точка ξ\xi внутри этого отрезка, для которой

f(x)−Ln(x)=f(n+1)(ξ)(n+1)! ωn+1(x),ωn+1(x)=∏i=0n(x−xi).f(x) - L_n(x) = \frac{f^{(n+1)}(\xi)}{(n+1)!}\, \omega_{n+1}(x), \qquad \omega_{n+1}(x) = \prod_{i=0}^{n}(x - x_i).

Множитель ωn+1(x)\omega_{n+1}(x) показывает: погрешность мала вблизи узлов и растёт между ними, особенно у краёв отрезка. Поэтому наивное увеличение числа равноотстоящих узлов не всегда улучшает приближение - на функции f(x)=1/(1+25x2)f(x) = 1/(1+25x^2) возникает феномен Рунге: колебания на концах отрезка только усиливаются. Лекарство - выбирать узлы Чебышёва, которые сгущаются к краям и минимизируют максимум ∣ωn+1(x)∣|\omega_{n+1}(x)|.

Сравнение с формулой Ньютона

Интерполяционная формула Лагранжа и интерполяционный многочлен Ньютона задают один и тот же полином, но Ньютон использует разделённые разности и схему, удобную для добавления новых узлов: чтобы учесть ещё одну точку, к формуле Ньютона дописывают одно слагаемое, тогда как формула Лагранжа требует пересчёта всех базисных полиномов с нуля. Зато запись Лагранжа нагляднее и удобнее в теоретических выкладках. Идею вычислений через узловые значения продолжают и другие табличные методы - например, метод Симпсона для интегрирования по сути интегрирует именно интерполяционный многочлен по трём узлам.

Отдельно стоит барицентрическая форма формулы Лагранжа - алгебраически эквивалентная, но численно устойчивая и быстрая: после однократного вычисления барицентрических весов значение в новой точке считается за O(n)O(n) операций. На практике для повторных вычислений используют именно её, а не прямую формулу с произведениями.

Где применяется

Интерполяционная формула Лагранжа лежит в основе многих численных методов: вывода квадратурных формул (Ньютона-Котеса), численного дифференцирования, восстановления функции по таблице, а также в криптографии - схема разделения секрета Шамира восстанавливает секрет именно лагранжевой интерполяцией по долям-точкам. Везде, где есть набор точек и нужен проходящий через них многочлен, эта формула даёт явный ответ.

Частые ошибки

  • Совпадающие узлы: если два xix_i равны, знаменатель ∏j≠i(xi−xj)\prod_{j \ne i}(x_i - x_j) обнуляется и формула теряет смысл - узлы обязаны быть различными.
  • Путаница индексов в произведении: в ℓi(x)\ell_i(x) из перемножения исключается множитель именно с j=ij = i (и в числителе, и в знаменателе), а не какой-то другой.
  • Ожидание, что больше узлов всегда лучше: на равномерной сетке высокая степень провоцирует феномен Рунге - растущие осцилляции у краёв.
  • Прямой пересчёт при добавлении точки: добавив узел, нельзя «дописать» слагаемое как у Ньютона - все базисные полиномы меняются, нужен полный пересчёт.
  • Численная неустойчивость наивной формы при большом nn: вычитания близких чисел в знаменателях накапливают ошибку - используйте барицентрическую форму.

FAQ

Чем формула Лагранжа отличается от многочлена Ньютона? Это один и тот же интерполяционный полином, записанный по-разному. Лагранж нагляднее и не требует разделённых разностей, Ньютон удобнее, когда узлы добавляются по одному.

Сколько узлов нужно для многочлена степени n? Ровно n+1n+1 различный узел задаёт единственный многочлен степени не выше nn. Три точки дают параболу, две - прямую.

Почему интерполяция иногда ухудшается с ростом числа узлов? Из-за феномена Рунге: на равноотстоящих узлах множитель ωn+1(x)\omega_{n+1}(x) сильно растёт у краёв отрезка. Помогает переход к узлам Чебышёва.

Коротко

Интерполяционная формула Лагранжа строит единственный многочлен степени не выше nn через n+1n+1 заданную точку как сумму Ln(x)=∑yi ℓi(x)L_n(x) = \sum y_i\, \ell_i(x), где базисные полиномы ℓi(x)=∏j≠i(x−xj)/(xi−xj)\ell_i(x) = \prod_{j \ne i}(x - x_j)/(x_i - x_j) равны 11 в своём узле и 00 в остальных. Погрешность контролирует остаточный член с множителем ωn+1(x)\omega_{n+1}(x), а выбор узлов (Чебышёва вместо равномерных) спасает от феномена Рунге. Полином совпадает с ньютоновским, но для устойчивых повторных расчётов применяют барицентрическую форму.

Доверьте текст нейросети EssayAI

Открыть EssayAI

Бесплатно, на русском языке и без VPN

Читайте также

Кубический сплайн интерполяция: моменты и прогонка

Кубический сплайн интерполяция: моменты и прогонка

Кубическая сплайн-интерполяция: построение сплайна по узлам, трёхдиагональная система на вторые производные, метод прогонки, краевые условия и сравнение с многочленом Лагранжа.

30 марта 20267 минут
Агрегатные функции SQL: COUNT, SUM, AVG и GROUP BY

Агрегатные функции SQL: COUNT, SUM, AVG и GROUP BY

Как работают агрегатные функции SQL: COUNT, SUM, AVG, MIN и MAX, группировка GROUP BY, порядок выполнения запроса, разница HAVING и WHERE и поведение NULL внутри агрегата.

24 сентября 20269 минут
Интегральный синус Si(x): ряд Тейлора и максимум

Интегральный синус Si(x): ряд Тейлора и максимум

Интегральный синус Si(x): почему интеграл sin t / t не берётся в элементарных функциях, разложение в ряд, предел π/2, максимум Si(π) и выброс Гиббса. С калькулятором.

24 сентября 202610 минут
Куча как структура данных: массив и просеивание

Куча как структура данных: массив и просеивание

Куча как структура данных: свойство кучи, хранение в обычном массиве и индексы 2i+1 и 2i+2, просеивание sift-up и sift-down, построение за O(n) и приоритетная очередь.

24 сентября 202610 минут
Линейная зависимость векторов: критерии и примеры

Линейная зависимость векторов: критерии и примеры

Что такое линейная зависимость векторов, как проверить её определителем и рангом матрицы, чем коллинеарность отличается от компланарности и как всё это связано с базисом.

24 сентября 202610 минут
Линейное уравнение второго порядка: общее решение

Линейное уравнение второго порядка: общее решение

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

24 сентября 202612 минут