1626435584-7c6402f545ecf856225d6cf8d21519c9 (844233), страница 7
Текст из файла (страница 7)
Если они убывают медленно, то на хорошую точность рассчитывать, вообще говоря, нельзя (подробнее см. пп. 6, 7). Если убывание быстрое, то оставляют только те члены, которые больше допустимой погрешности; тем самым определяют, сколько узлов требуется подключить в расчет. П р имер. Покажем, как вычислять синус в первом квадранте, используя четыре известных значения, Составим таблицу 2 с четырьмя узлами, причем для удобства вычисления положим р(х)=з(п(30' х).
Для проверки точности, используя разности верхней косой строки, вычислим у (1,5) — О+ 0,750 — 0,050+ 0,006 = 0,706. З1 ИНТЕРПОЛИРОВАНИЕ 4 П Таблица 2 у(ху ха ) у (х ) у (х, х, х~ ) у (х~ ". х~.„а) 0,000 0,600 0,600 — 0,067 — 0,116 0,366 — 0„016 0,866 0,184 Это приближенное значение мало отличается от точного значения у(1,5) = з1п45' =0,707. Таким образом, достаточно помнить только верхнюю косую строку таблицы 2, чтобы вычислять синус с точностью около 0,001. 3 а м е ч а н и е 2.
При заданном числе узлов многочлен Ньютона удобнее вычислять по схеме Горнера, записывая его в виде у(х) =у(х,)+(х — х ) [у(ха, х,)+(х — х,) [у(х„х„х,)+...]]. Но если надо контролировать точность расчета и определять нужное число узлов, то удобнее форма (8). Замечание 3.
Для расчетов по формуле Ньютона безразличен порядок, в котором перенумерованы узлы интерполяции; это полезно помнить при подключении новых узлов в расчет. Мы ограничились здесь общими формулами, пригодными для таблиц с переменным шагом. Во многих учебниках для таблиц с постоянным шагом вводят конечные разности оху, связанные с разделенными разностями соотношением Ьху = и!у (х„х,, ..., х„).
Но это дань историческим традициям, ибо разделенйые разности не менее удобны в расчетах, чем конечные. Есть много разных форм записи интерполяционного много- члена общего вида: Ньютона, Лагранжа, Гаусса, Грегори — Ньютона, Лапласа — Эверетта и другие. Наиболее удобной для вычислений с контролем точности и на ЭВМ и вручную является форма Ньютона (8).
Большинство остальных форм рассчитано на определенные частные случаи расположения узлов интерполяции, но те выгоды, которые при этом получаются, обычно несущественны при расчетах на ЭВМ. 4. Погрешность многочлена Ньютона. Выше мы рассмотрели эмпирическое правило определения погрешности интерполяции по убыванию членов суммы (8). Проведем теперь строгое исследование погрешности метода, проистекающей от замены искомой функции интерполяционным многочленом Ньютона. 32 АППРОКСИМАЦИЯ ФУНКЦИЙ [Гл. и Погрешность удобно представить в следующем виде: у (х) — У„ (х) †.
— оэ, (х) г (х), го„ (х) = И (х — х;), (9) 1=- О нбо эта погрешность заведомо равна нулю во всех узлах интерполяции. Введем вспомогательную функцию 1) ($) = у($) — У (ь)— — ю„($) г(х), где х играет роль параметра и принимает любое фиксированное значение.
Очевидно, д($) =0 при 3=х„х„..., х„ и при $=-х, т. е. обращается в нуль в л+2 точках. «тх(Х,1 Предположим, что у (х) имеет и+ 1 непрерывную производную; тогда то же справедливо для д($). Между двумя нулями гладкой функции лежит нуль ее ха л) гт ау ля лу производной. Последовательно применяя это правило, получим, что между крайними из а+2 Рис. 2. нулей функции лежит нуль а+ 1-й производной. Но д[""1 Д) = =умы" ($) — (и+1)! г(х), н если в какой-то точке $', лежащей между указанными выше нулями, оиа обращается в нуль, то г (х) =у[""1($е)1(а+!)!. Заменяя погрешность (9) максимально возможной, получаем оценку погрешности: (у(х) — д'„(х), '="- — "; — ', [ю„(х)(, М„, =шах(у["111 ($) (, (10) где максимум производной берется по отрезку между наименьшим и наибольшим из значений х, х„х„..., х„.
Оценить а„(х) при произвольном расположении узлов интерполяции сложно. Однако таблицы чаще всего имеют постоянный шаг Л=хьм — хь а узлы интерполяции берутся из таблицы подряд. Тогда ю„(х) имеет примерно такой вид, как показано на рис. 2 для п=б: вблизи центрального узла интерполяции экстремумы невелики, вблизи крайних узлов — несколько больше, а если х выходит за крайние узлы интерполяции, то ю„(х) быстро возрастает. Можно подобрать узлы иигерполяции так, чтобы иа заданном отрезке п1ах ~ ы„(х) ~ был меньше, чем у любого другого многочлена той же степени.
Лля этого ю„(х) должен быть многочленом чебышева первого рода (см. при: ложение). Узлы этого многочлена расположены сравнительно редко в середине рассматриваемого отрезка и сгущаются у его концов. Но вне выбранного отрезка многочлен о>„(х) по.прежнему будет быстро возрастать. Этот способ интерполяции довольно громоздок, а выигрыш в точности невелик; поэтому его используют только для специальных целей †наприм, при построении аппроксимирующих формул. интсеполиговлние з 0 Термин инпмрлоляйця в узком смысле употребляют, если х заключено между крайними узЛами интерполяции; если он выходит из этих пределов, то говорят об экстраполяции.
Очевидно, что при экстраполяции далеко за крайний узел ошибка может быть велика, поэтому экстраполяция мало надежна. На практике рекомендуется пользоваться преимущественно интерполяцией. При интерполяции на равномерной сетке выгодно выбирать из таблицы узлы так, чтобы искомая точка х попадала ближе к центру этой конфигурации узлов — это обеспечит более высокую точность. Для упрощения вычислений рассмотрим случай нечетного л.
= 2й-1-1. Из симметрии полинома ы„(х) очевидно, что в центральном интервале экстремум достигается точно в середине (см. рис. 2). Этот экстремум равен Подставим эту величину в оценку (10). После несложных преобразований с использованием формулы Стирлинга р! К 2пр(рог)е получим оценку ошибки в центральном интервале ! у(х) — Ю„(х) ~ <., к' 2)яп М„;, (Л)2)" (11) Если величины производных у(х) можно оценить, то отсюда легко определить число узлов,, достаточное для получения заданной точности.
Из оценки (11) видно, что если перейти от таблиц с крупным шагом к таблицам с более мелким шагом, то погрешность метода будет убывать, как Ь"". Поэтому говорят, что многочлен Ньютона Ю„(х) имеет погрешность 0(6' ') и обеспечивает п-)-1-й порядок точности интерполяции. В главе !1! мы увидим, что между разделенными разностями и производными соответствующих порядков существует соотношение у'">(х) — п)р(х„, х„..., х„). Если учесть это при определении величины членов суммы (8), то нетрудно заметить, что эмпирическая оценка погрешности по первому отброшенному члену близка к оценке (10), котя является менее строгой.
Оценки (10) и (11) можно провести до вычисления интерполяционного многочлена, т. е. это априорные оценки точности. Оценка же по первому отброшенному члену делается после выполнения вычислений, т. е. является апостериорной. Поскольку обычно величины производных искомой функции заранее неизвестны, а в ходе вычисления многочлена Ньютона они фактически определяются, то на практике удобнее пользоваться апостериорной оценкой. Лалее мы не раз сможем убедиться, что строгие априорные оценки используются в основном при теоретическом исследовании методов.
При практическом контроле точности расчетов обычно 34 игл. и аппроксимация Финкцип употребляют менее строгие (хотя тоже ~имеющие теоретическое обоснование), но более удобные апостериорные оценки. 5. Применения интерполяции. Интерполяция применяется во многих задачах, а не только для вычисления табулированной функции при любых значениях аргумента. При помощи разделенных разностей контролируется точность таблиц, Лля этого составляют таблицы разделенных разностей различных порядков для соседних узлов и анализируют их поведение. Например, в таблице 3 приведена зависимость коэффициента теплопроводности высокотемпературной фазы циркония от температуры.
Там же вычислены первая и вторая конечные разности. Видно, что вторая разность меняется беспорядочно, так что интер- полировать более чем по двум точкам бессмысленно. По величине второй разности можно сказать, что случаййая погрешность Х составляет около единицы третьего знака в большинстве точек, но в двух первых она может доходить до единицы второго знака (для систематической погрешности измерений эти соображения неприменимы). Таблица 3 Теплопроволиость циркоиия Подобный контроль полезен при анализе результатов измерений в физике и технике.
Интерполяцию применяют для субтабулирования — сгущения таблиц. Алгоритмы непосредственного вычисления многих функ- 4й интееполиговлние пий очень сложны. Поэтому при математическом табулировании обычно функцию непосредственно вычисляют в небольшом числе узлов, т. е. таблицы имеют крупный шаг. Затем при помощи интерполяции высокого порядка точности сетку узлов сгущают и составляют падрабную таблицу. Шаг этой таблицы выбирают таким, чтобы простейшая интерполяция (двухточечная) обеспечивала требуемую точность. В связи с этим отметим, что при ручных расчетах выгодны подробные таблицы, нбо ани допускают применение простейших способов интерполяции, легко выполняемых на бумаге или клавишных машинах, а время поиска нужных узлов интерполяции невелико по сравнению со временем выполнения алгебраических действий. Наоборот, прн расчетах на ЭВМ задание подробных таблиц невыгодно, поскольку они занимают много места в оперативной памяти, а время поиска становится много больше времени выполнения алгебраических действий; выгоднее таблицы с большим шагом, хотя при этом требуются более сложные и точные способы интерполяции.
Задачей обратного интерполирования называют нахождение х для произвольного у, если задана таблица у; =у(х;). Для монотонных функций между прямым и обратным интерполированием нет разницы: можно читать таблицу наоборот, как задание х; = х(у,). Единственное отллчие будет в том, что «обратная» таблица х(уО будет иметь переменный шаг, даже если «прямая» таблица имела постоянный. На все наши формулы рассчитаны на переменный шаг. Отметим, чта для достижения заданной точности прямая и обратная интерполяции требуют,'вообще говоря, разного числа узлов.