Решение обыкновенных дифференциальных уравнений. Метод конечных разностей для численного решения дифференциальных уравнений

Метод последовательных приближений (метод Пикара)

 

Пусть дано уравнение

 

, (5.52)

 

правая часть, которого в прямоугольнике непрерывна и имеет непрерывную частную производную по у. Требуется найти решение уравнения (5.52), удовлетворяющее начальному условию

 

. (5.53)

 

Интегрируя обе части уравнения от до получим

 

 

или

 

. (5.54)

 

Уравнение (5.52) заменяется интегральным уравнением (5.54), в котором неизвестная функция у находится под знаком интеграла. Интегральное уравнение (5.54) удовлетворяет дифференциальному уравнению (5.52) и начальному условию (5.53). Действительно,

.

 

Заменяя в равенстве (5.54) функцию у значением , получим первое приближение

 

.

 

Затем в уравнении (5.54) заменив у найденным значением , получаем второе приближение:

 

.

 

Продолжая процесс далее, последовательно находим

 

,

.

 

Таким образом, составляем последовательность функций

 

.

 

Справедлива следующая теорема.

 

Теорема 6.1. Пусть в окрестности точки функция f(х,у) непрерывна и имеет ограниченную частную производную . Тогда в некотором интервале, содержащем точку , последовательность сходится к функции у(х), служащей решением дифференциального уравнения у = f(x,y) и удовлетворяющей условию

у(х0) = у0.

 

Оценка погрешности метода Пикара определяется, но формуле

 

,

 

где при ; - постоянная Липшица для области ; - величина определения окрестности ; a и b – границы области R.

Пример 1. Найти решение задачи Коши методом Пикара:

Найдём несколько приближений по методу Пикара. Пусть , тогда:

Как легко видеть

,

то есть при получим разложение в ряд функции или , что является аналитическим решением задачи.

 

Метод последовательного дифференцирования. Пусть дано дифференциальное уравнение n-го порядка:

(5.55)

с начальными условиями

. (5.56)

Представим решение уравнения (5.55) в окрестностях точки х0 в виде ряда Тейлора:

(5.57)

где , а h – достаточно малая величина.

Для нахождения коэффициентов ряда (5.57) уравнение (5.55) дифференцируют по х нужное число раз, используя условия (5.56):

Если , то получается ряд Тейлора по степеням х:

(5.58)

Этот метод редко применяется на практике, поскольку при достаточно большом n он слишком громоздок, а кроме того, при достаточном удалении х от х0 остаточный член может не стремиться к нулю.

Пример 2. Найти решение задачи Коши методом последовательного дифференцирования:

Решение

Тогда, подставив полученные значения в (5.58), получим ответ:

.

Метод неопределенных коэффициентов. Пусть дано дифференциальное уравнение

, (5.59)

с начальным условием .

Метод неопределенных коэффициентов состоит в том, что решение уравнения (5.59) отыскивают в виде ряда с неизвестными коэффициентами

(5.60)

которые находят с помощью подстановки ряда (5.60) в уравнение (5.59), зачем приравнивают коэффициенты при одинаковых степенях х и используют начальное условие. Найденные значения коэффициентов подставляют в ряд (5.59).

Пример 3. Найти решение дифференциального уравнения у" + ху = 0 такое, что у = 0 и y' = 1 при х = 0. Из теории дифференциальных уравнений следует, что такое решение существует и имеет вид степенного ряда

у = х + c2x2 + c3x3 + c4x4 + c5x5 + ….

Подставляя это выражение вместо у в правую часть уравнения, а вместо y" — выражение

2c2 + 3·2с3х + 4·3с4х2 + 5·4с5х3 + …,

затем, умножая на х и соединяя члены с одинаковыми степенями х, получим:

2c2 + 3·2c3x + (1 + 4·3c4) x2 + (c2 + 5·4c5) x3 + … = 0,

откуда при определении неизвестных коэффициентов получается бесконечная система уравнений: 2c2 = 0; 3·2с3 = 0; 1 + 4·3c4 = 0; c2 + 5·4c5 = 0;...

Решая последовательно эти уравнения,

т. е.

Метод Эйлера

Решить дифференциальное уравнение численным методом - это значит для заданной последовательности аргументов и числа , не определяя функцию у = F(x), найти такие значения что (i = 1,2,...,n) и .

Таким образом, численные методы позволяют вместо нахождения функции у = F(x) получить таблицу значений этой функции для заданной последовательности аргументов. Величина называется шагом интегрирования. Рассмотрим некоторые из численных методов.

Метод Эйлера является сравнительно грубым и применяется в основном для ориентировочных расчетов.

Пусть дано дифференциальное уравнение первого порядка

 

, (5.61)

 

с начальным условием

 

. (5.62)

 

Требуется найти решение уравнения (5.61) на отрезке [а, b].

Разобьем отрезок [а,b] на n равных частей и получим последова­тельность , где (i = 1, 2,..., n), a - шаг интегрирования.

Выберем k-й участок и проинтегрируем уравнение (5.61):

 

. (5.63)

 

Тогда формула (5.63) примет вид

 

(5.64)

 

Обозначив, т.е. , получим

 

(5.65)

 

Продолжая этот процесс и каждый раз принимая подынтегральную функцию на соответствующем участке постоянной и равной ее значению в начале участка, получим таблицу решений дифференциального уравнения на заданном отрезке [а, b].

Если функция f(x,y) в некотором прямоугольнике

 

 

удовлетворяет условию

 

(N = const) (5.66)

 

и, кроме того.

 

(М = const) (5.67)

то имеет место следующая оценка погрешности:

 

, (5.68)

 

где - значение точного решения уравнения (5.61) при - приближенное значение, полученное на n-м шаге.

Формула (5.68) имеет в основном теоретическое применение. На практике, как правило, применяют "двойной просчет". Сначала расчет ведется с шагом h, затем шаг дробят и повторный расчет ведется с шагом . Погрешность более точного значения оценивается формулой

 

(5.69)

 

Пример:

Решение:

Разобьём отрезок на n частей (n=4): , i=1,…,n-1

h=0,25

  x0 x1 x2 x3 x4
x 0,25 0,5 0,75

 

Далее по формуле (5.56) получим текущие значения yi:

x 0,25 0,5 0,75
y 67/64 (1,05) 1139/1024 (1,11) 76313/ 65536 (1,16)
f(x,y) 3/16 (0,19) 67/256 (0,26) 3417/16386 (0,21)  

 

X Y(x) Ряд Эйлера
0,25 1,026384 1,026042
0,5 1,086904 1,083333 1,046875
0,75 1,150993 1,140625 1,112305
1,18136 1,166667 1,164444

 

Метод Эйлера может быть применен к решению систем дифференциальных уравнений и дифференциальных уравнений высших порядков. Однако в последнем случае дифференциальные уравнения должны быть приведены к системе дифференциальных уравнений первого порядка.

Пусть задана система двух уравнений первого порядка

 

(5.70)

 

с начальными условиями

 

, (5.71)

 

Приближенные значения и находятся по формулам

 

, (5.72)

 

где , (i = 0,1,2,…). (5.73)

 

Метод Рунге-Кутта

Метод Рунге-Кутта является одним из методов повышенной точности. Он имеет много общего с методом Эйлера.

Пусть на отрезке [а, b] требуется найти численное решение уравнения

 

, (5.74)

 

с начальным условием

.(5.75)

 

Разобьем отрезок [а, b] на n равных частей точками
(i = 1,2,..., n, a - шаг интегрирования). В методе Рунге-Кутта, так же, как и в методе Эйлера, последовательные значения у, искомой функции у определяются по формуле

 

. (5.76)

 

Если разложить функцию у в ряд Тейлора и ограничиться членами до включительно, то приращение функции можно представить в виде

 

, (5.77)

 

где производные , , находят последовательным дифференцированием из уравнения (5.74).

Вместо непосредственных вычислений по формуле (5.26) методом Рунге-Кутта определяют четыре числа:

 

(5.78)

 

Можно доказать, что если числам придать соответственно веса 1/6; 1/3; 1/3; 1/6, то средневзвешенное этих чисел, т.е.

 

(5.79)

 

с точностью до четвертых степеней равно значению , вычисленному по формуле (5.77):

 

. (5.80)

 

Таким образом, для каждой пары текущих значений и по формулам (5.27) определяют значения

(5.81)

 

Метод Рунге-Кутта имеет порядок точности на всем отрезке [а,b]. Оценка точности этого метода очень затруднительна. Грубую оценку погрешности можно получить с помощью "двойного просчета" по формуле

 

, (5.82)

 

где - значение точного решения уравнения (5.74) в точке а и - приближенные значения, полученные с шагом h/2 и h.

Если - заданная точность решения, то число n (число делений) для определения шага интегрирования выбирается таким образом, чтобы

 

. (5.83)

 

Однако шаг расчета можно менять при переходе от одной точки к другой.

Для оценки правильности выбора шага h используют равенство

 

, (5.84)

 

где q должно быть равно нескольким сотым, в противном случае шаг h уменьшают.

Метод Рунге-Кутта может быть применен и к решению систем дифференциальных уравнений.

Пусть задана система дифференциальных уравнений первого порядка

 

(5.85)

 

с начальными условиями

 

, , . (5.86)

 

В этом случае параллельно определяются числа и :

 

(5.87)

 

где ;

 

;

;

;

;

;

;

.

 

Тогда получим решение системы

 

, . (5.88)

 








Дата добавления: 2015-11-06; просмотров: 11504;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.071 сек.