Главная Численные методы при исследовании физических задач



n + l - k

Rf<Mn,i[7pkJ -Oih"-)- (4)

Эти оценки можно несколько улучшить за счет более детального рассмотрения множителей Заметим, что строгое априорное исследование погрешности формулы (1), аналогичное выводу остаточного члена многочлена Ньютона в форме Коши (2.10), для произвольного расположения узлов приводит к той же оценке (3).

Таким образом, порядок точности формулы (1) по отношению к шагу сетки равен числу оставленных в ней членов, или, что то же самое, он равен числу узлов интерполяции минус порядок производной. Поэтому минимальное число узлов, необходимое для вычисления k-я производной, равно +1; оно приводит к формулам (2) И обеспечивает первый порядок точности. Эти выводы соответствуют общему принципу: при почленном дифференцировании ряда скорость его сходимости уменьшается.

Обрывая ряд на некотором числе членов, получим приближенное выражение для соответствующей производной. Наиболее простые выражения получим, оставляя в формуле (1) только первый член:

у (х) у {Хо, х) = [у (Хо) - у {х,)]/(Хо - х), -1-у"(х)у(х,, х„ (2)

г/*) (х) у {Хо, 1, ..., Xft) = 2 И (Р - )"*

р=0 «=0

при написании последней формулы использованы результаты задачи 1 к главе П. Все формулы (1) -(2) рассчитаны на произвольную неравномерную сетку.

Исследование точности полученных выражений при численных расчетах удобно делать при помощи апостериорной оценки, по скорости убывания членов ряда (1). Если шаг сетки достаточно мал, то погрешность близка к первому отброшенному члену. Пусть мы используем узлы Xi, Oin. Тогда первый отброшенный член содержит разделенную разность у{Хд, x„j,), которая согласно (2) примерно равна г/*"+(x)/(rt-l-1)!. Перед -ней стоит сумма произведений различных множителей каждое произведение содержит п+1 - множителей, а вся сумма состоит из Сп+1 слагаемых. Отсюда следует оценка погрешности (})ормулы (1) с /г+ 1 узлами:

Rn<~fi,max\b\-, Af„,i=maxir/( + M- (3) В частности, если сетка равномерная, то max j 1 <;nh, откуда



В гдаве II рекомендовалось использовать в формулах интерполяции не более 4 - 6 узлов. Если еще учесть ухудшение сходимости ряда при дифференцировании, то можно сделать вывод: даже если функция задана хорошо составленной таблицей на довольно подробной сетке, то практически численным дифференцированием можно хорошо определить первую и вторую производные, а третью и четвертую - лишь удовлетворительно. Более высокие производные редко удается вычислить с приемлемой точностью.

Замечание 1, Кубическая сплайновая интерполяция (2.20) обладает тем свойством, что первая и вторая производные интерполяционного многочлена всюду непрерывны. Обычно дифференцирование кубического сплайна позволяет определить эти производные с хорощей точностью, Если надо вычислить более высокие произдодные, то целесообразно строить сплайны высоких порядков. Из-за большой трудоемкости этот спрсоб редко используется; теоретически он мало исследован.

Замечание 2. Если табулирована не только функция, но и ее производные, то следует составлять и дифференцировать интерполяционный многочлен Эрмита. Производные при этом вычисляются намного точнее, чем при дифференцировании интерполяционного многочлена Ньютона с тем же числом свободных параметров по формулам (1.).

2. Простейшие формулы. Чаще всего используются равномерные сетки, на которых вид формул (1) заметно упрощается, а точность нередко повышается.

Рассмотрим сначала причину повышения точности. Остаточный член общей формулы С1) есть многочлен еп(-~-) степени п+1-k относительно х. Если х равен корню этогомногочлена, то главный остаточный член обращается в нуль,- т. е. в этой точке формула имеет порядок точности на единицу больше, чем согласно оценке (4). Эти точки повышенной точности будем обозначать xt\ где - порядок производной, а р = п-\- \ -k - число оставленных в формуле (1) членов. Очевидно, р-членная формула имеет р точек повышенной точности.

У одночленной формулы (2) для й-й производной точка повышенной точности на произвольной сетке определяется условием

2 = 2 -••) = то дает

4" = (о + 1+...+ft)/(fe+l); (5)

в этой точке одночленная формула имеет погрешность 0{h) вместо обычной О (h). Для двучленной формулы задача нахождения точек повышенной точности приводит к квадратному уравнению, корни которого действительны, но формула для их нахождения громоздка (см. задачу 2). Если р>2, то найти точки



повышенной точности очень сложно, за исключением одцого частного случая, который мы сейчас рассмотрим.

Пусть р нечетно, а узлы в фодмуле (1) выбраны так, что они расположены симметрично относительно точки х; тогда х является одной из точек повышенной точности xfK

Доказательство. В самом деле, при этом величины = = x - Xi имеют попарно равные абсолютные величины, но противоположные знаки. В остаточном члене множитель = 211 имеет нечетную степень, и при одновременном изменении знаков всех li он должен изменить знак. Но поскольку одновременное изменение знаков li сводится при таком расположении узлов лишь к перемене их нумерации, то величина w должна сохраниться, что возможно только при ш = 0. Утверждение доказано.

Замечание 1. Доказательство справедливо для неравномерной сетки.

Замечание 2. Число узлов предполагалось произвольным; очевидйо, симметричное расположение узлов относительно точки x/f означает, что при нечетном числе узлов точка 4" совпадает с центральным узлом, а при четном -лежит между средними узлами.

Замечание 3. Повышение точности достигается не только в самих точках повышенной точности, но и в достаточно малой их окрестности, где изменение производной не превышает погрешности формулы; для точки л:!* это окрестность размером 0{h), для - О (/гз) и т. д.

На произвольной сетке условие симметрии реализуется только в исключительных случаях. Но если сетка равномерна, то каждый ее узел симметрично окружен соседними узлами. Это позволяет составить несложные формулы хорошей точности для вычисления производных в узлах сетки.

Например, возьмем три соседних узла х, х, х и вычислим первую и вторую производные в среднем узле. Выражая в одночленных формулах (2) разделенные разности через узловые значения функции, легко получим

у (Xi) = (y-i - Уо) /2/1 + О (h), h = Xui-Xi = const, (6)

у" М = (У, - 2у, + Уо) /h + О {h). (7)

Формулу (6) часто записывают в несколько ином виде, удобном для определения производной в средней точке интервала сетки:

yh 1/2 = у (Xi -ц /2) = (г/г+1 - Уд/h + О (h),

XiJMi = Xi-\-IJl.

Аналогично можно вывести формулы более высокого порядка точности или для более высоких производных. Например, трех-



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 [23] 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170


0.0215