Федоренко Р.П. Введение в вычислительную физику (1185915), страница 51
Текст из файла (страница 51)
Для того чтобы растущие экспоненты «задавили» все остальные, нужно некоторое время. Эти соображения и лежат в основе метода прогонки с ортогонализацией, предложенного С. К. Годуновым. Перейдем к более аккуратному описанию метода. Прежде всего предположим, что векторы 1, (1= 1, 2, ..., к), входящие в левые краевые условия, ортогональны друг к другу (если это не так, можно перейти к эквивалентной системе краевых условий, ортогонализовав векторы 1,.). Более того, дополним совокупность векторов 1, (О) = 1, (1= 1, 2, ..., й) — нам удобно именно такое обозначение этих векторов — до полной ортонормированной системы векторов 1,. (О) (1= 1, 2, ..., и).
Левые краевые условия теперь можно записать в виде (1, (О), х(0)) = Ь, (1 = 1, 2, ..., й). Начнем интегрировать слева-направо и — й + 1 задач Коши. Их решения обозначим через Х«, Х', ..., Х««(1). Вектор Х«(1) — это «какое-то» решение неоднородного уравнения. Определим его следующими данными Коши: Х«(0) = ~Х' Ь, 1,(О). Очевидно, выполняются г ! условия Х« = АХ«+ а, (Х«(0), 1, (О)) =* Ьп 1= 1, 2, ..., /с.
249 жесткие линеЙные кРАеоые ЗАЛАчи 8 181 Остальные л — к векторов Х'(!) определяются данными Коши для однородной системы: Хт(0) = 1,,«2(0), у = 1, 2, ..., л — А. Тогда конструкция (5) при произвольных а, дает все решения системы (1), удовлетворяющие левым краевым условиям, и описывает многообразие Р (1). Однако это плохое описание, так как точка Хо(1) состоит в основном из растущих со скоростью еш решений, т.е. она находится далеко от искомого решения, которое в силу (3) ограничено (О(1)). При этом погрешности в вырождающемся при росте ! базисе Хт(1) (2 = 1, 2, ..., л — к) приводят к очень большому отклонению представления (5) от точного многообразия Л (1).
Мы заинтересованы и в качестве базиса, и в том, чтобы «начало координат» Хо(1) находилось на расстоянии О(1) от искомого решения х(1). Как уже отмечалось, эффект жесткости системы не сразу приводит к столь неприятным последствиям. При малых временах ! разница между еш и е ш еще не очень велика. Итак, назначим некоторое число 2», такое, что 11А!!Ь 0.1 . 1, и проинтегрируем систему для Хо, Х', ..., Х" ! так, как было указано выше. В момент времени !! = с! мы имеем представление Я (1) вида (5).
Перейдем к другому, более удобному для наших целей представлению. Для этого систему векторов Х'(1,), Хз(1,), „., Х" 4(1!) подвергнем стандартной процедуре ортонормировкн и превратим ее в ортонормированный базис е'и ез, ..., е„' Таким образом, конструкции л-! л-4 Хо(! ) + ~к' а.Х1(1), Хо(1) + С, а е! 2=! 2 ! описывают одну и ту же (л — к)-мерную гиперплоскость. Теперь в этой гиперплоскости следует найти более «удобную» точку Хо(1,), например наиболее близкую к началу координат, с тем чтобы расстояние от искомою решения (о котором мы знаем только, что ))х(1)!! = О(1)) до Хо(1!) было О(1).
Такой пересчет Х(!!) в Х(1!) легко осуществляется: Хо(1) х, (Хо(1) !) е! / ! На интервале (1,, 1, + й) интегрируется неоднородная система (1) с начальными данными при ! = 1,; Хо(1,) дает «продолжение» пгивлиженные методы вычислительной»изнкн 1ч. и решения Хв на новый интервал. В качестве базиса на этом интервале используются векторы хг(1) (1=1, 2, ..., л — й), являющиеся решениями однородной системы х = Ах с начальнымн данными Хг(1,) = г'.
Этот процесс продолжается с периодической ортонормировкой базиса и смещением точки Хв. Интегрированием справа-налево с периодической ортонормнровкой базиса получаем представление многообразии Я+(1). Имея Я (1) и Я+(1), решение х(1) в каждый момент времени 1 находим как Шщнственную точку пересечения (л — л)-мерной гиперплоскости Я (1) с й-мерной гнперплоскостью Л+(О. Фактически этО сводится к системе л линейных уравнений с л неизвестными + «ы а„ам ..., а„= (а,, аз, ..., а„ы а,, аз, ..., ав).' Х" (~) +~; а Хт (1) = Хо(1) + ~к, 'а+Х'„(Г).
Непрерывная ортонормирпвка; А. А. Абрамовым был предложен иной подход к построению устойчивого алгоритма решения краевой задачи (1) с использованием методов численного интегрирования задач Коши. Он основан на втором способе описания мнопюбразий Л, Я+ (см. (7)). Имея левые краевые условия (1,, х(0)) = Ь; (1= 1, 2, ..., Ь), попытаемся «распространить» этн соотношения на весь интервал, т.е. получить для решения х(1) соотношения (7).
Если функции 1;(1), Ь;(1) будут вычислены (и для правых краевых условий тоже), краевая задача в сущности будет решена. На первый взгляд вычисление требуемых Функций несложно. В самом деле, продифференцируем по г соотношение (7), опуская для простоты индекс и (1, х) + (1, х) = Ь. Используя прн этом уравнение х = Ах + а, получаем (1, х) + (1, Ах) + (1, а) = Ь нли, в другой форме, (1+ А'1, х) + (1, а) = Ь.
Очевидно, цель будет достигнута, если в качестве 1(1) взять решение задачи Коши: 1= — А 1, Ь=(1, а) (1(0) и Ь(0) берутся из краевого условия). Однако зто решение не может нас устроить: спектр А" аналогичен спектру А, н интегрирование задачи Коши для 1(1) содержит те же проблемы, что и интегрирование задач Коши для уравнения х = Ах; в 1(1) также происходит выделение быстро растущих экспонент. Можно нормировать 1((),.т.е. записать (7) в виде (1(1)/И1(1) И, х(Г)) = Ь(1)1И1(Г) ~К 251 ЖЕСТКИЕ ЛИИЕЙИЫЕ КРАЕВЫЕ ЗАДАЧИ 8 18! или, вводя новые функции Л(1) = 1(1)/Ц/(/) Ц и р(/) = Ь(1)/Ц/(1) Ц, в форме (Л(/), к(1)) = ~3(/), где растущие функции уже не фигурируют. Нетрудно проверить, что Л(1) является решением задачи Коши '/Л = —.8*Л+ 1АЛ' Л~ Ж * 1Л, Л> ' Уравнение для Ц не выписываем, так как этот прием не снимает основной неприятности: прн независимых, например, взаимно-ортогональных векторах Л;(О) векторы Л;(1) по мере роста ( вырождаются, выходят на общую асимптотику, определяемую наиболее быстро растущей экспонентой.
Другими словами, «базис» из векторов Л,.(1) сплющивается, становится плохим, его использование приводит к резкому возрастанию влияния малых вычислительных погрешностей. Переход от 1,(/) к Л,(1) только маскирует ситуацию, делая ее внешне более благополучной: из расчета устраняются быстро растущие функции, иногда приводящие к выходу чисел из класса машинных (выход в машинную бесконечность, т.е. «авост»). Выход состоит в том, чтобы в процессе интегрирования всех уравнений для 1,.(1) подправлять .векторы, беря их специальные линейные комбинации (краевые условия (1,, х) = Ь, можно заменять некоторыми их линейными комбинациями, не меняя самой краевой задачи). Перейдем к систематическому изложению варианта прогонки, в котором ортогонализация производится непрерывно и, так сказать, автоматически. Представим левые краевые условия в компактной форме: 1. х(0) = Ь .
Здесь /. — матрица л — /с, имеющая /с строк, л сголбцов; ее строками являкпся векторы 1; (1= 1, 2...,, /г), входящие в левые краевые условия. Вектор Ь составлен из чисел Ь; (1= ), 2, ..., Л), входящих в те же левые краевые условия. Аналогичное обозначение примем и для правых краевых условий: /.»х(т) = Ь», где /.» — матрица л- л — /г. Как было сказано выше, решение краевой задачи является пересечением двух интегральных многообразий системы (1): Я (1) и Я»(/), Используем второе представление этих мнопюбразий в виде пересечения /с и л — Й гиперплоскостей (зависяших от параметра 1) соответственно: игиБлижеииые метОды ВычиглительиОЙ Физики 1Ч.
П (10) Е,+«.А=О, Ь=Еа. Начальные данные Коши Е (0), Ь (0) дают левые краевые условия, 1.+(Т), Ь+(Т) — правые. Пусть й (!), А+(Т), Ь (!), Ь+(!) найдены интегрированием соответствующих задач Коши. Тогда решение х(1) в каждый момент времени находится решением системы п линейных уравнений: «". (!) х(!) = Ь Я (й уравнений), 1,+(!) х(!) = Ь+(Ю) (и — Ь уравнений), (1!) Эта процедура, называемая иногда алгоритмом встречной прогонки, как было сказано, в нашем случае (для жесткой краевой задачи) вычислительно неустойчива. Однако оиа полезна как теоретический ориентир. В частности, полезна следующая теорема. Теорема.
Пусть «'. (1), «.+(!)„Ь (!), Ь+(!) получены решением соответствующих задач Коши для уравнения (10) и х(Т) находится из системы (11), которая не вырождена ни прн каком и Тогда х(Г) является решением краевой задачи. Заметим, что предположение о иевырожденности системы (! 1) при всех ! можно, конечно, заменить предположением о невырожденности при одном каком-то г или, иначе, предположением о невырожденности самой краевой задачи.
Доказа!Иельстиео. Пусп (11) выполняется при всех О Дифференцируя по г, получаем е,х + Сх = Ь. Используя (10) для ь и Ь, имеем — ЕАх+«.х = «.а, или Ь(х — Ах — а) =О. Таким образом, мы приходим к системе «. (х — Ах — а) = О, ь«(х — Ах — а) =О, из которой в силу ее невырожденности получаем уравнение х — Ах — а =О. Выполнение краевых условий следует из данных Коши для 2,, 2,+, Ь, Ь+. Перейдем к построению «устойчивых» описаний многообразий Я (!), Я+(г). Рассмотрим, для определенности, описание Я . Поскольку для Я+ все делается точно так же, индексы « — » н «+» опустим.