Скидка на подшипники из наличия!
Новое поступление товара в 2026 году!
Интерполяция — это способ найти значение, которого нет в таблице, по соседним значениям, которые в ней есть. В справочнике плотность воды дана через каждые 10 °C, а вам нужна при 25 °C. Соседние строки для 20 и 30 °C подсказывают ответ «примерно», а расчёт превращает это «примерно» в число, которое можно проверить. Так же снимают промежуточное значение с графика или из справочной таблицы.
Строгое определение из Большой российской энциклопедии: интерполяция — метод восстановления функции по её значениям, а иногда и по значениям производных, в конечном наборе точек. Точки с известными значениями называют узлами. Значение между узлами находят интерполяцией, за пределами узлов — экстраполяцией. Калькулятор интерполяции онлайн делает ту же арифметику без ошибок в знаках и сразу показывает ход расчёта, поэтому удобен и для проверки ручного решения.
Не путайте с ЧПУ. «Круговая интерполяция» в программировании станков — другое понятие. В ГОСТ 20999-83 так названы коды G02 и G03: движение инструмента по дуге по часовой стрелке и против неё. Код G01 там же назван линейной интерполяцией — это движение по прямой. Траектории и кадры управляющей программы считает калькулятор G-кодов ЧПУ.
Самый частый случай — интерполяция между двумя значениями. Через две известные точки (x1; y1) и (x2; y2) проводят прямую и берут на ней точку с нужным x. Формула интерполяции:
Считать удобнее в долях. Сначала находят, какую часть пути от x1 до x2 прошёл x: t = (x − x1) / (x2 − x1). Это число называют параметром, или коэффициентом, интерполяции. Потом ту же долю откладывают по y: y = y1 + t · (y2 − y1). Если t лежит от 0 до 1, точка внутри отрезка.
Пример. Плотность воды при 20 °C — 998,21 кг/м³, при 30 °C — 995,65 кг/м³. Нужна плотность при 25 °C.
Метод интерполяции не меняется, когда шагов таблицы много: берут две соседние строки, между которыми лежит искомый x, и считают по той же формуле. Такой расчёт по всей таблице — кусочно-линейная интерполяция. Линейная интерполяция онлайн и вручную идёт по одной схеме, разница только в скорости. Чтобы составить таблицу интерполяции с мелким шагом, достаточно перечислить нужные x через точку с запятой: результаты выводятся списком, их можно скопировать в Excel.
Бывает наоборот: в таблице ищут не значение, а аргумент. Например, при какой температуре плотность воды станет 990 кг/м³. Формула та же, только x и y меняются ролями:
Плотность 990 кг/м³ лежит между строками 40 °C (992,22) и 50 °C (988,04), поэтому x = 40 + (990 − 992,22) · 10 / (988,04 − 992,22) ≈ 45,31 °C. Если y в таблице то растёт, то падает, одному значению может отвечать несколько x — тогда находят все пересечения.
Многие справочные и нормативные таблицы зависят сразу от двух параметров: строки — от одного, столбцы — от другого. Если искомая точка не совпадает ни со строкой, ни со столбцом, нужна двойная, или билинейная, интерполяция. Она складывается из трёх обычных: две по столбцам и одна по строкам. Двойная интерполяция онлайн выручает именно здесь: вручную в ней чаще всего путают углы ячейки.
Пример. Плотность воды по уравнению IAPWS-95 при двух давлениях и двух температурах:
Нужна плотность при 50 °C и 7,5 МПа.
Порядок не важен: если сначала пройти по температуре, а потом по давлению, ответ тот же. Полезная проверка — веса углов. Каждое из четырёх соседних значений входит в ответ с весом от 0 до 1, а сумма весов равна 1. В примере точка стоит ровно в центре ячейки, все веса равны 0,25, и ответ — просто среднее четырёх чисел. Поэтому её иногда ищут как «интерполяцию по 4 значениям».
Тройная, или трилинейная, интерполяция — та же идея на шаг дальше: двойной расчёт в двух соседних «слоях» третьего параметра и линейный между ними. Всего это семь линейных интерполяций.
Концентрацию раствора часто определяют по плотности: измеряют ареометром и ищут по справочной таблице. В задаче муниципального этапа олимпиады по химии плотность раствора тиосульфата натрия при 20 °C равна 1,120 г/мл. В таблице есть 14 % (1,1182 г/мл) и 16 % (1,1365 г/мл):
В школьных решениях то же записывают пропорцией — это та же формула. В химии так находят и концентрацию, и плотность, и температуру кипения по справочным таблицам.
В геодезии интерполяция нужна, чтобы найти высоту точки между горизонталями или провести горизонтали между точками с известными отметками. Точка лежит в 3,2 мм от горизонтали 110 м, а заложение между горизонталями 110 и 111 м по той же линии — 14,4 мм. Отметка точки: 110 + 1 · 3,2 / 14,4 ≈ 110,22 м. Здесь вместо x — расстояние на плане, вместо y — высота.
Нормативные документы нередко прямо указывают линейную интерполяцию для промежуточных значений: так, например, сказано в п. М.3 приложения М СП 63.13330.2018 с изменением № 1. Если таблица зависит от двух параметров, считают по четырём соседним значениям. Если документ об этом ничего не говорит, проверьте, не оговорён ли в нём другой порядок выбора значения.
Линейная интерполяция хороша, пока функция между узлами почти прямая. Если график заметно изогнут, прямая ошибается. Вязкость воды с ростом температуры падает круто: по прямой между 20 и 30 °C получается 0,9021·10⁻⁶ м²/с, а справочное значение при 25 °C — 0,8927·10⁻⁶ м²/с. Ошибка 1,05 %. Кубическая интерполяция сплайном по той же таблице от 0 до 100 °C даёт 0,8937·10⁻⁶ м²/с — ошибка 0,12 %.
Интерполяция Лагранжа строит многочлен, который проходит через все n узлов и имеет степень n − 1:
Через три точки (0; 1), (1; 3) и (2; 2) проходит парабола L(x) = −1,5x² + 3,5x + 1, и L(1,5) = 2,875. Это и есть квадратичная интерполяция; с большим числом узлов её называют полиномиальной.
Интерполяция Ньютона даёт тот же самый многочлен (полином), только записанный через разделённые разности: L(x) = 1 + 2x − 1,5x(x − 1). Форму Ньютона удобно наращивать: добавили узел — дописали одно слагаемое, остальные не меняются. Многочлен через заданные узлы единственный, поэтому формула Лагранжа и формула Ньютона всегда дают одно и то же число. Формулу, которую сегодня называют формулой Лагранжа, первым опубликовал Эдвард Уоринг в 1779 году, Лагранж — в 1795-м.
Коэффициенты многочлена в обычном виде можно найти и как решение системы линейных уравнений — по одному уравнению на узел. Такую систему удобно решить методом Гаусса онлайн. Но при больших значениях x, например годах 2015–2020, обычный вид теряет точность из-за огромных коэффициентов, и считать надёжнее в форме Ньютона.
С ростом числа узлов многочлен не всегда становится точнее. В 1901 году Карл Рунге показал: для функции 1 / (1 + 25x²) на равномерной сетке многочлен высокой степени раскачивается у краёв отрезка. По 9 равноотстоящим узлам на отрезке [−1; 1] многочлен в точке x = 0,9 даёт −0,960, хотя истинное значение 0,047.
Выход — сплайн-интерполяция. Кубический сплайн склеен из кусков третьей степени, и на стыках у соседних кусков совпадают значение, первая и вторая производные. Поэтому кривая гладкая, а локальная: изменение одного узла заметно влияет только на ближайшие участки. В той же точке 0,9 сплайн даёт 0,0455. У натурального сплайна вторая производная в крайних узлах равна нулю, а коэффициенты находят из трёхдиагональной системы методом прогонки.
Слово «сплайн» ввёл в математику Исаак Шёнберг в 1946 году. Так называлась гибкая чертёжная линейка, которую прижимали грузиками к опорным точкам, — она изгибается так же плавно.
Для расчёта по прямой есть простая оценка погрешности:
Отсюда практическое правило: уменьшите шаг таблицы вдвое — ошибка упадёт примерно вчетверо. Для вязкости воды это видно на числах: по узлам 20 и 30 °C ошибка при 25 °C — 1,05 %, по узлам 22,5 и 27,5 °C — в 4,0 раза меньше.
Когда вторая производная неизвестна, погрешность прикидывают сравнением. Посчитайте значение линейно, по трём узлам и сплайном. Если ответы совпадают в нужных знаках, результату можно доверять. Если расходятся — данных в таблице мало для такой кривизны.
Интерполяция и экстраполяция используют одну формулу, но доверие к ним разное. Первая ищет значение между узлами, где функция «зажата» известными точками. Экстраполяция продолжает кривую за край, и там она может вести себя как угодно. Если по строкам 90 и 100 °C продолжить таблицу плотности воды до 105 °C, формула выдаст число, хотя при атмосферном давлении вода при 105 °C — уже пар.
Аппроксимация решает другую задачу: проводит кривую рядом с точками, а не через них, чтобы сгладить разброс измерений. Поэтому аппроксимация и интерполяция отличаются главным: интерполяционная кривая обязана пройти через каждую точку, аппроксимирующая — нет.
Интерполяцию в экселе делают одной формулой: отдельной функции для неё в Excel нет. Пусть x1 и y1 стоят в ячейках A2 и B2, x2 и y2 — в A3 и B3, а искомый x — в D2. Формула линейной интерполяции в Excel:
Частая ошибка — ПРЕДСКАЗ.ЛИНЕЙН по всей таблице. Эта функция (в старых версиях — ПРЕДСКАЗ) строит прямую методом наименьших квадратов по всем точкам, то есть аппроксимирует, а не интерполирует. Для плотности воды при 25 °C по всей таблице от 0 до 100 °C она даёт 995,21 кг/м³ вместо 996,93. Правильный результат будет, только если передать ей две соседние строки: =ПРЕДСКАЗ.ЛИНЕЙН(D2;B2:B3;A2:A3).
Для интерполяции в Excel по таблице участок находят функцией ПОИСКПОЗ, а значения достают функцией ИНДЕКС. Если таблица лежит в A2:A12 и B2:B12, номер участка в E2:
и значение в F2:
Столбец x должен идти по возрастанию, иначе ПОИСКПОЗ найдёт не ту строку. Число 10 — это количество участков, на одно меньше числа строк. Для обратного поиска столбцы меняют местами и сортируют по возрастанию y.
Найдите две соседние строки, между которыми лежит ваше значение, и посчитайте по формуле из начала страницы. Если таблица зависит от двух параметров, нужна двойная интерполяция по четырём соседним значениям. Перед этим убедитесь, что документ допускает интерполяцию для этой таблицы.
Можно, но не по прямой. Давление насыщенного водяного пара при 20 °C — 2,339 кПа, при 30 °C — 4,247 кПа. По прямой при 25 °C получается 3,293 кПа, а справочное значение — 3,170 кПа, ошибка 3,9 %. Если интерполировать логарифм давления, y = y1 · (y2 / y1)t, получится 3,152 кПа — ошибка 0,6 %. Это и есть логарифмическая интерполяция. Хорошо работает и сплайн по всей таблице.
Это доля отрезка t = (x − x1) / (x2 − x1): насколько искомый x продвинулся от первого узла ко второму. При t = 0 ответ равен y1, при t = 1 — y2, при t = 0,5 — среднему.
Билинейная функция в ячейке имеет вид a + bx + cy + dxy. Сначала по x, потом по y или наоборот — в обоих случаях получается одна и та же функция, поэтому и ответ один.
В школьной химии и физике — расчёт промежуточных значений по справочным таблицам. В вузовском курсе «Численные методы» интерполяция функции идёт одной из первых тем: многочлены Лагранжа и Ньютона, оценка остатка, сплайны. Там же рядом — численное решение дифференциальных уравнений, например задача Коши методами Эйлера и Рунге—Кутты.
Другие инструменты для расчётов собраны в разделе калькуляторы inner.su.
Результат расчёта — математическая оценка по заданным узлам. В ответственных расчётах сверяйте исходные данные с первоисточником и проверяйте, допускает ли нормативный документ интерполяцию для конкретной таблицы.