книги / Метод продолжения решения по параметру и наилучшая параметризация в прикладной математике и механике
..pdf7.1. Уравнения решения для нелинейных одномерных краевых задач |
171 |
|||||
Для удобства перепишем задачу (7.20) в форме |
|
|||||
|
(Jj+Oy _ ЛЛ 0+0 |
0)м 0) , фО) |
|
|||
|
^(*) |
> |
Ь(к)У(к) |
+Pk M(k)+V{k)> |
(7.21) |
|
A y $ l\ x t) = a, |
В у § 1\ х 2) = Ь, 7 = 1, 2, . . . . |
|||||
|
||||||
Здесь обозначено |
|
|
|
|
|
|
|
|
|
|
|
(7.22) |
|
* 8 - |
P.W) - if tg j. r f b |
g - i P n u g , A |
|
Эта форма записи показывает, что в шаговом процессе Лазя, т. е. при дискретном продолжении решения, необходимо решать более слож ную линейную краевую задачу (7.21), чем задачу (7.6), возникающую при непрерывном продолжении решения.
Задача (7.21) имеет более сложную неоднородность в уравнени ях и неоднородные граничные условия. Поэтому ее решение методом
начальных параметров представляется в виде |
|
|
|||||
„0+0 _ с 0+0„(1)0+1) |
I с и+1) |
(1)0+1) |
, |
|
|||
у(к) |
~ С1(к) У(к) |
• + с «к) |
У(к) |
+ |
(7.23) |
||
|
|
+ p ? +l)^ ,)ft+l,+ S((y |(' +l>. |
|||||
|
|
|
|||||
Здесь у |
^ |
(* — 1,1) |
— вектор-функции, являющиеся линейно |
||||
независимыми решениями однородной задачи |
|
|
|||||
|
|
у' = L%y> |
Ау(ху) = |
0, |
(y(xi) ф 0). |
(7.24) |
|
Вектор-функция yf^ )0+1) СТрОИТСЯ как решение неоднородной |
|||||||
задачи |
|
|
|
|
|
|
|
|
|
У ~ L(k)y + M(kj> |
Ф |
0 = 0. |
|
(7.2S) |
ИHSIfnHPII
’ |
ц’ |
У(к) |
представляет собой решение |
следующей |
|
неоднородной задачи: |
|
|
|
||
|
|
у' = |
+ *(?). |
Ау(Х1) = о. |
(7.26) |
Введем, |
как |
и ранее, |
матрицу |
составленную |
из вектор- |
столбцов значений вектор-функций »§<**> (i = T J + T ) при , = *2:
” = ЬЙГ’ w |
(гг?) |
—---------- Глава 7. Нелинейные краевые задачи для обыкновенных уравнений
Введем также вектор сК +1* = |
/'г’Ь+О |
г-О'+О „(Я-1)\т |
|||
л |
. |
(*) |
Vc l(*) |
>■•• >с ,(м |
>Рк ’) .состав |
ленный |
из I произвольных постоянных интегрирования и параметра. |
||||
Тогда функция у ^ |
(х) (7.23) будет решением краевой задачи (7.20), |
если она удовлетворяет второму граничному условию В у9? 1\ х 2) = Ъ,
которое с учетом принятых обозначений сводится к линейному алгебра ическому уравнению
Ч ? Ч + ,)+ Ч Г |
в+|)<*’> = * . |
(7.28) |
Это уравнение перепишем в виде |
|
|
т0 +1)г (Я-1) _ |
0+1) |
(7.29) |
|
|
|
где |
|
|
■7W ') = BDW 1)> |
|
(7.30) |
Уравнение (7.29) представляет систему из I линейных алгебраичес ких неоднородных уравнений относительно I+1 неизвестных компонент
вектора |
. Его решение можно представить в виде |
|
|||
|
с 0+1) = а0+1)с |
0+1) |
0+1) |
/7 . п |
|
|
№ |
“(*) с |
0(») |
+ fy) • |
(7.31) |
Здесь д^ ^ — частное решение неоднородного уравнения (7.29),
^i{k) ^ ~ общее решение однородного уравнения
j( i+0 |
= |
0. |
|
(7.32) |
*>) |
|
|||
|
|
|
|
|
Это уравнение имеет однопараметрическое подпространство реше |
||||
ний в R,+1 : { С \,...,С и р}. И мы будем |
понимать под |
орт |
||
этого подпространства. Коэффициент |
|
|
в представлении (7.31) по |
ка не определен, так как решение однородного уравнения может быть получено только с точностью до постоянного множителя.
Как и выше, при рассмотрении процессов интегрирования уравне ний продолжения (7.5), воспользуемся теми возможностями, которые дает толкование представления решения (7.23) как отображения функ ционально-векторного пространства {у, р} на (1 + 1)-мерное векторное
7.1. Уравнения решения для нелинейных одномерных краевых задач |
173 |
пространство M'+1 :{ С ,,...,С ,,р} . В силу этого отображения уравне нию (7.32) соответствует линейная краевая задача
/у(У+1)\» _ г 0) у 0+1) |
, р0)дж0) |
|
lr (*) ' ~ L |
+ i * М к\> |
|
'(*Г(*(br<k) |
(*)’ |
(7.33) |
|
|
^+l)(x1) = 0, B Y ^ +l\ x 2) = Q.
Если итерационный процесс сходится, т. е. если при j -* оо имеет место
рР ~*Рк> Y $ - > Y (k), pM -> P k,
то задача (7.33) сходится к следующей
Y (k) = Н У (к)> P k ) Y + Р к М ( у ( к), р к ),
(7.34)
= °» B Y ( k) { x 2) = 0.
Эта краевая задача с точностью до обозначений совпадает с краевой
задачей (7.6). Отсюда следует, что вектор в итерационном про
цессе сходится к вектору Сдо = С(рк), являющимся ортом касательной
к кривой К , на которую отображается в К,+| решение нелинейной краевой задачи (7.1). Наличие в решении (7.31) произвольного коэффи
циента ^ позволяет выбрать его значение так, чтобы отображение
итерационного процесса (7.21) в пространстве R,+1 обладало теми же свойствами, что и итерационные процессы дискретного продолжения, рассмотренные в п. 1.5.
Так, условие, эквивалентное условию (1.85), должно требовать орто
гональности поправочных векторов |
|
|
JC/-0+0 |
_ г 0+О |
r (j) |
6С(*) |
“ С(*) |
_ С (*) |
к орту СЬ(*_1) касательной к кривой К € R,+l в предыдущей точке. Это условие записывается в виде
|
(7.35) |
Подстановка сюда решения (7.31) определяет |
в виде |
0+1) _ С0(*-1) ' 6С(к)1 |
(7.36) |
|
'(*) |
||
|
Геометрия такого итерационного процесса в R2 подробно показана на рис. 1.10.
174 Глава 7. Нелинейные краевые задачи для обыкновенных уравнений
Точно так же для определения |
можно использовать и дру |
гие условия, сформулированные в п. |
1.S и продемонстрированные |
на рис. 1.11, 1.12. |
|
7.2. Дискретная ортогональная прогонка
В предыдущем разделе показано, что алгоритмы метода продолжения решения по параметру для нелинейных краевых задач требуют решения на каждом шаге линеаризованных краевых задач (7.6), (7.21). Но реа лизация решения этих задач методом начальных параметров, особенно для жестких систем ОДУ, наталкивается на известные трудности, свя занные с наличием быстрозатухающих и быстровозрастающих решений. Это приводит к плохой обусловленности систем уравнений (7.13), (7.29), которая связана с тем, что матрица J близка к вырожденной. Одним из наиболее эффективных путей преодоления этих трудностей является использование метода дискретной ортогональной прогонки, разработан ного С. К. Годуновым [16]. В отличие от традиционного алгоритма этого метода, изложенного, например, в [5, 18, 27], при реализации алгорит ма продолжения решения приходится решать линейные краевые задачи
(7.6), (7.21), содержащие подлежащий определению параметр р или р $ в свободных членах. А это требует некоторой модернизации известного алгоритма метода ортогональной прогонки.
Итак, рассмотрим линейную краевую задачу |
|
у' = Ц х)у + рМ(х) + Ф(х), Ау(хо) = в, Ву(хц) = Ь. |
(7.37) |
Здесь у(х) = (yi(x) , . . . , уп(х))т — искомая n -мерная вектор-функция; L(x) = [L{j(x)] (i,j = l,n) — заданная квадратная матрица-функция
порядка |
n; М(х) = |
(М,( * ) , ... , Мп{х))т, Ф(х) = (Ф,,..., |
Ф„)т - |
||
заданные |
n -мерные |
вектор-функции; |
А — заданная |
прямоугольная |
|
матрица |
размерности |
г о х в (п > то, |
rank А = то); |
В — |
заданная |
прямоугольная матрица размерности I х n, I = п — тп (rank В = I); а —
(«1, • • •, Оп)т , b = (ft,,. . . . Ьп)т — заданные векторы; р — параметр; XQ, xN — координаты начала и конца интервала, на котором разыскивается решение краевой задачи (7.37).
Прежде чем переходить к алгоритму ортогональной прогонки, обра тим внимание на лежащее в его основе свойство общего решения уравнения (7.37), удовлетворяющего условию Ау(хо) = 0. Это решение
представим в виде |
|
у(х) = С, у(1) + С2у(2)+ ...+ С,»(,) +ру(,+1) + i/<'+2), |
1=тп-п. (7.38) |
7.2. Дискретная ортогональная прогонка |
|
|
175 |
||
Здесь |
— ( у р \ . . . , уп^)Т (j = |
1,0 — линейно |
независимые |
||
вектор-функции, являющиеся решениями однородной задачи |
|||||
|
у = L(x)y, |
Ау(х0) = |
а (у(х0) ф 0), |
(7.39) |
|
уО+l) _ (у|,+,)>. . . , y t l)f |
— вектор-функция, представляющая собой |
||||
частное решение задачи |
|
|
|
|
|
|
у = Цх)у + рМ(х), |
Ду(х0) = |
а, |
(7.40) |
|
у('+2) = (j/|,+2\ . . . , у«+2У |
— вектор-функция, |
являющаяся частным |
|||
решением задачи |
|
|
|
|
|
|
у' = Цх)у + Ф(х), |
Ау(х0) = |
в, |
(7.41) |
C j, . . . , Q — произвольные постоянные; р — параметр.
Введем Вектор С = (С\ , . . . , Q , р, 1)т € R*+2 и матрицу U(x), столб
цами которой являются вектор-функции у® (j = 1, 1 + 2), |
|
||
Щх) = |
[и ф )] = |
[у(,)(х) у<2)(х). . . у(,+2)(х)], |
(7.42) |
где и ф ) = у?\х), |
i = |
j = 1,1 + 2. |
|
Эту матрицу будем называть матрицей общего решения. Тогда ре |
|||
шение (7.38) представится в матричной форме |
|
||
|
|
у(х) = UС. |
(7.43) |
Введем теперь невырожденную квадратную матрицу Q порядка I + 2 со следующей структурой
‘ 911 ... |
qu |
9 11+1 |
911+2 ‘ |
|
9М ... |
qu |
9tt+l |
911+2 , |
(7-44) |
0 ... |
0 |
1 |
O' |
|
. 0 ... |
0 |
0 |
1 . |
|
Нетрудно видеть, что матрица U* такая, что
U* = UQ, |
(7.45) |
имеет ту же структуру, что и матрица U, так как ее первые I столбцов представляют собой линейно независимые комбинации столбцов матри цы U, т.е. являются линейно независимыми решениями однородной задачи (7.39), а последние два столбца являются частными решениями задач (7.40) и (7.41). Поэтому вектор-функция
У*(х) = и*с*, |
(7.46) |
176 Глава 7. Нелинейные краевые задачи для обыкновенных уравнений
где С* = (С|, . . . , С*,р, 1)г , также является общим решением уравне ний (7.37), удовлетворяющим условию Ау(хо) = а при произвольных значениях C j, . . . , С?. Т.е. 17* также является матрицей общего/ре шения. Если у(х) = у*(х), то векторы С и С* связаны ввиду (7.4S) соотношением
QC = С*. |
(7.47) |
Рассмотрим теперь алгоритм ортогональной прогонки. Для этого разобьем интервал интегрирования ®о ^ < ®лг на N участков. Коор динаты границ участков обозначим через хо, х\, • • ■, &N >а сами участки пронумеруем слева направо от 1 до N . На первом участке ®о ^ х ^ х\ по строим общее решение (7.38) уравнений (7.37) при условии Ау(хо) = а. Сначала получим решения однородной задачи (7.39), которые обозна
чим 3/(f)0* = Ь 0- Здесь и далее нижний индекс в скобках (*) будет означать принадлежность к *-му участку. Для этого возьмем I ортонор-
мированных решений ^ 6 Rn(j = Tjl) уравнения А£ = 0 и, принимая
их в качестве начальных, построим каким-либо численным методом (Рунге—Кутга, Адамса и т. п.) I решений начальной задачи у* = L(x)y,
т.е. получим (j = 1,1) как решения начальных задач
(y g )' = L (s)yg, |
3 $ Ы = $ , |
j = ~ l , хо < * < * | . |
(7.48) |
|||||
Решения yjjt^ |
и yjjt2^ получим как решения следующих начальных |
|||||||
задач |
' |
' |
|
' ' |
|
|
|
|
( |
O |
' = L(x)y((; ; l)+ М (*>, |
y j j j ' W = |
= |
о, |
(7.49) |
||
|
(2/fl}2))' = |
£(*)У((; | 2) + *(*), |
У((,,}2)(*о) = |
^ |
|
(7.50) |
||
Здесь |
€ Е" |
— |
вектор, являющийся частным |
решением |
систе |
|||
мы уравнений |
|
= |
а и ортогональный к векторам |
(j |
= 1, 1), |
|||
но не нормированный. |
|
|
|
|
||||
На вопросе о том, как практически построить векторы |
(j=1,1+2) |
мы здесь не задерживаемся, чтобы не загромождать изложение деталями, а рассмотрим его позже.
Теперь общее решение уравнений (7.37), удовлетворяющее условию Ау(хо) = а, на первом участке можно представить в виде
У(1)(®) = ^ ( а ; ) ^ ) . |
(7.51) |
7.2. Дискретная ортогональная прогонка |
177 |
Здесь матрица £7(|)(х) является матрицей-функцией (7.42) и. С(|) =
(С(А|,. . . , С(!)/,р, 1)т — вектор произвольных постоянных на первом участке.
На левом конце первого участка (при х = од) матрица-функция 17(1)(®) принимает значение
tf(l)(*o) = *(i), £(i) = « $ , . . . , $ 2))Т. |
(7.52) |
Здесь ^(i) — матрица, столбцами которой являются ортогональные
векторы |
(j = 1,{-|- 2), введенные выше. |
|
На правом конце первого участка, т.е. при |
х = х\, значение |
|
матрицы £7(i)(а;) обозначим так |
|
|
£7(1)(*,) = *(,) = (<!>$..... « J J V , »(?)=*(o(*i). |
i = M +2 . (7.53) |
Если столбцы матрицы Е7(,)(а:о) = £(i) образовывали ортогональную
систему векторов в К", то по мере увеличения х столбцы матрицы £7(1)(г) все больше отклоняются от ортогональной системы. Отклонения
нарастают особенно быстро, если уравнение (7.37) имеет быстрозатухаю щие и быстровозрастающие однородные решения. Это приводит к тому,
что векторы J/(j)(*) 0 = 1,1 + 2) при больших х могут стать почти ли
нейно зависимыми. Идея дискретной ортогональной прогонки состоит в том, чтобы, пока эти отклонения не слишком велики, прервать про цесс интегрирования и перейти на следующем участке к другому общему решению. Это решение должно быть таким, чтобы составляющие его векторы однородных и частных решений были ортогональны при х = х \ , т. е. в начале следующего участка. Для этого проортогонализируем с по мощью процесса Грама—Шмидта (см., например, [5]) столбцы матрицы (7.53), причем первые 1 столбцов, представляющих в Ф(|) решения од
нородной задачи (7.39), кроме того, пронормируем, а векторы ф | ^
итолько проортогонализируем к Ф^| (j = ITT) без нормиров
ки. Полученную систему векторов обозначим через $ ( x ) ( j = 1,1 + 2)
и образуем из них матрицу |
точно так же, как матрица |
(7.52) |
образована из векторов ^ |( х ) |
(j = 1,1 + 2). Результаты этой операции |
|
можно представить в виде ' |
|
|
ф (|) = £(2)fi(l)• |
(7-54) |
Так как матрица Ф(1) ортогонализируется по столбцам, то матрица ортогонализации fl(j) является верхней треугольной матрицей, и с учетом
178 Глава 7. Нелинейные краевые задачи для обыкновенных уравнений
особенностей, связанных с ортогонализацией векторов имеет вид
"1? |
"12 |
• •• |
"1? |
"i/+i |
wi/+2 |
0 |
ш22 |
• •• |
4 ° |
" a l l |
|
П (1) = |
|
|
|
|
„(0 |
0 |
0 |
.. |
J ‘) |
|
|
•• • |
из,, |
W«+1 |
Ш11+2 |
||
0 |
0 |
0 |
1 |
0 |
|
0 |
0 |
•• • |
0 |
0 |
1 |
иф}*"^ 4 0
(7.55)
Векторы *(2) (j = ТЛ) выражаются через векторы Ф^| следующим образом
с У |
= - L |
з-1 |
|
|
|
| ф0‘) _ |
0) ,0) |
1 ' |
7 = 1, 1, |
||
»(2) |
W.<1) |
1 *(1) |
2) |
|
|
|
л |
>=1 |
|
|
|
где
1«/2
“ « ' “ « « f S . < < * |
4 ’ = * № * 0) + Ц <"«>2 |
(J = 17I)
(7.56)
(7.57)
Векторы |
и ((2)^ не нормируются и вычисляются по формуле |
|
|
М2) |
|
£(2) — ф(|) X ) "*«^(2)’ * —Н - 1, к = I + 2. |
(7.58) |
|
|
»=1 |
|
Полученную |
ортогональную систему векторов £ $ (J = |
1,1 + 2) |
возьмем в качестве начальной системы для построения решений
0 = 1,1 + 2), составляющих общее решение уравнения (7.37) на втором участке. Т.е. так же, как и на первом участке, построим решения следующих начальных задач
(у(2)) |
= 1 (Х)У(2)> |
1/(2)(®i) = £ д , |
j = Т Л , |
*1 |
< * < *2- |
(7.59) |
||
G O |
' = |
+ Щ*)> |
$ % |
, ) |
= £ (^ ° = 0. |
(7.60) |
||
|
= •Ь(*)»(2)‘2) + ф(*). |
У д 2)(*|) |
= $ |
2). |
|
(7.61) |
7.2. Дискретная ортогональная прогонка |
179 |
Из этих решений общее решение образуется в виде |
|
2/(2)0 е ) = и (2)(х)с (2)- |
(7.62) |
Щ2)(*) = fo g • • • 2/((; ; 2)], С-2 = ( e g ........C g , р, 1)Г. |
(7.63) |
В силу соотношений (7.59)—(7.61) |
|
С(2)(*,) = £(2) - ( $ ) ........ |
|
Из соотношений (7.52), (7.54), (7.62), (7.64) следует, что |
|
u w (x )= u {2)(x)il(,). |
(7.65) |
Тогда по отмеченному выше свойству У(2)(х ) (7-62) является общим решением уравнения (7.37), удовлетворяющим условию Ау^)(хо) = а. Поскольку у(1)(а:) (7.51) является общим решением той же задачи, то
векторы произвольных постоянных |
и С(2) связаны соотношением |
||||||
|
|
|
С(2) = fi(i)C(i). |
|
(7.66) |
||
Поступая точно так же на участках 3 , 4 , . . . ,7V, строим на них |
|||||||
общие |
решения |
у^(х) |
уравнения |
(7.37), удовлетворяющие условию |
|||
А у^(хо) = ®. в виде |
|
|
|
|
|
||
|
|
y{i}(x) = U{i)(x)C{i)> |
i = -pV. |
|
(7.67) |
||
Так как все y^(x){i — \,N) являются общим решением одной и той |
|||||||
же задачи, то векторы Сдо и С(,+[) связаны соотношением |
|
||||||
|
|
C(i+1) = n WCW, |
i = T j T ^ l , |
|
(7.68) |
||
где |
— матрица ортогонализации вида (7.55) и такая, что |
|
|||||
Ф(<) = п (|)£(»Ч-1)> |
Ф(.)=С(,)(®<). ^(<+1)=С({+1)(*{), |
* = 1,7V-1. |
(7.69) |
||||
Вектор постоянных Сдо находится |
из условия |
на правом конце |
|||||
(при х |
= Хн), |
которое |
принимает форму B y ^ ( x N) = Ь. С |
учетом |
|||
выражения (7.67) это условие сводится к уравнению |
|
|
|||||
|
|
BV(N)C(N) = ь> ф(лг) = U(N)(XN )- |
|
(7.70) |
|||
Так как в векторе |
= ( e g , . . . , С ^уР , 1)Г неизвестными явля |
ются только первые (1 -1- 1) компоненты, то уравнение (7.69) можно представить в форме
J C (N ) = d- |
(7.71) |
180 (лава 7. Нелинейные краевые задачи для обыкновенных уравнений
Здесь
J = BD,
фО) |
ф'.(*+1)1 |
(7.72) |
|
c w = « ),........ |
|||
V ) |
• • • w(ЛГ) |
Матрица В имеет размер I х п, матрица D — п х (1+ 1). Поэтому размер матрицы J = BD равен 1 х (1 + 1).
Уравнение (7.71) играет ту же роль, что и уравнение (7.29) при ре шении задачи (7.37) методом начальных параметров. Поэтому его ре шение может быть построено так же, как и в разделе 7.1, в виде С(лг) = аСфг) + 0(дг)> где коэффициент а определяется из дополнитель ного условия, например, из условия вида (1.8S).
После того, как тем или иным способом найден вектор С(лг)> совер шается обратный ход прогонки, на котором определяются векторы как решения уравнений (7.66)
П(0С(0 = С(,.+1), |
i = N - |
1, — , 1- |
|
|
(7.73) |
Решение краевой задачи (7.37) на участках строится по полученным |
|||||
и построенным на прямом ходе матрицам |
в |
соответствии |
|||
с зависимостью (7.67) |
|
|
|
|
|
Уг(х) = и@(х)Сф, * м |
< * ^ Xi, |
i = N , ..., |
1. |
(7.74) |
|
Обратимся теперь к вопросу о том, как построить нужные нам |
|||||
для начала прямого хода векторы |
{(*)(« = |
l, ( + 2). |
Рассмотрим его |
при условии, что главный (левый) минор матрицы А отличен от нуля. В других случаях видоизменения решения очевидны.
Сначала построим |
1 линейно независимых решений £^(г = 1,1) |
однородного уравнения |
= 0. Это уравнение представим в форме |
allfl + • • • + —alm+lfm+l + • • • + aln£n>
............................................................................. (7-75) amlf1+ • • • + amm£m = amm+lfm+l + • • • + <hnn£n-
Теперь, задав 1 линейно независимых комбинаций величин ^ (* = т + 1, п), входящих в правые части этих уравнений, например, в ви де (1, 0, . . . , 0), (0, 1, . . . , 0) , . . . , (0, 0, . . . , 1), и решив систему уравне
ний (7.75), получим 1 линейно независимых векторов = 177). Проортогонализировав эти векторы с помощью процесса Грама—Шмидта,
построим 1 ортонормированных векторов < ^(i — 1, 1), являющихся ре
шениями уравнения А( = 0.