2.4.4. Применение формулы Тейлора

Пусть требуется учесть пять членов разложения решения зада-

чи Коши в степенной ряд

(2.82)

(2.83)

Ряд, представляющий решение задачи, можно построить по формуле Б.Тейлора (B.Taylor,1685-1731)

y'(0) y''(0) y 5(n) 0(0)

y= y(0) + ----- x + ------ x 52 0 +...+ 5  0------- x 5n 0 +... (2.84)

1! 2! n!

В рассматриваемой задаче первые два коэффициента ряда (2.84) определяются начальными условиями (2.83). Третий коэффициент y''(0)=0 получается непосредственно из дифференциального уравнения (2.82) при x=0. Для нахождения последующих коэффициентов запишем уравнение в виде

y''= -xy + x. (2.85)

Дифференцируем последовательно равенство (2.85).

y'''=- xy'- y+1, y 5(4) 0=-xy''-2y', y 5(5) 0=-xy'''-3y'',

y 5(6) 0=-xy 5(4) 0-4y''', y 5(7) 0=-xy 5(5) 0-5y 5(4) 0.

Полагая в этих равенствах x=0, получаем:

y'''(0)= 1, y 5(4) 0(0)=-2, y 5(5) 0(0)=0, y 5(6) 0(0)=-4, y 5(7) 0(0)= 10

После подстановки найденных коэффициентов в правую часть равенства (2.84) получаем приближённое решение

x 53 0 x 54 0 x 56 0 x 57

y=x + -- -2 -- -4 -- +10 -- +... (2.86)

3! 4! 5  06! 5  07!

Полученное выражение является решением при условии сходимости ряда и даёт достаточно точное значение функции y в малой окрестности точки x=0.

2.4.5. Особенности суммирования рядов на эвм, шаговый подход в методах степенных рядов

Если решение дифференциального уравнения получено в виде степенного ряда, то вычисление его суммы при заданном значении аргумента производится, как правило, с помощью ЭВМ. Из-за ограниченности разрядной сетки машины суммирование знакочередующегося ряда может привести к существенным погрешностям [9], [10] при неправильном использовании степенных рядов. Рассмотрим пример. Пусть методом степенных рядов решается задача Коши:

y' + 2xy = 0,

y(0) = 1. (2.87)

Точное решение задачи . Решение этой же задачи методом степенных рядов имеет вид

(2.88)

Вычисление суммы ряда (2.88) на ЭВМ с семиразрядной сеткой даёт результат y = 0.0004717178 при x=3,1. Точное решение с семью верными значащими цифрами y = 0.00006705482. Как видим, решение, полученное на ЭВМ с помощью ряда, совершенно ошибочно. В этом примере имеет место эффект суммирования близких по модулю и противоположных по знаку чисел. Максимальный по модулю член ряда имеет значение . Сравнение с точным решением показывает, что при суммировании взаимно уничтожаются все семь найденных верных цифр в выражениях наибольших по модулю членов ряда. Поэтому окончательный результат получается ошибочным. В данном примере для x=3,1 величины разрядной сетки машины не хватает для получения достоверного результата. Этот недостаток машины легко преодолеть, заставляя её суммировать ряд с меньшим значением аргумента. Для этого применим шаговый подход [10] в решении задачи (2.87). Разобьём интервал [0;3,1] на несколько участков. Длину каждого участка можно выбирать произвольно. Разделим интервал по схеме рис.2. Длина первого участка равна единице, второго - 0,8, третьего - 0,7 и последнего четвёртого - 0,6. Длины участков можно было бы выбрать одинаковыми. На каждом участке решение исходного дифференциального уравнения будем разлагать в ряд по степеням, 0 где- абсцисса начала участка номера "к".

Рис.2. Схема разбиения интервала интегрирования

(2.89)

Коэффициент определяется из начального условия на участке.

(2.90)

где - длина участка номера k-1.

Для вывода рекуррентного соотношения, определяющего коэффициенты ряда (2.89), перепишем уравнение задачи (2.87) в виде

(2.91)

Коэффициент 2x исходного уравнения представлен в (2.91) полиномом по степеням . Подставляя теперь (2.89) в уравнение (2.91), приводим подобные члены и приравниваем нулю коэффициенты при степеняхВ результате получаем рекуррентное соотношение

. (2.92)

Умножая обе части этого равенства на получаем более удобную для расчётов формулу

(2.93)

где - член ряда (2.89). Очевидно,

Результаты решения задачи (2.87) шаговым методом

степенных рядов

Таблица 3

Длина участка

Уточное

1

1,0

0,3678795

0,3678794

2

0,8

0,03916390

0,03916389

3

0,7

0,001930455

0,001930454

4

0,6

0,00006705486

0,00006705482

Результаты расчётов на той же семиразрядной машине, выполненные по формулам (2.89), (2.90),(2.93), представлены в таблице 3. В первом столбце указаны номера участков, в третьем столбце записаны найденные значения функций в концевых точках соответствующих участков. В четвёртом столбце представлены значения искомой функции с семью верными значащими цифрами. Смысл результатов, представленных в таблице 3, заключается в следующем. Вместо вычисления суммы ряда (2.89), представляющего решение уравнения задачи (2.87), при большом значении аргумента x = 3,1, четыре раза суммировался ряд (2.89) при меньших значениях аргумента: x = 1; x = 0,8; x = 0,7; x = 0,6. При этом получены значения искомой функции в узловых точках на границах участков. Расхождение с точным решением наблюдается только в последнем седьмом разряде числа. Эти ошибки малы и обусловлены ошибками округления при выполнении арифметических операций. Таким образом, шаговый подход в методе степенных рядов позволяет получить результаты с высокой точностью при решении задачи Коши на машине с ограниченной разрядной сеткой.

Соседние файлы в папке Метода по ОДУ теория