Н.Н. Калиткин - Численные методы (1133437), страница 15
Текст из файла (страница 15)
4. Применить формулу (19) к вычислению у(0, 5) в таблице 5; оценить точность. 5. Вывести формулы типа (19) для случаев, когда функция на малых отрез- ках приближенно представима в виде у(х) =ахэ или у(х) — а(х+Ь)'", где ш †заданн число. 6. Разобрать интерполяцию сплайном второй степени; по аналогии со слу- чаем л=з найти экономный способ зьшнслепия коэффициентов. 7. Оценить погрешность округления при вычислении з)п 2550' по формуле Тейлора на ЭВМ с 16 десятичными знаками.
8, Доказать, что прямая, прозедецная методом наименьших квадратов, проходит через точку с координатами х =Яр«;~/(~ рг), у=(Я ру~) /(~ р;), которак является <центром тяжестям 9. Выпестн формулы Бесселя (44) для случзя, когда тригонометрические ф)йкцнв заданы в действительной форме: (эз=-!, грг=з)ах, <рз=созх, ~рз= =т зтп йх и т. д. цв Вывести формулы сглаэкивавия типа (45) для центральной точки по пяги точкам при среднеквадратичной аппроксимации многочленом первой и второй степени. 11.
Написать систему уравнений для определения коэффициентов а„, Ь 1Я (<) минимизирующих (49). 12. Доказать, что коэффициенты ас формул. Бесселя (44) связаны с козф. -1- <о фициентами обычного ряда Фурьс с<» соотношениями а»=- а а = — <о ГЛАВА 111 ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ В главе П! рассмотрено численное дифференцирование функции, заданной на некоторой сетке.
Введены квэзирэвномерные сетки, полезные во многих приложениях, Обсуждена некорректность задачи дифференцирования, проявляющаяся при сильном уменьшении шага, и наложены некоторые способы регуляции. Показано, как можно повышать точность и оценивать погрешность при сгущении сетки. 1. Полиномиальные формулы. Численное дифференцирование применяется, если функцию д(х) трудно или невозможно продифференцировать аналитически — например, если она задана таблицей, Оно нужно также при решении дифференциальных уравнений при помощи разиостных методов.
При численном дифференцировании функцию д (х) аппроксямируют легко вычисляемой функцией гр(х; а) и приближенно полагают д' (х) =гр'(х; а). При этом можно использовать различные способы аппроксимации, изложенные в главе Н. Сейчас мы рассмотрим простейший случай — аппроксимацию интерполяциониым мпогочленом Ньютона (2.8). Вводя обозначение $, =х — хь запишем этот лтногочлен и продифференцируем его почленно: гр(х) =д(х,)+К д(х, х)+Щд(х, х„хе)+ + нее Дзу (ХО, Хт Хэ~ ХЗ) + Р' (х) = д (х, х ) + (еьо+ее ) д(х, х, х.) + +(сДт+сДе+ство) д(х„х,, хо, х,)+..., гр" (г)=2д(х„х„х,)+2 %о+из+Бе)д(хо хт то, хэ)+ ° ° ° Общая формула имеет следующий вид: т"'~о=о)(о( „ч .... ч)ь(В ь) ° ~ч, гю ..., *„Н- зз=о Л=.о+ ~ + ~ 'У, '3Д11 д (х„х„..., х„,) + г>у~о г--=ь — , '2 +1 Х ЫуьНд(хо, хт, ..., хо,а)+ (1) гл пп численное диофегвициеовлнив 71 Обрывая ряд на некотором числе членов, получим приближенное выражение для соответствующей производной.
Наиболее простые выражения получим, оставляя в формуле (1) только первый член: у'(х) у(х, х) =[у(хе) — у(х1)]/(х,— х,), ы —, упо (х) —. у (х„х,... хл) = '~~~~~ у И (х — х;)-'. я=в г=в ~Хя При написании последней формулы использованы резудьтаты задачи 1 к главе П. Все формулы (1) — (2) рассчитаны на произвольную неравномерную сетку. Исследование точности полученных выражений при численных расчетах удобно делать при помощи апостериорной оценки, по скорости убывания членов ряда (1). Если шаг сетки достаточно мал, то погрешность близка к первому отброшенному члену.
Пусть мы используем узлы хь Ок=1=-.п. Тогда первый отброшенный член содержит разделенную разность у(х„х„..., х„,), которая согласно (2) примерно равна у<"-ы(х),'(и+1)1. Перед ,ней стоит сумма произведений различных множителей $;; каждое произведение содержит и+1 — к множителей, а вся сумма состоит из 0~4. ~ слагаемых.
Отсюда следует оценка погрешности ()юрмулы (1) с и+1 узлами: )11м: — ""' шах~3 ~"" 1, М = гпах~уы"'~. (3) (о4 1 1)! ~-~ ' ~ 1 В частности, если сетка равномерная, то гпах~З,'~(п)1, откуда В М„„~( ев ЬУ4' "= 0()т '- ), (4) Зти оценки можно несколько улучшить за счет более детального рассмотрения множителей со Заметим, что строгое априорное исследование погрешности формулы (1), аналогичное выводу остаточного члена многочлена Ньютона в форме Коши (2.10), для произвольного расположения узлов приводит к той же оценке (3). Таким образом, порядок пючности формулы (1) по отношению к шагу сапки равен числу оспювленнь1х в ней членов, или, что то же самое, он равен числу узлов интерполяции минус порядок производной.
Поэтому минимальное число узлов, необходимое для вычисления к-й производной, равно й+ 1; оно приводит к формулам (2) -и обеспечивает первый порядок точности. Эти выводы соответствуют общему принципу; при почленном дифференцировании ряда скорость его сходимости уменьшается, 72 ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ [Гл.
и! В главе 11 рекомендовалось использовать в формулах интерполяции не более 4 — 6 узлов, Если еп!е учесть ухудшение сходимости ряда при дифференцировании, то можно сделать вывод: даже если функция задана хорошо составленной таблицей на довольно подробной сетке, то практически численным дифференцированием можно хорошо определить первую и вторую производные, а третью и четвертую — лишь удовлетворительно. Более высокие производные редко удается вычислить с приемлемой точностью. Замечание 1. Кубическая сплайновая интерполяция (2.20) обладает тем свойством, что первая и вторая производные интерполяционного многочлена всюду непрерывны.
Обычно дифференцирование кубического сплайна позволяет определить эти производные с хорошей точностью, Если надо вычислить более высокие производные, то целесообразно строить сплайны высоких порядков. Из-за большой трудоемкости этот способ редко используется; теоретически он мало исследован.
Замечание 2. Если табулирована не только функция, но и ее производные, то следует составлять и дифференцировать ннтерполяционный многочлен Эрмита. Производные при этом вычисляются намного точнее, чем при дифференцировании интерполяционного многочлена Ньютона с тем же числом свободных параметров по формулам (1). 2. Простейшие формулы. ЧапЯе всего используются равномерные сетки, на которых вид формул (1) заметно упрощается, а точность нередко повышается. Рассмотрим сначала причину повышения точности. Остаточный член общей формулы (1) есть многочлен ~ Ц (х — х,) степени и+1 — й относительно х. Если х равен корню этого миогочлена, то главный остаточный член обращается в нуль,- т.
е. в этой точке формула имеет, порядок точности на единицу больше, чем согласно оценке (4). Эти точки павыикнной аочности будем обозначать хАФ!, где я — порядок производной, а р = л + 1 — я— число оставленных в формуле (1) членов. Очевидно, р-членная формула имеет р точек повышенной точности.
У одночленной формулы (2) для Й-й производной точка повышенной точности на произвольной сетке определяется условием Я$!=~,'(х — х;) =О, что дает хА~ ' = (х, + х, + ... + х,) /(Й+ 1); (5) в этой точке одночленная формула имеет погрешность 0 (/Я!) вместо обычной 0(й). Для двучленной формулы задача нахождения точек повышенной точности приводит к квадратному уравнеЯяню, корни которого действительны, но формула для их нахождения громоздка (см. задачу 2).
Если р:~ 2, то найти точки гл. пп числсннов диеевгвнциговкнив 73 повышенной точности очень сложно, за исключением одиого част- ного случая, который мы сейчас рассмотрим. Лусгггь р нечетно, а узлы в формуле (1) выбраны так, что они расгголоясены симметрично относипгельно точки х; оюеда х явля- ется одной из точек повышенной точности хь". ггг Док азател ьство.
В самом деле, при этом величины $г = = х — х, иыегот попарно равные абсолютные величины, но про- тивоположные знаки. В остаточном члене множитель пг = ~Х ', Ц$г имеет нечетную степень, и при одновременном изменении знаков всех 3г он должен изменить знак. Но поскольку одновременное изменение знаков $г сводится при таком расположении узлов лишь к' перемене их нумерации, то величина пг должна сохра- ниться, что возможно только при пг =О. Утверждение доказано.
Замечание 1. Доказательство' справедливо для неравно- мерной сетки. 3амечацне 2. Число узлов предполагалось произвольным; очевидно, симметричное расположение узлов относительно точки х~~' означает, что при нечетном числе узлов точка хлы' совпадает с центральным узлом, а при четном — лежит между средними узлами. Замечание 3. Повышение точности достигается не только в самих точках повышенной точности, но и в достаточно малой их окрестности, где изменение производной не превышает пог- решности формулы; для точки хл' это окрестность размером 0(й'), ог для х),вг — 0(й') и т. д.
На произвольной сетке условие симметрии реализуется только в исключительных случаях. Но если сетка равномерна, то каж- дый ее узел симметрично окружен соседними узлами. Это позво- ляет составить несложные формулы хорошей точности для вычис- ления производных в узлах сетки. Например, возьмем три соседних узла х„х„х, и вычислим первую и вторую производные в среднем узле. Выражая в одно- членных формулах (2) разделенные разности через узловые зна- чения функции, легко получим у' (х,) =(у, — уч)/2Й+0 (й'), й =х;„г — х; =сонэ(, (6) у" (хг) = (уг — 2уг+ уо) ..Лгч+ 0 (Й') (7) Формулу (6) часто записывают в несколько ином виде, удобном для определения производной в средней точке интервала сетки: уг+ пг = у (хг-г ьз) = (уг+г уг)~''гг+ О (Й'), (8) хг+ 02 = хг + /г)г.
Аналогично можно вывести формулы более высокого порядка точности или для более высоких производных. Например, трех- 74 ~ГЛ. И1 ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ членная формула (1) для первой производной в середине интервала по четырем соседним узлам дает у111= ( — уз+ 27уз 27У1+ уа),/ (24й) + О (й') (9) а для второй производной в центральном узле по пяти узлам уз = ( — у, + \ бу, — ЗОУА+ 1бу1 — у„), '(12й') + О (й').