Особенности суммирования рядов на ЭВМ, шаговый подход в методах степенных рядов
Особенности суммирования рядов на ЭВМ,
шаговый подход в методах степенных рядов
Если решение дифференциального уравнения получено в виде степенного ряда, то вычисление его суммы при заданном значении аргумента производится, как правило, с помощью ЭВМ. Из-за ограниченности разрядной сетки машины суммирование знакочередующегося ряда может привести к существенным погрешностям [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 | Ещё посмотрите лекцию "5.5. Жизнь и творчество Г.С. Сковороды" по этой теме. 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. При этом получены значения искомой функции в узловых точках на границах участков. Расхождение с точным решением наблюдается только в последнем седьмом разряде числа. Эти ошибки малы и обусловлены ошибками округления при выполнении арифметических операций. Таким образом, шаговый подход в методе степенных рядов позволяет получить результаты с высокой точностью при решении задачи Коши на машине с ограниченной разрядной сеткой.