Макеты страниц
11. Многомерная интерполяция.Двумерные таблицы широко распространены в физике и технике; например, таковыми являются таблицы термодинамических функций газов, где независимыми переменными обычно являются температура и плотность. Трехмерные таблицы составляют и используют значительно реже, но не потому, что таких зависимостей нет, а потому, что таблицы слишком громоздки. Четырехмерных таблиц практически нет, хотя в физике немало задач с большим числом параметров; так, проводимость плазмы зависит от ее температуры и плотности, и напряженностей электрического (если сказываются нелинейные эффекты) и магнитного полей. Отметим некоторые существенные стороны многомерной интерполяции. Для простоты ограничимся двумерными таблицами ; обобщить все результаты на большее число измерений нетрудно. 1) Чтобы объем таблиц был приемлем, приходится шаги по аргументам брать довольно большими. Это предъявляет жесткие требования к способу интерполяций. Часто приходится пользоваться методом выравнивания, т. е. подбирать замену переменных , преобразующую описываемую функцией поверхность в плоскость. Например, законы зависимости давления горячих газов от температуры и плотности близки к степенным. Поэтому при составлении таблиц свойств газов выгодно табулировать при аргументах и сетки по новым аргументам брать равномерными (к сожалению, физики редко это делают). Сходные закономерности справедливы для других термодинамических функций, коэффициентов теплопроводности и электропроводности и еще многих свойств веществ. В дальнейшем мы будем, предполагать, что выравнивающие переменные уже подобраны, и таблицы составлены в новых переменных. Тогда в качестве интерполирующей функции можно использовать многочлен невысокой степени. 2) Не любое число узлов интерполяции выгодно. Если для одной переменной степень многочлена была взаимно однозначно связана с числом узлов; то для двух переменных многочлен степени имеет узлов. Если число узлов не соответствует этой формуле, то часть коэффициентов при высших степенях должна задаваться принудительно (в частности, нулями); выбора этих коэффициентов редко есть разумные основания. Рис. 7. 3) В многомерном случае иначе определяется понятие экстраполяции. Возьмем узлы интерполяции и соединим их попарно прямыми (в случае большего числа измерений — гиперплоскостями). Крайние отрезки ограничивают выпуклую область (рис. 7). Если искомая точка попадает в эту область, то имеет место интерполяция; если не попадает, то экстраполяция. 4) Не всякое расположение узлов допустимо. В одномерном случае узлы не должны были совпадать. Теперь же для интерполяции многочленом необходимо, чтобы узлы не лежали на одной прямой в плоскости . В самом деле, система трех уравнений имеет определитель который обращается в нуль, если узлы лежат на одной прямой. При интерполяции многочленом требуется, чтобы узлы не лежали на кривой второго порядка и т. д. Такие условия, а также условие отсутствия экстраполяции проверять в общем случае сложно. Поэтому для хорошей интерполяции сетка должна быть регулярно построенной, а не представлять собой совокупность беспорядочно расположенных точек; узлы из нее следует выбирать определенным образом. В дальнейшем ограничимся наиболее удобной прямоугольной сеткой (рис. 8, 9); желательно, чтобы она была равномерной. На прямоугольной сетке удобна последовательная интерполяция. Пусть заданы и требуется найти . Выберем на сетке прямоугольник из узлов, в который попадает искомая точка (рис. 8). Сначала проведем лагранжеву интерполяцию по строкам, т. е. при каждом фиксированном найдем значение по значениям Рис. 8. Рис. 9. Затем проведем лагранжеву интерполяцию по столбцу, т. е. по значениям найдем искомое значение . Последовательная интерполяция имеет ряд преимуществ. Она позволяет брать по каждой переменной свое число узлов. Легко написать ее общую формулу, аналогичную одномерной формуле Лагранжа хотя вычисления удобнее производить, последовательно применяя одномерные формулы Ньютона. Формулу (31) можно обобщить, используя для каждого аргумента свою квазилинейную интерполяцию, т. е. по строкам делая замену , а по столбцам — такие выравнивающие замены подобрать проще, чем единую замену. Однако последовательная интерполяция завышает степень интерполирующего многочлена; например, если по обоим направлениям берется двухточечная интерполяция т. е. многочлен первой степени, то результирующий многочлен будет квадратичным многочленом вида Многочлен минимальной степени получается при треугольной интерполяции. Если взять треугольную конфигурацию узлов интерполяции, изображенную на рис. 9 или повернутую на угол, кратный 90°, то число узлов будет равно . Это число однозначно определяет многочлен степени, который удобно записать в форме Ньютона, вводя разделенные разности функции двух переменных: и т. д. Такими же рассуждениями, как в одномерном случае, можно показать, что интерполяционный многочлен лагранжева типа имеет следующий вид: В одномерном случае переменная у и индексы исчезают, так что формула (33) переходит в обычную формулу Ньютона. Многомерная интерполяция настолько громоздка, что обычно используется только многочлен первой или второй степени; читателям предлагается записать формулы (31) — (33) для этих случаев. Многочлены более высоких степеней используются много реже. По той же причине интерполяция эрмитова типа для многих переменных практически не употребляется. Сплайновая интерполяция используется в основном при разностном решении уравнений в частных производных. Иногда мы вынуждены работать с функцией, заданной на нерегулярной сетке (например, с функцией, измеренной экспериментально). Тогда обычно ограничиваются интерполяционным многочленом первой степени; его коэффициенты находят по трем выбранным узлам, приравнивая в них многочлен табличным значениям функции: Вычислять коэффициенты а, b, с на самом деле не нужно. Заметим, что равенства (34) означают, что столбец есть линейная комбинация трех столбцов, стоящих в правой части при коэффициентах. Следовательно, составленный из всех четырех столбцов определитель равен нулю: Раскрывая этот определитель по первому столбцу и вспоминая формулу (30), получим следующее выражение для интерполяционного многочлена: Эту процедуру вывода формулы нетрудно обобщить на многочлен любой степени при произвольном расположении узлов, но сами формулы для многочленов высокой степени получаются громоздкими и неудобными для вычислений.
|
Оглавление
|