Численные методы. Ч.2. Учебное пособие
.pdf
Лекция 18 
i =1, 2, , n −1 , y0 = y(a) = A , i =0 ,
yn = y(b) = B , i = n ,
которую можно представить в виде следующей СЛАУ с трехдиагональной матрицей:
где |
ai yi −1 + bi |
yi + ci |
yi +1 = di , |
i =1, 2, , n −1 , |
(18.10) |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ai = |
1 |
− |
pi |
, |
bi |
= − |
2 |
+ qi , |
ci = |
1 |
+ |
pi |
, di = fi |
|
|
|
|
|
|
||||||||||
2 |
2h |
2 |
2 |
2h |
|
|||||||||
|
h |
|
|
|
h |
|
h |
|
|
|||||
При i =1 первое слагаемое в левой части (18.10) известно и равно:
|
|
|
1 |
|
p |
|
A ; |
|
a1 y0 |
= a1 y(a) = a1 |
A = |
|
|
− |
1 |
|
|
|
2 |
|
||||||
|
|
h |
|
|
2h |
|
||
первое уравнение системы (18.10) примет вид
b1 y1 + c1 y2 = d1* , где d1* = d1 − a1 y(a) ;
при i = n −1 последнее слагаемое в левой части (18.10) также известно и равно:
|
|
|
|
1 |
|
p |
|
B ; |
|
сn−1 yn |
= cn−1 |
y(b) = cn−1 |
B = |
|
|
+ |
n−1 |
|
|
|
2 |
2h |
|||||||
|
|
|
h |
|
|
|
|
||
последнее уравнение системы (18.10) примет вид
a − y − + b − y − = d*− , где d*− = d − − c − y(b) .
n 1 n 2 n 1 n 1 n 1 n 1 n 1 n 1
Таким образом система примет окончательный вид:
b y + c y = d* |
, |
|
|
||||
1 |
1 |
1 2 |
1 |
|
|
|
|
|
|||||||
|
|
|
|
+ ci yi +1 = di , |
|||
ai yi −1 + bi yi |
|||||||
|
|
|
|
|
|
|
|
|
|||||||
a |
y |
n−2 |
+ b |
y |
n−1 |
= d* |
, |
n−1 |
|
n−1 |
|
n−1 |
|
||
где
i = 2, 3, , n − 2 , d* = d − a y(a) , d*− = d − − c − y(b) .
1 1 1 n 1 n 1 n 1
- 91 -
ЧИСЛЕННЫЕ МЕТОДЫ
Последнюю систему запишем в матрично-векторном виде:
b1 |
c1 |
0 |
0 |
|
0 |
|
a2 |
b2 |
c2 |
0 |
|
0 |
|
|
0 |
a3 |
b3 |
c3 |
|
0 |
|
|
|
|
|
|
|
|
||||||
|
0 |
0 |
0 |
0 |
a |
|
|
|
|
|
|
|
n−1 |
0 |
|
|
y |
|
|
D |
|
|
|
0 |
|
|
|
1 |
|
|
1 |
|
|
|
|
y2 |
|
|
D2 |
|
|
||
0 |
|
|
y3 |
|
= |
D3 |
|
(18.11) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
b |
|
y |
n−1 |
|
D |
|
|
||
n−1 |
|
|
|
|
|
n−1 |
|
|
|
где D =d* , D − = d*− , D =d (i = 2, 3, , n − 2 ).
1 1 n 1 n 1 i i
СЛАУ (18.11) пригодна для использования метода прогонки (она имеет трехдиагональную матрицу).
Решение системы (18.11) ищется в виде: |
|
yi −1 = vi −1 yi + ui −1 , i = n −1, n − 2, , 2,1 |
(18.12) |
Прогоночные коэффициенты в прямом ходе определяются с
помощью выражений: |
|
|
|
|
|
|
|
|
|
|
|
|
v0 =u0 =0 , |
vi |
= − |
|
ci |
|
|
, ui = |
Di |
− ai ui −1 |
, |
(18.13) |
|
b |
+ a v |
b + a v |
||||||||||
|
|
|
|
|
|
|||||||
|
|
|
i |
|
i i −1 |
|
i |
i i −1 |
|
|
||
|
|
i =1, 2, , n −1 |
|
|
|
|
||||||
Полагаем yn =0 и из (18.12) получим |
|
|
|
|
||||||||
|
|
yn−1 = un−1 . |
|
|
|
|
|
|||||
Все остальные неизвестные |
yn−2 , yn−3, , y2 , y1 |
находятся по |
||||||||||
формулам (18.12). |
|
|
|
|
|
|
|
|
|
|
|
|
Теперь рассмотрим вторую краевую задачу (18.1), (18.4), (18.5) и будем ее решать конечно-разностным методом, заменяя дифференциальные операторы с использованием формул численного дифференцирования. Решение будем искать на той же
сетке ωh .
В точке x0 =a производную y′(a) = y′(x0 ) аппроксимируем следующим разностным отношением:
y′(x0 ) = −3y0 + 4 y1 − y2 + O(h2 ) .
2h
В точке xn =b производную y′(b) = y′(xn ) аппроксимируем разностным отношением:
- 92 -
Лекция 18 
y′(xn ) = yn−2 − 4 yn−1 + 3yn + O(h2 ) .
2h
В каждой внутренней точке xi (i =1, 2, ,n −1) сетки ωh первую и вторую производные аппроксимируем разностными отношениями соответственно:
y′(xi ) = |
yi +1 − yi −1 |
+ O(h2 ) , y′′(xi ) = |
|
yi −1 − 2yi + yi +1 |
+ O(h2 ) , |
2h |
|
2h |
|||
|
|
|
|
||
|
|
i =1, 2, n −1 |
|
|
|
Подставив все приведенные разностные отношения в (18.1), (18.4), (18.5), получим систему n +1 линейных уравнений относительно n +1 неизвестных y0 , y1, , yn−1, yn :
|
−3y0 + 4 y1 − y2 |
= A, |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||
|
2h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
− y0 |
|
|
|
|
|
||||
y0 − 2y1 + y2 |
|
+ p |
y2 |
+ q y |
= f , |
||||||||||||||
|
|
|
2 |
|
|
|
|
|
|
||||||||||
h |
|
|
|
|
|
1 |
|
|
2h |
|
|
|
1 1 |
1 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|||||||||||||||||||
y |
− 2y + y |
|
|
+ pi |
y |
|
− y |
+ qi yi = fi , |
|||||||||||
|
|
|
2 |
i +1 |
i +1 |
|
|
i −1 |
|||||||||||
i −1 |
|
|
i |
|
|
|
|
|
|
|
|
|
|||||||
|
|
h |
|
|
|
|
|
|
|
|
|
|
2h |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
yn−2 − 2yn−1 + yn |
+ pn−1 |
yn − yn−2 |
|
+ qn−1 yn−1 = fn−1, |
|||||||||||||||
|
|
|
h2 |
|
|
|
|
|
|
|
2h |
|
|
||||||
|
− 4 yn−1 + 3yn |
|
|
|
|
|
|
|
|
|
|
||||||||
|
yn−2 |
= B. |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
2h |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Упростив уравнения последней системы и исключив в первом уравнении y2 , а в последнем уравнении yn−2 , получим систему линейных уравнений с трехдиагональной матрицей относительно неизвестных y0 , y1, , yn . Решив ее методом прогонки, найдем сеточную функцию {yi } .
Третья краевая задача (18.1), (18.6) так же сводится к системе линейных уравнений с трехдиагональной матрицей при помощи аппроксимаций, используемых в первой и второй краевых задачах.
Для оценки погрешности метода конечных разностей используется следующее неравенство:
- 93 -
ЧИСЛЕННЫЕ МЕТОДЫ
|
yi |
− y(xi ) |
|
≤ |
h2 M4 |
(b − a)2 |
, |
(18.14) |
|||||
|
|
||||||||||||
|
|
|
|||||||||||
|
|
|
|
96 |
|
|
|
|
|
||||
где y(xi ) – точное значение решения при x = xi , |
|
||||||||||||
|
|
M4 =max |
|
y(4) (x) |
|
. |
|
|
|||||
|
|
|
|
|
|
||||||||
|
|
|
|
[a,b] |
|
|
|
|
|
|
|||
В практических задачах часто встречаются уравнения, в которых функции p(x) , q(x) , f (x) заданы таблично с некоторым шагом h . Совершенно естественно такие уравнения решать ко- нечно-разностным методом с данным шагом h .
Так как краевая задача решается численно то применение неравенства (18.14) затруднительно. Поэтому для оценки погрешности найденного решения можно использовать другое неравенство:
y − y(x |
) |
|
≤ |
max |
4 y |
|
(b − a)2 |
|
|
|
|
|
|||||
|
|
|||||||
|
|
|
|
|||||
i |
i |
|
|
|
96h2 |
|
|
|
|
|
|
|
|
||||
где 4y – конечные разности четвертого порядка.
18.3. ПРИМЕРЫ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ
Пример 18.3. Найти решение краевой задачи:
x2 y′′ + xy′ =1, |
|
|
|
|
|
|
|
|
|
(18.15) |
|
|
|
1 |
|
||
y(1) = 0, y(1.4) |
= |
ln2 |
(1.4) = 0.0566. |
||
2 |
|||||
|
|
|
|
Решение. Используя формулы
yi′ = |
yi +1 − yi −1 |
, yi′′= |
yi +1 − 2yi |
+ yi −1 |
, |
|
2h |
h |
2 |
|
|||
|
|
|
|
|
||
заменим уравнение (18.15) системой конечно-разностных уравнений
2 |
= |
yi +1 − 2yi + yi −1 |
+ xi |
yi +1 − yi −1 |
=1 (i =1, 2, , n −1 ). |
xi |
|
|
|||
h2 |
2h |
В результате приведения подобных членов получаем:
yi −1(2xi2 − hxi ) − 4xi2 yi + yi +1(2xi2 + hxi ) = 2h2 . |
(18.16) |
Выберем шаг h =0.1 , тогда получим три внутренних узла xi =1 + 0.1i, i =1,2,3 . Написав уравнение (18.16) для каждого из этих узлов, получим систему:
- 94 -
|
|
|
|
|
Лекция 18 |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
2.31y0 |
− 4.84 y1 |
+ 2.53y2 |
= 0.02, |
i =1, |
|
|
|
2.76y1 |
− 5.76y2 |
+ 3.00 y3 |
= 0.02, |
i = 2, |
(18.16) |
||
3.25y2 |
− 6.76y3 |
+ 3.51y4 |
= 0.02, |
i = 3. |
|
|
|
Решить систему (18.16) можно любым известным методом (например, методом Гаусса).
Так как в граничных узлах имеем: y0 =0, y4 =0.0566 то система (18.16) преобразуется к системе с трехдиагональной матрицей:
−4.84 y1 + 2.53y2 |
= 0.02 − 2.31y0 , |
2.76y1 − 5.76y2 + 3.00 y3 |
= 0.02, |
3.25y2 − 6.76y3 = 0.02 − 3.51y4 . |
|
или |
|
−4.84 y1 + 2.53y2 |
= 0.02, |
2.76y1 − 5.76y2 + 3.00 y3 = 0.02, 3.25y2 − 6.76y3 = −0.17867.
Решив эту систему методом прогонки, получим: y1 =0.0046 , y2 =0.0167 , y3 =0.0345 . Для сравнения приведем значения точного решения уравнения (18.15)
y(x) = 12 ln2 x : y(x1 ) =0.0047 , y(x2 ) =0.0166 , y(x3 ) =0.0344 .
Пример18.4. Найти решение краевой задачи: y′′ + xy′ − 0.5 xy =1,
y(2) + 2y′(2) =1,y(2.3) = 2.15.
Решение. Разобьем отрезок [2; 2.3] на части с шагом h =0.1 , получим следующие четыре узловые точки: x0 =2 , x1 =2.1 ,
x2 =2.2 , x3 =2.3 .
Из краевых условий составим конечно-разностные уравнения в граничных точках:
|
|
+ 2 |
− y |
+ 4 y − 3y |
0 |
=1, |
i = 0, |
|
y0 |
2 |
1 |
(18.17) |
|||||
|
2h |
|
||||||
|
|
|
|
|
|
|
||
y |
= 2.15, |
|
|
|
i = 3. |
|
||
|
3 |
|
|
|
|
|
|
|
- 95 -
ЧИСЛЕННЫЕ МЕТОДЫ
Во внутренних узлах заменяя конечно-разностными уравнениями, получим:
yi +1 − 2yi |
+ yi −1 |
+ xi |
yi +1 |
− yi −1 |
− 0.5 |
yi |
=1 |
(i =1, 2 ) (18.18) |
||
h |
2 |
|
|
2h |
x |
|
||||
|
|
|
|
|
i |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
Выполнив преобразования в (18.17) и (18.18), получим систему:
− 2.9y0 + 4 y1 |
− y2 |
= 0.1, |
|
|
− 841y1 + 464.1y2 |
= 4.2, |
|
375.9y0 |
|||
|
391.6y1 − 881y2 + 488.4 y3 |
= 4.4 |
|
|
|||
|
|
y3 |
= 2.15. |
|
|
||
Последнюю систему преобразуем к равносильной системе с трехдиагональной матрицей:
−969.99y0 +1015.4 y1 |
|
= 50.61, |
||
|
− 2.9y0 |
+ 4 y1 |
− y2 |
= 0.1, |
|
||||
|
|
391.6y1 |
− 881y2 |
= −1045.66. |
|
|
|||
Решив эту систему методом прогонки получим следующий результат: y0 =2.235 , y1 =2.185 , y2 =2.158 , y3 =2.150 .
Выводы
В лекции поставлены и освещены вопросы, касающиеся численного решения краевых задач для обыкновенных дифференциальных уравнений: граничные условия первого, второго, третьегородаисмешанныекраевыеусловиями.Приведенметод конечных разностей для решения линейных дифференциальных уравнений второго порядка. На примерах рассмотрено решение задачи с граничными условиями первого рода и смешанными краевыми условиями.
Вопросы для самопроверки
1.Приведите теорему о существовании и единственности решения краевой задачи.
2.Приведите краевую задачу для ОДУ с граничными условиями первого рода.
-96 -
Лекция 18 
3.Приведите краевую задачу для ОДУ с граничными условиями второго рода.
4.Приведите краевую задачу для ОДУ с граничными условиями третьего рода.
Рекомендованная литература: 1–5, 10–15.
- 97 -
ЧИСЛЕННЫЕ МЕТОДЫ
Лекция 19.
ПРИБЛИЖЕННОЕ АНАЛИТИЧЕСКОЕ РЕШЕНИЕ КРАЕВОЙ ЗАДАЧИ ДЛЯ ДИФФЕРЕНЦИАЛЬНОГО УРАВНЕНИЯ 2-ГО ПОРЯДКА
Рассмотрим метод Галеркина (Б. Г. Галеркин (1871–1945) – русский инженер, ученый, специалист в области строительной механики и теории упругости). Келдыш в 1942 г. этот метод окончательно обосновал.
Пусть дано дифференциальное уравнение 2-го порядка:
F(x, y, y′, y′′) = 0 |
(19.1) |
с граничными условиями: |
|
La y = α0 y(a) + α1 y′(a) = A , |
(19.2) |
Lb y = β0 y(b) + β1 y′(b) = B . |
(19.3) |
Будем считать, что краевая задача (19.1)-(19.3) имеет единственное решение на отрезке [a,b] и оно непрерывно дифференцируемо до 2-го порядка включительно. Зададим систему функций {φk (x)}, которая удовлетворяет следующим условиям:
1)φk (x) C2[a,b], k =0,1,2, ;
2)При любом конечном n функции ϕ1(x) , ϕ2 (x) , …, ϕn (x) линейно независимы на отрезке [a,b] ;
3)Функция ϕ0 (x) удовлетворяет граничным условиям (19.2),(19.3), а функции ϕk (x) удовлетворяют однородным условиям, т.е. La (ϕk ) = 0 , Lb (ϕk ) = 0 , k =1,2, ;
4)Функции ϕk (x) образуютвклассефункций C2[a,b] ,удовлетворяющих условиям (19.2), (19.3) полную замкнутую систему.
Систему функций {ϕk (x)} будем называть замкнутой на множестве интегрируемых на отрезке [a,b] функций, если не существует такой непрерывной функции кроме тождественного нуля, которая была бы ортогональной на отрезке [a,b] ко всем функциям ϕk (x) . Таким образом, если система функций {ϕk (x)} замкнута, то из условия
- 98 -
Лекция 19 
∫b |
f (x)ϕk (x)dx = 0, k =0,1,2, , |
a |
|
где f (x) непрерывная на [a,b] функция следует, что f (x) ≡0 . Свойство полноты понимается следующим образом: обозна-
чим через G |
класс функций, принадлежащих классу функций |
||||||||
y(x) C2[a,b] |
и удовлетворяющих условиям (19.2), (19.3). Гово- |
||||||||
рят, что система функций { k |
} полна в классе |
|
, если |
|
|||||
|
|
ϕ |
(x) |
|
|
|
G |
|
ε > 0 |
и для любой функции y(x) G |
можно указать такое n и такие |
||||||||
параметры a1,a2 , ,an , что имеет место неравенства: |
|
||||||||
|
|
y(i) (x) − yn(i) (x) |
|
< ε , i =0,1,2 , |
|
|
|
||
|
|
|
|
|
|
||||
где |
|
a < x < b |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
|
|
|
|
|
yn (x) = φ0 (x) + ∑akφk (x) . |
|
|
|
||||
|
|
|
|
|
|
k =1 |
|
|
|
Это означает, что для любой допустимой функции y(x) G |
|||||||||
найдется такая функция yn (x) |
|
|
которая на отрезке [a,b] |
будет |
|||||
сколь угодно точно приближать функцию y(x) вместе с ее производными y′(x), y′′(x) .
Теперь перейдем к построению приближенного решения граничной задачи (19.1)-(19.3) методом Галеркина. Составим линейную комбинацию из n +1 первых функций φk (x) :
n |
|
yn (x) = φ0 (x) + ∑akφk (x) , |
(19.4) |
k =1
где ak –некоторыечисленныепараметры,выбором(нахождени- ем) которых мы и займемся.
Отметим, что функция yn (x) удовлетворяет граничным условиям (19.2), (19.3) при любых значениях ak , т. к. в силу условия (19.3) и линейности граничных условий
n
La (yn ) = Laφ0 + ∑ak La (φk ) = A ,
k =1
n
Lb (yn ) = Lbφ0 + ∑ak Lb (φk ) = B .
k =1
- 99 -
ЧИСЛЕННЫЕ МЕТОДЫ
Подставив в уравнение (19.1) вместо y, y′, y′′ |
соответственно |
||
выражения yn (x), yn′(x), yn′′(x) , получим равенство: |
|
||
′ |
′′ |
|
|
F(x, yn, yn |
, yn ) = Fn (x,a1,a2 , ,an ) , |
|
|
называемое невязкой. |
|
|
была |
Согласно методу Галеркина требуем, чтобы невязка Fn |
|||
ортогональна к базисным функциям ϕk (x) , k =1,2,...,n . |
Таким |
||
образом, для определения коэффициентов аk , |
k =1,2,...,n при- |
||
ходим к следующей системе уравнений: |
|
|
|
b |
|
|
|
∫ϕ1 (x) Fn (x,a1,a2 ,...,an )dx = 0, |
|
|
|
a |
|
|
|
b |
|
|
|
∫ϕ2 (x) Fn (x,a1,a2 ,...,an )dx = 0, |
|
(19.5) |
|
a |
|
|
|
....................................................... |
|
||
|
|
|
|
b
∫ϕn (x) Fn (x,a1,a2 ,...,an )dx = 0.
a
Решив систему (19.5), мы и найдем приближенные значения параметров а1 ,а2 ,...,аn . В методе Галеркина в качестве n-го приближения к решению (19.1)-(19.3) принимают функцию
n
yn (x) = φ0 (x) + ∑аkϕk (x) .
k =1
Почему функцию yn (x) можно рассматривать как приближенное решение задачи (19.1)-(19.3)? Это можно пояснить следующими соображениями.
Если бы оказалось, что равенство
b |
|
∫ϕk (x) Fn (x,a1,a2 ,...,an )dx = 0 |
(19.6) |
a
выполняется при всех k =0,1,2,... , то в виду замкнутости системы функций множества {ϕk (x)}, отсюда следовало бы, что
Fn (x) = Fn (x, yn , y'n, y''n ) = 0 ,
и функция yn (x) была бы точным решением граничной задачи
(19.1)–(19.3).
- 100 -
