Федоренко Р.П. Введение в вычислительную физику (1185915), страница 50
Текст из файла (страница 50)
Оно имеет структуру 1 Х и ф-е!л, ! ! ! ! где а, — произвольные постоянные. Таким образом, мы имеем 1— мерное пространство, Поскольку число левых краевых условий х менъше размерности этого пространства, в нем можно найти элемент, удовлетворяющий однородным левым краевым условиям. Другими словами, существует нетривиальное решение системы й уравнений с 2 неизвестными а,: ф а, Ф,, 1,.) = О, 1= 1, 2, ..., х. 5 181 ЖЕСТКИЕ ЛИНЕЙНЫЕ КРАЕВЫЕ ЗАЛАЧИ Пусть а, — решение этой системы и 11а(~ = 1. Рассмотрим «возмущенное» решение у(1) = х(Р) + ~Ч, а, Ф, е'А.. Вектор-функция у(т), очевидно, удовлетворяет уравнению (1) и левым краевым условиям.
Правые краевые условия, конечно, нарушаются. но так как возмущение при т = т очень мало (0(е ~г)), то такого же порядка будут и невязки в правых краевых условиях. Приведенное несложное построение доказывает необходимость сформулированных требований к числу краевых условий для вычислительной корректности задачи. Более сложный анализ, который мы не воспроизводим, показывает, что эти условия являются и почти достаточными. Точнее, если по числу краевых условий задача «правильная», это еще не гарантия вычислительной устойчивости задачи. В принципе среди «правильных» краевых задач могут встретиться и вычислительно неустойчивые, но такие задачи — редкое исключение, требующее некоторых случайных совпадений. В общем случае задача является вычислительно устойчивой.
Выше описана ситуация, в которой требуется построить вычислительно устойчивый способ решения разиосгной краевой задачи (3) (краевые условия для (3) имеют в точности тот же вид, что и для (1)). Характер вычислительных проблем уже разъяснен в более простой ситуации (см. 5 1О). Напомним, что при попытке решить краевую задачу в виде комбинации решений подкодящим образом подобранных задач Коши мы приходим к необходимости вычислять конечную величину, суммируя функции типа е~', что, как известно, приводит к значительной потере точности из-за сокрагдения главных знаков. Кроме того, само численное интегрирование задач Коши в этих условиях сопровождается сильным накоплением вычислительных погрешностей: множитель еы в оценке погрешности численного решения неусграним. Итак, проблема поставлена.
Перейдем к ее решению. Заметим только, что в некоторых случаях мы будем описывать алгоритм прогонки в дифференциальной (а не в разностной) форме, т.е. будем сводить решение линейной краевой задачи (1) к последовательности нелинейных, но зато устойчивых задач Коши. Проблема же численного интегрирования этих задач решается самыми простыми средствами, так как амбар шага из соотношения ЙА(~т~к1 допустим. Конечно, задача предполагается вычислительно корректной. В противном случае едва ли имеет смысл искать вычислительно устойчивые методы ее решения. Ортогональная прогонка.
Методы численного решения жестких линейных краевых задач основаны на следующем соображении. Рассмотрим множество решений дифференциального уравнения пгивлижвнньге методы вычислительной «ялики 1ч. н х = Ах+ а, удовлетворяющих только левым краевым условиям, Обозначим зто многообразие через Л (1).
При каждом фиксированном значении 1 многообразие и (1) является просто линейным (точнее, афинным) подпространством л-мерного фазового пространства. Его размерность, очевидно, есть л — к. Рассмотрим аналогичное подпространство, образованное всеми траекториями, удовлетворяющими правым краевым условиям.
Обозначим его через М+(1). Получим «явное выражение», например, для и (1). Теория линейных дифференциальных уравнений дает простой рецепт: 1, Находим частное решение неоднородной задачи (1), удовлетврряющее неоднородным левым краевым условиям. Для этого находим любую точку Х~(0) Е А'", удовлетворяющую системе й линейных уравнений (2), и с такими данными Коши проинтегрируем систему (1). Полученное решение обозначим через Х»(1). 2, Построим л — к линейно-независимых решений однородной системы х = Ах, удовлетворяющих однородным левым краевым условиям, Обозначим эти решения через Х'(1). Их можно получить решением соответствующих задач Коши. Данные Коши для этих решений строятся просто.
Пусть в матрице, составленной нз й «-мерных строк 1, (1= 1, 2, ..., К), не вырождена матрица нз первых л столбцов. Тогда Х'(О) = (..., О, ..., 1„+г, О, ...), т.е. все компоненты с номерами к + 1, к + 2, ..., л равны нулю, кроме (к+ 1)-й, равной единице. Первме л компонент получаются решением системы к линейных уравнений (1л Хг(0)) = 6 (г' =1, 2, ..., л). Явное представление и (1) имеет вид «-и и (1) = Хь(1) + 2 аг Хг(1). (5) г ! Таким образом, гиперплоскость и (1) задается точкой Хо(1) и «репером» из векторов Хг(1), аг — произвольные множители.
В такой же форме можно представить и л+(1). Очевидно, искомое решение краевой задачи есть пересечение этих многообразий: х(1) = 11 (1) 1) К (1). (Именно так рекомендует решать краевые задачи общая теория, ие имеющая в виду задачи с большим параметром.) При каждом фиксированном г зто есть пересечение (л — л)-мерной и к-мерной гиперплоскостей л-мерного пространства. Каждое многообразие й (1),' л'(1) состоит из траекторий уравнения х = Ах + а. каждая отдель- ЖЕСТКИВ ЛИНЕЙНЫЕ КРАЕВЫЕ ЗАДАЧИ в ~в1 ная траектория включает в себя сильно растущие (как вправо, так и влево) компоненты типа е~', е с', т,е.
Я, Я«в представлении (5) образованы из «неусгойчивых элементов. Однако сами многообразия, если задача вычислительно корректна, оказываются устойчивыми. Если рассматривать, например, Я (г) как некоторую поверхность в (и+ 1)-мерном пространстве [О, Т1 х Я", то при малой вариации правой части уравнения или значений Ьи входящих в краевые условия, это многообразие подвергнется, соответственно, малой деформации.
(Хотя составляющие его отдельные траектории при этом изменяются очень сильно, малое изменение начальной точки Х'(0) такой траектории порождает отклонение, которое с ростом 1 растет, как ею.) Вышеприведенные качественные соображения подсказывают путь, на котором следует искать устойчивый метод решения такой краевой задачи: надо работать не с индивидуальными решениями, а с многообразиями. Что зто означает практически? Стандартный метод решения краевых линейных задач, описанный в й 8, — пример метода, основанного именно на использовании подходящего набора индивидуальных решений дифференциального уравнения.
Они неустойчивы, вычислительно неустойчивым оказывается и такой «школьный» алгоритм. Перейдем к методам, в которых используются многообразия Я (1), Я+(г). Есть два стандартных, двойственных друг другу способа описания линейных подпространств Я(1) размерности г (где г— параметр, Я(1) — г-мерная гиперплоскосгь в Я" при каждом г). 1.
Достаточно знать некоторую точку Х(Р) Е Я(г) и г векторов (обозначим их е„е, ..., е,(г)), образующих базис в Я(Р), и тогда Я(г) есть множество точек х Е Я" вида Г х = Х(1) + ~х а,. е,. (Р), (б) 3 ! где а — произвольные числа. 2. Можно выделить Я(1) системой и — г линейных уравнений, имеющих ту же форму, в которой заданы краевые условия (х, 1(Г)) = Ь(1), 1=1, 2, ..., и — г, где 1,(Г) — система и — г лннейно-независимых векторов в Я", Ь„(1) — некоторые числа.
Способ вычисления Х, е, был указан выше. Почему же он в такой форме не пригоден? Причина в том, что не всякие формально правильные базисы приводят к устойчивому представлению многообразия. Хорошими являкпся ортогональные и близкие к ним базисы, плохими — сильно «сплюснутые» базисы, векторы которых хотя 248 ииьлижьнньн: методы вы вслятхльнон «нонки и линейно-независимы, но очень близки друг к другу. Рисунок 2б поясняет сказанное. Каждый из двух базисов, изображенных на рисунке, описывает в трехмерном пространстве плоскость рисунка. Если вектор е, подвергнуть малому возмущению, до«г и бавив малый вектор, ортогональный плоскости риг'«4 сунка, то в первом случае определяемая базисом новая плоскость лишь на малый угол отклонится от первоначального положения, во втором случае (если «! возмущение по модулю сопоставимо с разностью р„, 2ь ез — е,) новая плоскость может стать почти ортогональной по отношению к плоскости рисунка.
При интегрировании задачи Коши (слева-направо) с начальными значениями х(0) = ео образующими линейно-независимый, близкий к ортогональному базис, по мере роста времени 1 базис е2(1), ез(1), ..., «,(1) начинает вырождаться. В каждом решении выделяются быстро растущие вправо компоненты, на фоне которых остальные «теряются» и даже пропадают из конечной разрядной сетки машинного представлении чисел: происходит «сплющивание» базиса, и он уже определяет нужные нам многообразия неустойчивым образом.
Однако нам нужны сами подпространства 11 (1), А«(Г), а не их частные представления, Поэтому можно бороться с вырождением, исправляя базис через какие-то отрезки времени. Следует иметь в виду, что хороший базис при интегрировании не сразу становится плохим.