- •Глава 11. Численное дифференцирование и интегрирование функций
- •11.1. Численное дифференцирование функций
- •11.1.1. Численное определение первой производной
- •11.1.2. Численное определение второй и высших производных
- •11.1.3. Погрешность численного определения производных
- •11.2. Численное интегрирование. Классификация методов
- •11.3. Методы численного интегрирования Ньютона-Котеса. Линейная аппроксимация подынтегральной функции
- •11.3.1.Методы прямоугольников
- •11.3.2.Метод трапеций
- •11.4. Метод Симпсона (метод парабол)
- •11.5. Оценка погрешности формул Ньютона-Котеса
- •11.5.1. Оценка точности интегрирования по формуле левых прямоугольников
- •11.5.2. Оценка точности интегрирования по формуле средних прямоугольников
- •11.6. Вычисление интеграла с заданной точностью
- •11.6.1. Интегрирование с постоянным шагом. Метод Рунге апостериорной оценки погрешности численного интегрирования
- •11.6.2. Локальная оценка Интегрирование с постоянным шагом. Метод Рунге апостериорной оценки погрешности численного интегрирования
11.1.1. Численное определение первой производной
Рассмотрим произвольный внутренний узел сетки хi и аппроксимируем функцию F(x) в его левой окрестности интерполяционным полиномом первой степени Р1л(x), который представляет собой наклонную прямую, проходящей через узловые точки (уi-1, хi-1) и (уi, хi) (рис.11.1). Представим его при помощи разностного отношения первого порядка F(хi,хi-1) = (уi-уi-1)/h в виде интерполяционного многочлена Ньютона:
F(x) Р1л(x) = уi-1 + F(хi, хi-1)(х- хi-1) = уi-1 + (уi - уi-1)(х - хi-1)/h.
Тогда первая производная по (11.3) будет следующей:
F (x) Р1л (x) = F(хi, хi-1) = (уi - уi-1)/h. (11.4 а)
Рис.11.1
Формулу (11.4 а) называют левым разностным отношением, поскольку в ней рассматривается дополнительный узел хi-1, находящийся левее текущего хi.
Если принять в качестве дополнительного интерполяционного узла хi+1, находящийся справа от хi, то получим приближенное задание первой производной при помощи правого разностного отношения:
F (x) Р1п (x) = F(хi+1, хi) = (уi+1 - уi)/h. (11.4 б)
Общим недостатком левого и правого разностного отношения является отсутствие в них симметрии. Поэтому используют также центральное разностное отношение:
F (x) Р1ц (x) = 0,5(уi+1 - уi-1)/h. (11.4 в)
Его можно представить как результат усреднения левого и правого разностных отношений: Р1ц (x) = (Р1л + Р1п )/2.
Формулы (11.4 а)-(11.4 в) задают приближенный расчет первой производной F (x) в случае интерполирования функции F(x) степенным полиномом, проходящим через минимальное число узлов функции F(x), равное 2. В них F (x) заменяется константой - постоянным значением. Однако для расчета F (x) можно использовать степенные полиномы, проходящие через 3 и более узлов функции.
11.1.2. Численное определение второй и высших производных
Для численного определения второй производной недостаточно рассмотрения двух узлов сетки. Минимальное число узлов для интерполяции полинома равно 3, их выбирают симметрично относительно текущего узла хi:{хi-1, хi, хi+1}. Минимальная степень интерполяционного полинома равна 2, т.е. он является квадратичной параболой.
Уравнение параболы Р2(x), проходящей через точки (уi-1, хi-1), (уi, хi) и (уi+1, хi+1) представим при помощи разностных отношений первого порядка F(хi,хi-1) = (уi-уi-1)/h и второго порядка F(хi+1,хi,хi-1) = (F(хi+1, хi) - F(хi, хi-1))/( хi+1 - хi-1) = 0,5(уi+1 -2уi +уi-1)/h2 в виде интерполяционного многочлена Ньютона:
F(x) Р2(x)= уi-1+ F(хi,хi-1)(х- хi-1)+ F(хi+1,хi,хi-1)(х-хi-1)(х-хi) =
= уi-1 + (уi-уi-1)(х-хi-1)/h +0,5(уi+1 -2уi +уi-1) )(х-хi-1)(х-хi)/(h2).
Первая производная по (11.3) в этом случае будет следующей:
F (x) Р2 (x) = F(хi,хi-1) + F(хi+1,хi,хi-1)(2х - хi - хi-1) =
= (уi - уi-1)/h + 0,5(уi+1 -2уi+уi-1)(2х - хi - хi-1)/(h2). (11.5)
Выражение (11.5) является примером приближенного расчета первой производной по трем узлам. В отличие от выражений (11.4 а)-(11.4 в) оно является линейной функцией от x, т.е. принимает различные значения при изменении x. В частности, при подстановке х=хi выражение (11.5) для Р2(x) будет совпадать с центральным разностным отношением (11.4 в).
Дифференцируя (11.5) повторно, получим приближенную формулу для второй производной по трем узлам:
F (x) Р2 (x) = 2F(хi+1,хi,хi-1) = (уi+1 -2уi + уi-1)/(h2). (11.6)
Используя интерполяцию функции полиномами более высокой степени, можно получать новые формулы для ее первой и второй производных, а также формулы для производных более высоких порядков. Минимальное число узлов, необходимое для вычисления s-й производной, равно s +1.
Построенные по минимальному числу узлов разностные отношения для численного расчета производных нечетных порядков (s=1,3,5,…) являются несимметричными, для четных порядков (s =2,4,6,…) – симметричными. В этом случае соответствующая производная заменяется постоянным числовым значением. Для построения центрального отношения при нечетном порядке s=1,3,5,… можно, как и для первого порядка, использовать полусумму левого и правого отношений.
Общее правило для построения разностного отношения для численного расчета производной порядка s по минимальному числу узлов (s+1) на равномерной сетке с шагом h следующее:
1) коэффициенты при узлах в числителе отношения равны биномиальным коэффициентам в разложении степени (1+(-1))s;
2) числитель отношения равен степени hs.
Примеры разностных отношений, построенных по минимальному числу узлов для высших производных:
s=3) (левое разностное отношение):
F(3)л(x) Р3(3)(x) = (уi+1 - 3уi + 3 уi-1 - уi-2)/(h3); (11.7)
s=4) (центральное разностное отношение):
F(4) (x) Р4(4)(x) = (уi+2 - 4уi+1 + 6уi - 4уi-1 + уi-2)/(h4). (11.8)
Центральное разностное отношение порядка s=3:
F(3)ц(x) = ( F(3)л(x)+F(3)п(x))/2 = (уi+1 - 3уi + 3 уi-1 - уi-2 +уi+2 - 3уi+1 + 3 уi - уi-1)/(2h3) = = (уi+2 - 2уi+1 + 2 уi-1 - уi-2 )/(2h3).
Если для построения приближенной формулы производной порядка s используется р > s +1 число узлов, то в итоге получается не константа, а многочлен степени (р - s -1) относительно х.
При повышении степени интерполяционного полинома р вначале точность приближения производных возрастает за счет более точного учета общей формы кривой. Однако затем начинает сказываться осцилляция многочлена между корнями, т.е. локальная интерполяция начинает переходить в глобальную. Также возрастают расчетные погрешности. Поэтому оптимальная степень интерполяционного полинома р должна решаться с учетом всех этих факторов.
Пример 1. Значения функции F(x) = lnx заданы на отрезке [3,6; 4,4] на равномерной сетке с шагом 0,2 в первых трех столбцах Таблицы 11.1.
Найти для 1) узловой точки x = 4,0 и 2) промежуточной точки x = 4,05:
а) левое, правое и центральное разностные отношения, численно приближающие первую производную,
б) разностное отношение второго порядка, приближающее вторую производную,
в) левое, правое и центральное разностные отношения третьего порядка, приближающие третью производную.
Сравнить получаемые значения с точными величинами производных.
Таблица 11.1. Узловые значения функции F(x) = lnx и ее разностные отношения порядков 1,2,3
i |
xi |
F(x) |
F(хi+1,хi) |
F(хi+1,хi,хi-1) |
F(хi+2,хi+1,хi,хi-1) |
0 |
3,6 |
1,280934 |
0,270335 |
-0,069350 |
0,034000 |
1 |
3,8 |
1,335001 |
0,256465 |
-0,062550 |
0,028875 |
2 |
4,0 |
1,386294 |
0,243955 |
-0,056775 |
|
3 |
4,2 |
1,435085 |
0,232600 |
|
|
4 |
4,4 |
1,481605 |
|
|
|
Решение. Аналитические выражения для производных имеют вид:
F (x) = (lnx) = 1/x; F (x) = -1/x2; F (x) = 2/x3.
Построим в столбцах 4,5,6 Таблицы 11.1. значения всех возможных разностных отношений порядков 1,2,3 - F(хi+1,хi), F(хi+1,хi,хi-1) и F(хi+2,хi+1,хi,хi-1).
1. Узловая точка xi = 4,0; i =2:
а) точные значения производных: F (4,0) = 1/(4,0) = 0,25; F (4,0) = -1/(4,0)2 = -0,0625; F (4,0) = 2/(4,0)3 = 0,03125;
б) левое, правое и центральное разностные отношения, аппроксимирующие значение первой производной F (4,0) = F (х2), равны:
F(х1,х2) = 0,256465; F(х2,х3) = 0,243955; F ц (4,0) = (F(х1,х2)+F(х2,х3))/2 = 0,250210;
абсолютные погрешности их равны 0,006465; 0,006045; 0,000210;
в) разностное отношение второго порядка F(х3,х2,х1) = -0,062550; абсолютная погрешность при расчете второй производной равна 0,000050;
д) левое, правое и центральное разностные отношения третьего порядка:
F(х4,х3,х2,х1) = 0,028875, F(х3,х2,х1,х0) = 0,034000,
F ц (4,0) = (F(х4,х3,х2,х1)+F(х3,х2,х1,х0))/2 = 0,0314375; абсолютные погрешности их равны 0,002375; 0,002750; 0,0001875.
2. Промежуточная x = 4,05; i =2:
а) точные значения производных: F (4,05) = 1/(4,05) = 0,2469136; F (4,05) = -1/(4,05)2 = -0,0609663; F (4,05) = 2/(4,05)3 = 0,0301068;
б) левое, правое и центральное разностные отношения, аппроксимирующие значение первой производной F (4,05) принимаем по ближайшей узловой точке х2; их абсолютные погрешности равны 0,0095514; 0,0029586; 0,0015832964;
в) разностное отношение второго порядка F(х3,х2,х1) = -0,062550 дает абсолютную погрешность при расчете второй производной в точке 4,05, равную 0,0015837;
д) левое F(х4,х3,х2,х1), правое F(х3,х2,х1,х0) и центральное F ц = (F(х4,х3,х2,х1)+ F(х3,х2,х1,х0))/2 разностные отношения третьего порядка дают абсолютные погрешности при расчете третьей производной 0,0012318; 0,0038932; 0,0013307.