книги / Численные методы решения жестких и нежестких краевых задач
..pdfМожем записать эту формулу в двух вариантах – в одном случае формула удовлетворяет краевым условиям левого края (индекс L), а в другом – условиям на правом крае (индекс R):
Y |
L |
(x) Y |
матрица |
L |
(x)c |
L |
|
|
|
||||
|
|
|
|
|
|
Y
L (x)
,
YR (x) Yматрица R (x)cR Y R (x) .
В произвольной точке имеем
Y |
(x) |
L |
|
Y |
(x) |
R |
|
.
Тогда получаем
Yматрица L (x)cL Y L (x) Yматрица R (x)cR Y R (x) ,
Y |
матрица |
L |
(x)c |
L |
Y |
матрица |
R |
(x)c |
R |
|
|
|
|
||||||
|
|
|
|
|
|
|
|
Y |
|
R (x) |
Y
L
(x)
,
Y |
матрица |
(x) |
|
L |
|
Yматрица
|
|
c |
|
|
|
|
(x) |
|
L |
Y |
|
R |
c |
|
R (x) |
||
|
|
|
|
||
|
|
|
|
|
|
|
|
|
R |
|
|
Y |
|
L (x) |
.
То есть получена система линейных алгебраических уравнений традиционного вида с квадратной матрицей коэффициентов
Y |
матрица |
L |
(x) |
Y |
матрица |
R |
(x) |
|
|
|
|
||||
|
|
|
|
|
|
cL . cR
для встречного вычисления векторов констант
21
Глава 3. Метод «переноса краевых условий» (прямой вариант метода) для решения краевых задач с нежесткими
обыкновенными дифференциальными уравнениями
Предлагается выполнять матриц [Гантмахер] сразу от интегрирования к краям:
Y (0)
Y (1)
интегрирование по формулам теории некоторой внутренней точки интервала
|
(0 x) , |
K(0 x)Y (x) Y |
|
|
(1 x) . |
K(1 x)Y (x) Y |
Подставим формулу для получим:
Y (0)
в краевые условия левого края и
UY (0) u , |
|
||
U[K(0 x)Y (x) Y |
|
(0 |
x)] u , |
|
UK(0 x)Y (x) u -UY (0 x) .
Аналогично для правых краевых условий получаем:
VY (1) v ,
V[K(1 x)Y VK(1 x)Y (
(x) Y |
|
(1 |
x)] v |
|||
|
||||||
x) v VY |
|
(1 |
x) |
|||
|
,
.
То есть получаем два матричных уравнения краевых условий, перенесенные в рассматриваемую точку x :
[UK(0 x)] Y (x) u -UY (0 x) ,
[VK(1 x)] Y (x)
|
(1 |
v VY |
x)
.
Эти уравнения аналогично объединяются в одну систему линейных алгебраических уравнений с квадратной матрицей коэффициентов для нахождения решения Y (x) в любой рассматриваемой точке x :
UK(0 x) |
Y (x) |
|
VK(1 x) |
||
|
u UY
vVY
(0 x) (1 x)
.
22
Глава 4. Метод «дополнительных краевых условий» для решения краевых задач с нежесткими обыкновенными
дифференциальными уравнениями
Запишем на левом крае ещё одно уравнение краевых условий:
|
MY (0) m . |
В качестве строк матрицы |
M можно взять те краевые условия, то |
есть выражения тех физических параметров, которые не входят в
параметры краевых условий левого края U |
или линейно независимы с |
ними. Это вполне возможно, так как у краевых задач столько независимых физических параметров какова размерность задачи, а в параметры краевых условий входит только половина физических параметров задачи. То есть, например, если рассматривается задача об оболочке ракеты, то на левом крае могут быть заданы 4 перемещения. Тогда для матрицы M можно взять параметры сил и моментов, которых тоже 4, так как полная размерность такой задачи – 8. Вектор m правой части неизвестен и его надо найти и тогда можно считать, что краевая задача решена, то есть сведена к задаче Коши, то есть найден вектор Y (0) из выражения:
U |
Y (0) |
|
u |
, |
|
M |
m |
||||
|
|
|
то есть вектор
Y (0)
находится из решения системы линейных
алгебраических уравнений с квадратной невырожденной матрицей коэффициентов, состоящей из блоков U и M .
Аналогично запишем на правом крае ещё одно уравнение краевых условий:
|
|
NY (1) n , |
где матрица |
N |
записывается из тех же соображений |
дополнительных линейно независимых параметров на правом крае, а вектор n неизвестен.
Для правого края тоже справедлива соответствующая система уравнений:
|
|
V |
Y (1) |
v |
. |
|
|
|
|
N |
|
|
|
||
|
|
|
n |
|
|
||
Запишем Y (1) K(1 0)Y(0) Y (1 0) |
|
и подставим в последнюю |
|||||
систему линейных алгебраических уравнений: |
|
|
|||||
|
V |
[K (1 0)Y (0) Y (1 0)] |
v |
, |
|||
|
N |
n |
|||||
|
|
|
|
|
|
23
Запишем вектор
Y
V |
K (1 0)Y (0) |
v |
|
V |
Y |
|
(1 0) |
|||||
|
|
|
||||||||||
N |
n |
N |
|
|||||||||
|
|
|
|
|
|
|
|
|
||||
V |
|
|
v V Y |
|
(1 0) |
|
||||||
K(1 0)Y (0) |
|
, |
||||||||||
N |
n N Y |
|
(1 0) |
|||||||||
|
|
|
||||||||||
|
|
|
|
|||||||||
|
V |
K (1 0)Y (0) |
s |
|
. |
|
|
|||||
|
N |
t |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
||||
(0) |
через обратную матрицу: |
|
,
Y (0) |
U |
1 |
|
u |
M |
|
m |
||
|
|
|
и подставим в предыдущую формулу:
VN K(1 0) MU 1 mu st
Таким образом, мы получили систему уравнений вида:
|
B |
|
u |
|
s |
, |
|
|
|
|||
|
m |
t |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|||
где матрица B известна, векторы u |
и s |
известны, а векторы m |
и t |
|||||||||
неизвестны. |
|
|
|
|
|
|
|
|
|
|
|
|
Разобьем матрицу B |
на естественные для нашего случая 4 блока и |
|||||||||||
получим: |
|
|
|
|
|
|
|
|
|
|
|
|
|
B |
B |
|
|
|
|
u |
|
s |
, |
|
|
|
11 |
12 |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
||||
|
B |
B |
|
|
|
m |
|
t |
|
|
||
|
21 |
22 |
|
|
|
|
|
|
|
|
||
откуда можем записать, что |
|
|
|
|
|
|
|
|
|
|
|
|
|
B u B m s, |
|
|
|
||||||||
|
11 |
|
|
|
12 |
|
|
|
|
|
|
|
|
B |
u B |
|
m t. |
|
|
|
|||||
|
21 |
|
|
|
22 |
|
|
|
|
|
|
|
Следовательно, искомый вектор m |
|
вычисляется по формуле: |
|
|||||||||
|
m B |
1 |
(s |
B u) |
|
|
||||||
|
|
|
|
|||||||||
|
|
|
12 |
|
|
|
|
11 |
|
|
|
|
А искомый вектор n |
вычисляется через вектор t : |
|
||||||||||
|
t B21u B22m , |
|
|
|||||||||
|
n t N Y |
|
(1 |
0) . |
|
|||||||
|
|
|
|
24
Глава 5. Метод «половины констант» для решения краевых задач с нежесткими обыкновенными
дифференциальными уравнениями
В данном методе используется предложенная С.К. Годуновым идея искать решение в виде только с половиной возможных искомых констант, однако и формула для возможности начала такого расчета и дальнейшее применение матричных экспонент (матриц Коши) предложены А.Ю. Виноградовым.
Формула для начала счета с левого края только с половиной возможных констант:
Y (0) U |
T |
u |
|
орто |
|||
|
орто |
M |
T |
c |
|
орто |
|||
|
|
,
Y (0) U T орто
|
T |
|
u |
|
M |
|
орто |
||
орто |
c |
|||
|
|
|||
|
|
|
.
Таким образом, записана в матричном виде формула для начала счета с левого края, когда на левом крае удовлетворены краевые условия.
Далее запишем VY (1) v |
и Y(1) K(1 0)Y (0) Y |
|
(1 |
0) |
совместно: |
|
|
|
|
|
V[K(1 0)Y (0) Y |
|
(1 |
0)] |
|
|
v
,
VK(1 0)Y (0) v VY |
|
(1 |
0) |
|
и подставим в эту формулу выражение для Y(0):
|
|
T |
|
T |
|
|
u |
|
|
|
|
VK(1 0) |
U |
M |
|
|
орто |
v VY |
(1 |
0) |
|||
орто |
орто |
|
|
c |
|
||||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
или
|
T |
|
T |
u |
|
|
VK(1 0) U |
M |
орто |
|
|||
орто |
орто |
c |
||||
|
|
|
||||
|
|
|
|
|
p
.
Таким образом, мы получили выражение вида:
|
u |
|
|
D |
орто |
|
|
c |
|||
|
|
p
,
где матрица D представлена в виде
имеет размерность 4х8 и может быть естественно двух квадратных блоков размерности 4х4:
D |
D |
uорто |
p . |
|
|||
1 |
2 |
c |
|
|
|
|
Тогда можем записать:
D u |
D c |
1 орто |
2 |
Отсюда получаем, что:
p
.
c D2 1 ( p D1uорто ) .
Таким образом, искомые константы найдены.
25
Глава 6. Метод «переноса краевых условий» (пошаговый вариант метода) для решения краевых задач с жесткими
обыкновенными дифференциальными уравнениями
6.1. Метод «переноса краевых условий» в произвольную точку интервала интегрирования
Полное решение системы дифференциальных уравнений имеет вид
Y (x) K(x x0 )Y (x0 ) Y |
|
(x |
x0 ) . |
|
||
|
|
|||||
Или можно записать: |
|
|
|
|
|
|
Y (0) K(0 x1 )Y (x1 ) Y |
|
(0 |
x1 ) . |
|
||
|
|
|||||
Подставляем это выражение для Y (0) |
|
в краевые условия левого края |
||||
и получаем: |
|
|
|
|
|
|
UY (0) u , |
|
|
|
|
||
U[K(0 x1 )Y (x1 ) Y |
|
(0 x1 )] u , |
|
|||
|
|
|||||
UK(0 x1 )Y (x1 ) u UY |
|
(0 |
x1 ) . |
|
||
|
|
|||||
Или получаем краевые условия, перенесенные в точку x1 |
: |
|||||
U1Y(x1 ) u1 , |
|
|
|
|
где U1 UK(0 x1 ) и u1 |
u UY |
(0 |
|
|
|
Далее запишем аналогично
x1 )
.
Y (x ) K(x |
|
|
1 |
1 |
|
И подставим это выражение
условия точки |
x1 |
: |
x |
)Y (x |
2 |
2 |
для
) Y |
|
|
Y (x1 )
(x |
x |
) |
1 |
2 |
|
в |
перенесенные краевые |
U1Y(x1 ) u1 ,
|
|
|
U1[K(x1 x2 )Y (x2 ) Y |
|
(x1 |
x2 )] |
u1 , |
|||||||
|
|
|
|
|||||||||||
|
|
|
U K(x x )Y (x ) u U Y (x x ) . |
|||||||||||
|
|
|
|
1 |
1 |
2 |
2 |
1 |
|
1 |
1 |
|
2 |
|
Или получаем краевые условия, перенесенные в точку x2 : |
||||||||||||||
|
где U |
|
|
|
U2Y(x2 ) u2 , |
|
|
(x |
x ) . |
|||||
|
|
U K(x x ) и u |
u U Y |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
И так в точку |
|
|
|
2 |
1 |
1 |
2 |
2 |
|
1 |
1 |
|
1 |
2 |
x |
|
переносим матричное краевое условие с левого края |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
и таким же образом переносим матричное краевое условие с правого края.
Покажем шаги переноса краевых условий правого края. Можем записать:
Y (1) K(1 xn 1 )Y (xn 1 ) Y (1 xn 1 )
Подставляем это выражение для Y (1) в краевые условия правого края и получаем:
26
VY (1)
V[K(1 x |
n 1 |
)Y (x |
n 1 |
) |
||||
|
|
|
|
|
||||
VK(1 x |
n 1 |
)Y (x |
n 1 |
) |
||||
|
|
|
|
|
v |
, |
|
|
|
|
|
|
|
|
Y |
|
(1 |
x |
|
)] v |
||||
|
n 1 |
||||||||
|
|
|
|
|
|
|
|
|
|
v VY |
|
(1 |
x |
|
) |
||||
|
n 1 |
||||||||
|
|
|
|
|
|
|
|
|
,
xn 1
Или получаем краевые условия правого края,
:
где Vn 1 |
Vn 1Y (xn 1 ) vn 1 |
, |
|
VK(1 xn 1 ) и vn 1 |
v VY |
||
|
|
|
|
Далее запишем аналогично
перенесенные в точку
(1 xn 1 ) .
Y (xn 1 ) K(xn 1 xn 2 )Y (xn 2 ) Y (xn 1 xn 2 )
И подставим это выражение для
условия точки |
xn 1 |
: |
Y (x |
n 1 |
) |
|
|
в перенесенные краевые
|
|
|
|
Vn 1Y (xn 1 ) vn 1 , |
|
|
|
|
|
|
|
||||
V |
[K(x |
n 1 |
x |
n 2 |
)Y (x |
n 2 |
) Y (x |
n 1 |
x |
n 2 |
)] v |
n 1 |
, |
||
n 1 |
|
|
|
|
|
|
|
|
|
||||||
Vn 1K(xn 1 xn 2 )Y (xn 2 ) vn 1 Vn 1Y |
|
(xn 1 xn 2 ) . |
|||||||||||||
|
Или получаем краевые условия, перенесенные в точку
|
|
|
|
|
|
Vn 2Y (xn 2 ) vn 2 |
, |
|
|
|
|
|||
где V |
V |
K(x |
x |
n 2 |
) и v |
n 2 |
v |
n 1 |
V Y (x |
n 1 |
x |
n 2 |
) . |
|
n 2 |
n 1 |
n 1 |
|
|
|
n 1 |
|
|
|
xn 2
:
И так во внутреннюю точку |
x |
|
интервала интегрирования |
переносим матричное краевое условие, как показано, и с левого края и таким же образом переносим матричное краевое условие с правого края и получаем:
|
|
) |
U Y (x |
V Y (x )
u |
|
, |
|
|
v .
Из этих двух матричных уравнений с прямоугольными горизонтальными матрицами коэффициентов очевидно получаем одну систему линейных алгебраических уравнений с квадратной матрицей коэффициентов:
U |
|
|
|
|
|
) |
|
V |
|
Y (x |
|
|
|
||
|
|
|
u v
.
6.2. Случай «жестких» дифференциальных уравнений
В случае «жестких» дифференциальных уравнений предлагается применять построчное ортонормирование матричных краевых условий в процессе их переноса в рассматриваемую точку. Для этого формулы
27
ортонормирования систем линейных алгебраических уравнений можно взять в [Березин, Жидков].
То есть, получив
U Y(x ) u |
||
1 |
1 |
1 |
применяем к этой группе линейных алгебраических уравнений построчное ортонормирование и получаем эквивалентное матричное краевое условие:
U |
Y (x ) |
|
|
1орто |
1 |
u1орто
.
И теперь уже в это проортонормированное построчно уравнение подставляем
Y (x1 ) K(x1 x2 )Y (x2 ) Y (x1 x2 ) .
И получаем
U1орто[K(x1 x2 )Y (x2 ) Y (x1 x2 )] u1орто ,
U |
|
K(x |
x |
)Y (x |
) u |
U |
Y |
|
(x |
1орто |
|
||||||||
|
1 |
2 |
2 |
1орто |
|
1орто |
|
1 |
x |
2 |
) |
|
|
.
Или получаем краевые условия, перенесенные в точку
|
|
|
|
|
|
|
U2Y(x2 ) u2 |
, |
|
|
|
||
где U |
2 |
U |
1орто |
K(x |
x |
) и u |
u |
U |
Y |
(x |
x |
) . |
|
|
|
1 |
2 |
2 |
1орто |
|
1орто |
|
1 |
2 |
|
x2
:
Теперь уже к этой группе линейных алгебраических уравнений применяем построчное ортонормирование и получаем эквивалентное матричное краевое условие:
U |
Y (x |
) u |
|
|
2орто |
2 |
2орто |
Итак далее.
Ианалогично поступаем с промежуточными матричными краевыми условиями, переносимыми с правого края в рассматриваемую точку.
В итоге получаем систему линейных алгебраических уравнений с квадратной матрицей коэффициентов, состоящую из двух независимо друг от друга поэтапно проортонормированных матричных краевых условий, которая решается методом Гаусса с выделением главного
элемента для получения решения Y (x ) в рассматриваемой точке
x |
|
|
:
|
|
|
|
U |
|
|
|
орто |
Y (x |
) |
|
|
|
||
|
|
|
|
V |
|
|
|
орто |
|
|
|
uорто
орто
.
28
6.3. Формулы для вычисления вектора частного решения неоднородной системы дифференциальных уравнений
Вместо формулы для вычисления вектора частного решения неоднородной системы дифференциальных уравнений в виде [Гантмахер]:
|
|
|
|
x |
|
|
Y |
|
(x x0 ) e |
Ax |
e |
At |
F (t)dt |
|
|
|
||||
|
|
|
|
x0 |
|
|
предлагается использовать следующую формулу для каждого отдельного участка интервала интегрирования:
Y |
|
(x |
|
||
|
|
j |
x |
) Y |
|
(x |
|
x |
) K (x |
|
|
j |
j |
|||||
i |
|
|
|
i |
|
x jxi ) K (xi xi
t)F (t)dt
.
Правильность приведенной формулы подтверждается следующим:
Y
Y
(x
(x
Y
j |
x |
) |
i |
|
j |
x |
) |
i |
|
|
|
|
(x |
j |
|
|
|
Y (
Y (x j
Y (x
|
|
|
|
|
|
x |
||
|
|
|
|
|
|
|
|
j |
exp(A(x j |
xi )) exp(A(xi t))F (t)dt |
|||||||
|
|
|
|
|
|
x |
||
|
|
|
|
|
|
|
|
i |
|
x |
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
exp(A(x j xi ))exp(A(xi t))F (t)dt |
|||||||
|
x |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
xi ) |
|
exp(A(x j |
xi xi t))F (t)dt , |
|||||
|
||||||||
|
|
x |
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
x j |
|
|
|
|
x j |
xi ) |
|
exp(A(x j t))F (t)dt , |
|||||
|
||||||||
|
|
|
|
xi |
|
|
|
|
|
|
|
|
|
|
x j |
|
|
xi ) exp(Axj ) |
|
exp( At)F (t)dt , |
||||||
|
|
|||||||
|
|
|
|
|
|
xi |
|
|
|
|
|
|
|
|
x |
|
|
xi ) exp(Ax) |
|
exp( At)F (t)dt , |
||||||
|
xi
,
,
что и требовалось подтвердить.
Вычисление вектора частного решения системы дифференциальных уравнений производиться при помощи представления матрицы Коши под знаком интеграла в виде ряда и интегрирования этого ряда поэлементно:
29
|
|
|
|
|
|
|
|
x |
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Y |
|
(x j xi ) Y |
|
(x j |
xi ) K (x j xi ) K (xi t)F (t)dt |
|
|
||||||||||
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K (x j |
|
|
|
|
2 |
(xi t) |
2 |
|
|
|
|
|
|
|
|
||
xi ) (E A(xi t) A |
|
|
/ 2! ...)F (t)dt |
|
|
||||||||||||
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
j |
|
x |
j |
|
|
|
|
|
x |
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
K (x j |
xi )(E F (t)dt A (xi |
t)F (t)dt A |
2 |
/ 2! |
(xi t) |
2 |
F (t)dt ...). |
||||||||||
|
|
||||||||||||||||
|
|
|
x |
i |
|
x |
i |
|
|
|
|
|
x |
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Эта формула справедлива для случая системы дифференциальных |
|||||||||||||||||
уравнений с постоянной матрицей коэффициентов |
|
A =const. |
|||||||||||||||
Рассмотрим |
вариант, |
когда |
шаги |
интервала интегрирования |
выбираются достаточно малыми, что позволяет рассматривать вектор F (t) на участке (x j xi ) приближенно в виде постоянной величины
F(xi ) constant,
что позволяет вынести этот вектор из под знаков
интегралов:
|
|
x |
j |
x |
j |
|
|
|
|
||
Y |
|
(x j xi ) K (x j xi )(E dt A ( |
|||
|
|||||
|
|
x |
i |
x |
i |
|
|
|
|
Известно, что при T=(at+b) имеем
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
j |
|
|
|
|
|
xi t)dt A |
2 |
/ 2! (xi |
t) |
2 |
dt ...)F (t). |
|||||
|
|
|||||||||
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
T |
n |
dt |
|
1 |
T |
n 1 |
const |
(при n -1). |
||
|
|
|||||||||
|
|
|
|
|||||||
|
|
a(n 1) |
|
|
|
|
|
В нашем случае имеем
(b - t) |
n |
dt |
1 |
(b - t) |
n 1 |
const |
(при n -1). |
|
|||||||
|
(-1)(n 1) |
|
|||||
|
|
|
|
|
|
|
|
x j |
|
1 |
|
|
Тогда получаем |
|
(xi t)n dt |
(xi x j )n 1 . |
||
xi |
n 1 |
||||
|
|
|
|||
|
|
|
|
Тогда получаем ряд для вычисления вектора частного решения неоднородной системы дифференциальных уравнений на малом участке
(x j xi ) :
Y (x j xi ) K(x j xi ) (E A(xi x j ) / 2! A2 (xi x j )2 / 3! ...) (x j xi ) F(xi ).
Для случая дифференциальных уравнений с переменными коэффициентами для каждого участка может использоваться осредненная матрица Ai A(xi ) коэффициентов системы
дифференциальных уравнений.
Если рассматриваемый участок интервала интегрирования не мал, то предлагаются следующие итерационные (рекуррентные) формулы.
Приведем формулы вычисления вектора частного решения, например, Y (x3 x0 ) на рассматриваемом участке (x3 x0 ) через вектора
30