
- •2.3. Задачи на собственные значения
- •2.4. Дифференциальные линейные неоднородные уравнения с переменными коэффициентами
- •2.4.1. Уравнение Эйлера
- •2.4.2. Решение задачи Коши методом степенных рядов
- •2.4.3. Построение общего решения линейного неоднородного уравнения методом степенных рядов
- •2.4.4. Применение формулы Тейлора
- •2.4.5. Особенности суммирования рядов на эвм, шаговый подход в методах степенных рядов
- •2.5. Системы дифференциальных уравнений
- •2.5.1. Метод исключения
- •2.5.2. Метод Эйлера
- •2.5.3. Метод вариации произвольных постоянных
- •2.6. Приближённые аналитические методы решения обыкновенных дифференциальных уравнений
- •2.6. 1. Метод Бубнова
- •2.6.2. Метод наименьших квадратов
- •2.6.3. Метод коллокаций
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. При этом получены значения искомой
функции в узловых точках на границах
участков. Расхождение с точным решением
наблюдается только в последнем седьмом
разряде числа. Эти ошибки малы и
обусловлены ошибками округления при
выполнении арифметических операций.
Таким образом, шаговый подход в методе
степенных рядов позволяет получить
результаты с высокой точностью при
решении задачи Коши на машине с
ограниченной разрядной сеткой.