![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
2.1 Построение формул численного дифференцирования на основе первой интерполяционной формулы Ньютона.
Пусть дифференцируемая функция y = f (x) задана своими значениями
y 0, y 1, y 2, …, yn, на сетке равноотстоящих узлов : x 0, x 1, x 2, …, xn отрезка [ a, b ], т.е. в данном случае:
xi = x 0 + ih, где i = 1, 2, …, n,
где h > 0 - шаг сетки (или таблицы).
Для нахождения на отрезке [ a, b ] значений производных y ¢ = f¢ (x), y ¢¢ = f¢¢ (x) и т.д., функцию y = f (x) в узлах отрезка [ a, b ] (приближённо) заменяют первым интерполяционным полиномом Ньютона, построенным для данной системы равноотстоящих узлов .
y (x)» Pn (x 0 + qh) = y (x 0) + q D y 0 + ![]() ![]() ![]() ![]() ![]() | (4) |
Производя перемножение биномов в формуле (4) получим:
y (x)» y (x 0) + q D y 0 + +
+
+ … (5)
Поскольку , то в соответствии с выражениями (4) и (5) функцию Pn (x 0 + qh) можно рассматривать как сложную функцию переменной x. Поэтому в соответствии с правилом дифференцирования сложной функции имеем:
f¢x (q (x)) @ [ Pn (x 0 + q (x) h)] ¢x = [ Pn (x 0 + q (x) h)] ¢q × q¢x, где q¢x
и, выполняя дифференцирование формулы (5), получаем:
yx ¢(x) = y¢q (x 0 + q (x) h)× q¢x @ ![]() | (6) |
Далее по аналогии с выражением (6) для y ¢(x) можно написать выражение для y ²(x) и y ¢¢¢(x):
y ¢¢(x) @ (7)
y ¢¢¢(x) @ (8)
Таким же образом в случае необходимости можно вычислить и производные функции y (x) любого порядка.
Наиболее важной в приложениях является простейшая формула для аппроксимация второй производной с помощью разностного отношения:
y ¢¢(x)» . (9)
Формула (9) получается из выражения (5) при n = 2, на промежутке x Î(x 0, x 2).
Аппроксимация второй производной в виде разностного отношения (9) часто востребована при построении конечноразностных методов решения краевых задач для обыкновенных дифференциальных уравнений второго порядка и при разработке численных методов решения уравнений в частных производных.
Замечание. Приводимые здесь рассуждения и выкладки имеют смысл только в том случае, когда заранее известно, что для функции y = f (x) в принципе существуют производные рассматриваемых порядков, т.е. мы заранее из каких-либо соображений знаем степень гладкости функции y = f (x).
2.2 Численное дифференцирование в узловых точках таблицы.
Иногда требуется находить производные функции y (x) в самих табличных точках x i (т.е. узлах сетки). В этом случае формулы численного дифференцирования упрощаются.
При построении интерполяционного полинома Ньютона каждое табличное значение xi, в котором нужно вычислить значение производной f¢ (xi), может быть принято за базовый узел x 0. Поэтому в случае, когда базовым узлом x 0 является узел xi, переменная в формулах (6) – (8) будет равна
и формулы (6) – (8) перепишутся в виде:
y ¢(x) @ ![]() ![]() ![]() ![]() | (10) |
Формулами (10) задаются выражения для аппроксимации производных y ¢(x), y ¢¢(x), y ¢¢¢(x) функции y = f (x) вблизи табличной точки x i, y (xi).
При подстановке в формулы (10) вместо x значения базового узла xi
(x = xi) переменная обращается в нуль и для значений производных в узлах таблицы, т.е. в точках x = x i получим следующие выражения:
y ¢(xi) @ (11)
y ¢¢(xi) @ (12)
y ¢¢¢(xi) @ (13)
Чтобы построить аппроксимации (11) - (13) для y ¢(xi) и y ¢¢(xi), включающие, например, конечные разности пятого порядка, нужно по формулам (4) или (5) построить первый интерполяционный полином Ньютона пятого порядка (n = 5), выбрав в качестве базового узла точку xi. Отметим, что в этом случае для вычисления значений конечных разностей D yi, D2 yi, D3 yi, D4 yi, D5 yi необходимо использовать шесть строк из таблицы значений функции y = f (x):
y (xi), ® y (xi+ 1), ® y (xi+ 2), ® y (xi+ 3), ® y (xi+ 4), ® y (xi+ 5).
Формулы численного дифференцирования (10) - (13), построенные на основе первой интерполяционной формулы Ньютона, более эффективны для использования в начальной части таблицы значений функции, т.е. когда в таблице значений функции «ниже» базового узла xi имеется достаточное количество строк, необходимых для вычисления соответствующих значений конечных разностей.
Аналогичные формулы численного дифференцирования могут быть получены и на основе второй интерполяционной формулы Ньютона. Они более эффективны при выборе базовых узлов в конечной части таблицы значений функции. Также можно вывести и ряд «центральных» формул численного дифференцирования на основе рассмотренных ранее интерполяционных формул Гаусса, Бесселя, Стирлинга, такие формулы более эффективно «работают» в близи центральных узловых точек таблицы значений функции [1, стр. 567 - 570].
Практические рекомендации по использованию конечноразностных формул численного дифференцирования.
1. Для нахождения значений производных y ¢(x), y ¢¢(x), y ¢¢¢(x) … функции y (x) в некоторой фиксированной (межузловой) точке x* таблицы значений функции
y = f (x) в качестве базового узла xi в формулах (10) необходимо выбрать ближайшее к x* табличное значение аргумента xi (лежащее левее точки x*).
2. При желании получить аппроксимации производных y ¢(x), y ¢¢(x), y ¢¢¢(x) … с наибольшей точностью максимальный порядок конечных разностей в формулах (10) - (13) определяется при построении таблицы конечных разностей функции y = f (x). При этом, исходя из анализа таблицы конечных разностей, необходимо оценить оптимальную степень n интерполирующего полинома Pn (x) и сохранить в формулах (10) - (13) конечные разности до D nyi включительно.
3. Отметим, что занижение степени интерполирующего полинома Pn (x) (4) - (5) отрицательно сказывается на точности полученных формул численного дифференцирования так же, как и необоснованное завышение его степени. Завышение степени полинома выше оптимальной приводит к учёту в формулах численного дифференцирования ошибок округления. Это происходит потому, что из-за ограниченной точности задания значений сеточной функции y (x) конечные разности высоких порядков начинают возрастать с увеличением их порядка вследствие «расползания» исходных ошибок округления и, следовательно, конечны разности высоких порядков могут содержать большие ошибки.
2.3 Связь приближённых значений производной функции с узловыми значениями самой функции.
Адаптируем полученную выше формулу численного дифференцирования:
y ¢(x) @ (6)
для наиболее часто используемых практических ситуаций.
Если показатель - n степени интерполяционного полинома Ньютона (5), лежащего в основе формулы (6), зафиксировать соответственно равным: n = 1, n = 2, n = 3, то это будет соответствовать ситуации, когда дифференцируемая функция y = f (x) на отрезке интерполирования заменяется соответственно:
a. прямой (n = 1) - случай линейной интерполяции по двум точкам x 0; x 1;
b. параболой (n = 2) - случай квадратичной интерполяции по трём точкам x 0; x 1; x 2;
c. кубической параболой (n = 3) - случай кубической интерполяции по четырём точкам x 0; x 1; x 2; x 3.
Для рассматриваемых случаев из формулы (6) получаются следующие выражения для приближённых значений производной y ¢(x) функции y = f (x):
для x Î[ x 0; x 1] (14)
– оценка (аппроксимация) производной на основе линейной интерполяции.
для x Î[ x 0; x 2] (15)
– оценка (аппроксимация) производной на основе квадратичной интерполяции.
для x Î[ x 0; x 3] (16)
– оценка (аппроксимация) производной на основе кубической интерполяции.
Получим на основе формул (14) – (16) аппроксимации для y ¢(x) = f¢ (x) в узлах интерполяции, выраженные через значения функции y = f (x) в узлах сетки. Для этого учтём, что при подстановке в формулы (14) - (16) вместо переменной x узловых значений x 0, x 1, x 2; x 3 переменная будет соответственно равна: 0, 1, 2, 3.
a) Случай линейной интерполяции: n = 1, x Î[ x 0; x 1].
В этом случае на отрезке [ x 0; x 1] функция y = f (x) заменяется прямой линией P 1(x 0 + qh) = y (x 0) + q D y 0, проходящей через точки x 0 и x 1, а её производная (6) приближённо заменяется выражением: , где D y 0 = y (x 1) – y (x 0)
Поэтому из (6) в данном случае имеем:
(17)
б) Случай квадратичной интерполяции: n = 2, x Î[ x 0; x 2].
В этом случае на отрезке [ x 0; x 2] функция y = f (x) заменяется параболой:
P 2(x 0 + qh) = y (x 0) + q D y 0 + ,
проходящей через точки x 0, x 1, x 2, а её производная f¢ (x) (6) заменяется выражением:
, где D y 0 = y (x 1) – y (x 0); D2 y 0 = y (x 2) – 2 y (x 1) + y (x 0);
Откуда, учитывая, что при x = x 0 q = 0, а при x = x 1 q = 1, при x = x 2 q = 2, получаем:
(18)
(19)
(20)
в) Случай кубической интерполяции: n = 3, x Î[ x 0; x 3].
В этом случае на отрезке [ x 0; x 3] функция y = f (x) заменяется кубической параболой, проходящей через точки x 0, x 1, x 2, x 3:
P 3(x 0 + qh) = y (x 0) + q D y 0 + +
,
а её f¢ (x) (6) заменяется выражением:
,
где D y 0 = y (x 1) – y (x 0); D2 y 0 = y (x 2) – 2 y (x 1) + y (x 0); D3 y 0 = y (x 3) – 3 y (x 2) +3 y (x 1) – y (x 0);
Так как при x = x 0 q = 0, при x = x 1 q = 1, при x = x 2 q = 2, при x = x 3 q = 3, получаем:
(21)
(22)
(23)
(24)
Дата публикования: 2015-09-17; Прочитано: 543 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!