Численные методы. Ч.2. Учебное пособие
.pdf
Лекция 17 
После этого можно написать
xi+1 |
xi+1 |
|
∫ |
f (x, y(x ))dx ≈ ∫ Pk −1(x)dx . |
(17.8) |
xi |
xi |
|
Приравнивая выражения (17.7) и (17.8), можно получить формулу для определения неизвестного значения сеточной функции yi +1 в узле xi +1 :
xi+1
yi +1 = yi + ∫ Pk −1 (x )dx .
xi
На основе этой формулы можно строить различные многошаговые методы любого порядка точности. Порядок точности зависит от степени интерполяционного многочлена Pk −1 ( x ) , для построения которого используются значения сеточной функции yi , yi −1 , yi −2 ,…, yi −k +1 , вычисленных на k предыдущих шагах.
Широкораспространеннымсемействоммногошаговыхметодов являются методы Адамса. Простейший из них, получающийся при k =1 совпадает с методом Эйлера. В практических расчетах чаще всего используется вариант метода Адамса, имеющий 4-й порядок точности и использующий на каждом шаге результаты предыдущих четырех:
|
|
|
|
|
|
|
|
y |
|
= y + |
|
h |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
+1 |
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
i |
|
i |
24 |
|
|
|
|
|
|
|
|
|
, |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
55 f |
( |
x |
, y |
− 59 f |
( |
x |
i −1 |
, y |
|
|
+ 37 f |
( |
x |
i |
−2 |
, y |
− 9 f |
( |
x |
i −3 |
, y |
|
||
|
i |
i ) |
|
|
i −1 ) |
|
|
|
|
i −2 ) |
|
|
i −3 ) |
|||||||||||
|
|
|
|
|
|
|
|
|
k =3,4,... . |
|
|
|
|
|
|
|
|
y0 , y1 , |
||||||
Для начала расчетов требуются 4 «разгонные» точки |
||||||||||||||||||||||||
y2 , y3 , которые можно получить, |
например, одним из методов |
|||||||||||||||||||||||
Рунге-Кутты. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Выводы
В лекции поставлены и освещены вопросы, касающиеся методов Рунге-Кутты. Приведены способы построения методов Рунге-Кутты. Для нахождения решения задачи Коши приведены методы Рунге-Кутты различных порядков и многошаговые методы. Для этих методов приведены оценки погрешностей най-
- 81 -
ЧИСЛЕННЫЕ МЕТОДЫ
денного решения. Разобраны методы Рунге-Кутты для решения систем обыкновенных дифференциальных уравнений и уравнений высших порядков.
Вопросы для самопроверки
1.Приведите приближенную формулу погрешности в каждой точке сетки для методов Рунге-Кутты.
2.Найдите решение задачи Коши для ДУ
y′(x) = y(x) , y(0) =1 .
3. Решите методом Рунге-Кутты второго порядка задачу Коши для ДУ
y′(x) = y(x) , y(0) =1
с шагом 0.1 на отрезке [0, 0.5] . Сравните полученное решение с аналитическим. Укажите погрешности в каждой точке сетки.
4.Сформулируйте идею построения методов Адамса.
5.Опишите преимущества и недостатки методов Адамса в сравнении с методами Рунге – Кутты.
Рекомендованная литература: 2, 3, 4, 7, 8, 9, 10, 12, 13.
- 82 -
Лекция 18 
Лекция 18.
РЕШЕНИЕ КРАЕВЫХ ЗАДАЧ ДЛЯ ОДУ
План
18.1.Постановка задачи.
18.2.Метод конечных разностей для линейных дифференциальных уравнений 2-го порядка.
18.3.Метод прогонки.
18.1. ПОСТАНОВКА ЗАДАЧИ
Рассмотрим постановку краевых задач для ОДУ второго порядка с граничными условиями различных родов.
Пусть на отрезке x [a; b] определена дважды непрерывно дифференцируемая функция y(x) , поведение которой описывается линейным неоднородным ОДУ второго порядка.
Принципиальным отличием краевой задачи от задачи Коши для ОДУ является задание дополнительных (краевых или граничных) условий более чем в одной точке независимой переменной (в задаче Коши дополнительные условия задаются, в одной точке называемой начальной).
Если на границах x =a и x =b заданы значения искомой функции y(a) и y(b) , то такие условия называются граничными условиями первого рода, а задача
y′′ + p(x) y′ + q(x) y = f (x) , a < x <b , |
(18.1) |
|
y(a) = A , |
x =a , |
(18.2) |
y(b) = B , |
x =b |
(18.3) |
называется первой краевой задачей для ОДУ (18.1). Условия
(18.2) и (18.3) геометрически означают, что при решении первой краевой задачи требуется найти интегральную кривую уравнения (18.1), проходящую через данные точки (a, A) , (b, B ) (рису-
нок 18.1)
- 83 -
ЧИСЛЕННЫЕ МЕТОДЫ
Рис. 18.1. Геометрический смысл первой краевой задачи
Если на границах заданы значения производных искомой функции, то такие условия называются граничными условиями
второго рода:
y′(a) = A , |
(18.4) |
y′(b) = B , |
(18.5) |
а задача (18.1), (18.4), (18.5) называется второй краевой зада-
чей для ОДУ (18.1). Условия (18.4) и (18.5) геометрически означают, что при решении второй краевой задачи требуется найти интегральную кривую уравнения (18.1), пересекающую прямые x =a , x =b под заданными углами α и β , где tgα = A , tgβ = B
(рисунок 18.2).
Рис. 18.2. Геометрический смысл второй краевой задачи
- 84 -
Лекция 18 
Если на границах заданы линейные комбинации искомой функции и ее первой производной:
|
0 |
|
( |
|
) |
1 |
|
( |
|
) |
|
|
α |
|
y |
|
a |
|
+ α |
y' |
|
a |
|
= A, |
(18.6) |
|
|
|
(b) |
+ β1 y'(b) |
= B, |
|||||||
β0 y |
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
α02 +α12 ≠ 0 ,β02 + β12 ≠ 0 ;
то такие условия называются граничными условиями третьего рода, а задача (18.1) (18.6) называется третьей краевой задачей для ОДУ (18.1).
Условия
y′(a) = A , y(b) = B
являютсячастнымслучаемусловийтретьегорода,таккак α0 = 0 , α1 =1 , β0 =1 , β1 = 0 . Геометрически данная краевая задача сводится к поиску интегральной кривой уравнения, проходящей через точку (b, B ) и пересекающей прямую x = A под данным углом α где tgα = A (рисунок 18.3).
Рис. 18.3. Геометрический смысл частной третьей краевой задачи
Чаще всего на разных границах задаются граничные условия различных родов. Такие задачи называются краевыми задачами со смешанными краевыми условиями.
В общем случае краевая задача может: а) иметь единственное решение; б) не иметь решений;
в) иметь несколько или бесконечно много решений.
- 85 -
ЧИСЛЕННЫЕ МЕТОДЫ
Теорема 18.1 (о существовании и единственности решения краевой задачи)
Для того чтобы существовало единственное решение краевой задачи (18.1) (18.6), необходимо и достаточно, чтобы однородная краевая задача
y′′ + p(x) y′ + q(x) y = 0 , a ″ x″ b
|
0 |
|
( |
|
) |
1 |
|
( |
|
) |
|
α |
|
y |
|
a |
|
+ α |
y' |
|
a |
|
= 0, |
|
|
|
(b) + β1 y'(b) = 0, |
||||||||
β0 y |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
имела только тривиальное решение y(x) ≡0 . Пример 18.1. Решить задачу Штурма-Лиувилля
|
|
|
|
|
1 |
|
|
3 |
|||
y′′ + λ y = 0, |
|
|
|
≤ x |
≤ |
|
|||||
2 |
2 |
||||||||||
|
|
|
|
|
|
|
|||||
|
1 |
|
3 |
|
|
|
|||||
|
|
|
|||||||||
y′ |
2 |
|
= y′ |
2 |
= 0 |
|
|
||||
|
|
|
|
|
|
|
|
|
|||
Решение
С целью сведения промежутка интегрирования к стандартному виду [0, l] в уравнении сделаем замену переменной. Обозначим
ξ = x − 12 .
Тогда ξ [0,1],
dxdy = ddyξ ddxξ = ddyξ ,
и задача принимает вид
d2 y |
= |
d2 y |
|
dx2 |
dξ 2 |
||
|
′′ |
|
|
y (ξ ) + λ y(ξ ) = 0 |
|
. |
|
≤ ξ ≤1 |
|
y′(0) = y′(1) = 0, 0 |
|
Рассмотрим последовательно три случая: λ < 0 , λ = 0 , λ > 0 .
Случай 1. λ < 0 .
В этом случае общее решение уравнения имеет вид
y = C1e− −λξ + C2e −λξ .
Используем граничные условия. Имеем
−С |
−λ + С |
2 |
−λ = 0 |
|
|||
|
1 |
|
|
|
, |
||
|
|
−λe− −λ + С |
|
−λe −λ = 0 |
|||
−С |
2 |
|
|||||
|
1 |
|
|
|
|
||
- 86 -
Лекция 18 
Или, после сокращения на |
|
|
−λ , |
||||||
|
|
−С + С |
2 |
= 0 |
|
||||
|
|
|
1 |
|
|
|
|
. |
|
|
|
|
|
|
|
|
+ С |
||
|
|
−С e− −λ |
e −λ = 0 |
||||||
|
|
|
1 |
|
|
|
2 |
|
|
Определитель данной системы |
|
||||||||
D = |
|
−1 |
1 |
|
|
= e− −λ − e −λ ≠ 0 |
|||
|
|
|
|||||||
|
|
e− |
−λ |
e −λ |
|
|
|
||
при λ < 0. Следовательно, |
C1 = C2 = 0 и y ≡ 0. |
||||||||
Таким образом, в случае λ < 0 данная задача имеет лишь тривиальные решения.
Случай 2. λ = 0 .
В этом случае уравнение имеет вид
y′′(ξ ) = 0
И его общее решение,
y = С1ξ + С2 .
Используем граничные условия. Имеем
′ |
= C |
= 0 |
|
y (0) |
. |
||
|
1 |
|
|
y′(1) |
= C1 = 0 |
|
|
Таким образом, в случае λ = 0 данной задаче удовлетворяет множество функций вида
y = C·1.
Случай 3. λ > 0 .
Общее решение уравнения имеет вид
у = С1 cos λξ + С2 sin λξ .
Используя граничные условия, имеем
|
= |
|
C2 |
λ = 0 |
|
|
y′(0) |
|
. |
||||
|
= −C |
λ sin |
λ + C |
|
λ cos λ = 0 |
|
y′(1) |
2 |
|
||||
|
1 |
|
|
|
|
|
Из первого уравнения С2 =0 , тогда из второго, |
|
|||||
|
|
sin |
λ = 0 |
|
|
|
Отсюда |
|
|
|
|
|
|
λ = π n , n N ,
или
- 87 -
ЧИСЛЕННЫЕ МЕТОДЫ
λn = (π n)2 .
Такимобразом,при λ > 0 решениямизадачиявляютсяфункции
yn (ξ) = C cosπ nξ ,
где C ≠ 0.
Пример 18.2. Решить смешанную задачу для волнового уравнения на отрезке
utt = |
9 |
uxx , 0 < x <2 , t >0 |
|
|
|||||||||
4 |
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||
u(x,0) = x(x − 2) , |
ut (x,0) =0 |
|
|
||||||||||
|
u(0,t) =0 , u(2,t) =0 |
|
|
||||||||||
Решение. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Положим |
u(x,t) = X (x)T(t) . |
|
|
|
|||||||||
|
|
|
|
|
|||||||||
Тогда из исходного уравнения имеем |
|
|
|
||||||||||
|
X ′′ |
= |
T ′′ |
|
= −λ (λ ≥ 0) . |
|
|
||||||
|
|
|
|
|
|
||||||||
|
X |
9 |
T |
|
|
|
|
|
|
||||
Рассмотрим |
|
|
|
4 |
|
|
|
|
|
|
|||
|
|
|
|
X ′′ |
|
|
|
|
|
||||
|
|
|
|
|
|
= −λ , |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
X |
|
|
|
|
|
|
|
где из граничных условий |
|
|
|
|
|
|
|||||||
Имеем |
|
X (0) = X (2) =0 . |
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
||
X = C1 cos |
λ x + C2 sin |
λ x . |
|
|
|||||||||
Используем граничные условия |
|
|
|
|
|||||||||
X (0) = C1 1 + C2 0 = 0 C1 = 0 |
|
|
|||||||||||
X (2) = C1 cos λ 2 + C2 sin |
|
λ 2 = 0 |
λ = |
π n |
, n N . |
||||||||
|
2 |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Отсюда |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
π n 2 |
|
|
|
|
|
|
|
|
|
λn = |
|
|
|
|
||||
и |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
- 88 -
Лекция 18 
|
X n |
= sin |
π n |
x |
, |
n N . |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Заметим, что n ≠ 0. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Рассмотрим уравнение |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
T ′′ + λn |
9 |
T = 0 . |
|
|
|
|
|
|||||||||||||||||
Имеем |
|
4 |
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Tn = An cos |
3 |
|
|
λn t + Bn sin |
3 |
|
λn t . |
||||||||||||||||||
|
|
|
|
|
2 |
|
||||||||||||||||||||
Тогда |
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
un (x,t) = X n (x)Tn (t) |
|
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|||||||||||||||||||||
и решение задачи имеет вид |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
∞ |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
u(x,t) = ∑un (x,t) , |
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
n=1 |
|
|
|
|
|
|
|
|
|
|
|
|||||
или, в развернутом виде, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
∞ |
|
3πn |
|
|
|
|
|
|
|
|
|
|
|
3πn |
|
|
|
πn x . |
|||||||
u = ∑(An cos |
t + Bn sin |
t)sin |
||||||||||||||||||||||||
|
|
|
|
|||||||||||||||||||||||
|
n=1 |
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
|
|
|
2 |
||||
Используем начальные условия. Имеем |
|
|||||||||||||||||||||||||
|
|
|
∞ |
|
|
|
|
|
|
|
|
π n |
|
|
= x(x − 2) |
|||||||||||
|
u(x,0) = |
∑An sin |
|
2 |
x |
|||||||||||||||||||||
|
|
|
n=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
||||||
|
|
|
∞ |
|
|
|
3π n |
|
|
|
π n |
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
ut (x,0) = ∑Bn |
|
|
|
|
|
|
|
sin |
|
|
x |
= 0 |
|
||||||||||||
|
|
4 |
|
2 |
|
|
||||||||||||||||||||
Отсюда |
|
|
n=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
2 |
π n xdx = |
2 |
|
|
|
|
|
|
|
|
|
|
|
π n xdx |
|||||||||||
An ∫sin2 |
∫ x(x − 2)sin |
|||||||||||||||||||||||||
|
0 |
2 |
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
|
|
|
|
|
|
2 |
|
||
B = 0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Интегрируя по частям, имеем |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
A = |
16 |
(cosπ n −1) |
|
|
|||||||||||||||||||||
|
(π n)3 |
|
|
|||||||||||||||||||||||
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
или |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A = |
|
16 |
|
|
((−1)n |
−1) |
|
|
||||||||||||||||
|
|
(π n)3 |
|
|
|
|||||||||||||||||||||
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
или
- 89 -
ЧИСЛЕННЫЕ МЕТОДЫ
−32 , n = 2m +1
An = (π n)3
0, n = 2m
Таким образом, окончательно решение задачи имеет вид
|
32 ∞ |
1 |
|
3π(2m +1) |
|
π(2m +1) |
|
|
u(x,t) = − |
|
m∑=0 |
|
cos |
|
t sin |
|
x . |
π 3 |
(2m +1)3 |
4 |
2 |
|||||
Далее разберем решение краевых задач численными методами.
18.2.МЕТОД КОНЕЧНЫХ РАЗНОСТЕЙ ДЛЯ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ 2-ГО ПОРЯДКА
Рассмотрим первую краевую задачу (18.1), (18.2), (18.3) и будем ее решать конечно-разностным методом, заменяя дифференциальные операторы с использованием формул численного дифференцирования.
Для этого введем конечно-разностную сетку с шагом h :
ωh = {xi = x0 + i h, i = 0,1, 2, , n} , n = b −h a
Поскольку ОДУ (18.1) описывает поведение функции y(x) внутри расчетной области x (a, b) , то производные первого и второго порядков можно аппроксимировать с помощью отношений центральных разностей со вторым порядком аппроксимации:
|
yi′ = |
y |
− y |
−1 |
− |
h2 |
f ′′(ξ1i ) = |
|
y |
− y |
−1 |
+ O(h2 ) , |
|
(18.7) |
||||||||||
|
|
i +1 |
i |
|
|
|
i +1 |
|
i |
|
||||||||||||||
|
|
|
2h |
|
|
|
6 |
|
|
2h |
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
yi′′= |
y − 2y + y |
|
− |
|
h2 |
f ′′′(ξ 2i ) = |
y − 2y |
|
+ y |
+ O(h |
|
) , (18.8) |
||||||||||||
i +1 |
|
|
2 |
i −1 |
|
|
|
|
|
i +1 |
|
2 |
|
|
i −1 |
2 |
||||||||
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
||||||
|
|
h |
|
|
|
|
|
12 |
|
|
|
|
|
h |
|
|
|
|
|
|
|
|||
|
|
|
|
|
pi = p(xi ) , |
qi =q(xi ) , |
fi |
= f (xi ) |
|
|
(18.9) |
|||||||||||||
ξ1i , ξ 2i (xi −1; xi +1 ) ,
i =1, 2, 3, , n −1
Подставляя (18.7) – (18.9) в ОДУ (18.1), получим следующую конечно-разностную схему:
yi +1 − 2yi |
+ yi −1 |
+ pi |
yi +1 |
− yi −1 |
+ qi |
yi |
= fi + O(h |
2 |
) , |
|
h |
2 |
|
|
2h |
|
|||||
|
|
|
|
|
|
|
|
|
||
- 90 -
