Текст
                    В.П.Ильин
МЕТОДЫ
КОНЕЧНЫХ РАЗНОСТЕЙ
И КОНЕЧНЫХ ОБЪЕМОВ
ДЛЯ ЭЛЛИПТИЧЕСКИХ
УРАВНЕНИЙ
-V(3V«)=/ U%ds=j'fdv
S I
J ■ 4 8
0
7
LhUh^f+wh Au^f


В. П. Ильин МЕТОДЫ КОНЕЧНЫХ РАЗНОСТЕЙ И КОНЕЧНЫХ ОБЪЕМОВ ДЛЯ ЭЛЛИПТИЧЕСКИХ УРАВНЕНИЙ Новосибирск Издательство Института математики 2000
УДК 519.6 ББК 22.19 И46 Ильин В. П. Методы конечных разностей и конечных объемов для эллиптических уравнений. — Новосибирск: Изд-во Ин-та математики, 2000. -- 345 с. ISBN 5-86134-087-0. Излагаются общие математические принципы и алгоритмические особенности методов конечных разностей и конечных объемов для решения эллиптических уравнений. Описываются алгоритмы дискретизации смешанных краевых задач в сложных областях. Исследуются основные теоретические вопросы аппроксимации, устойчивости, сходимости и оценок погрешностей. Изучаются компактные разностные схемы повышенной точности для дифференциальных уравнений с переменными коэффициентами. Излагаются методы построения балансных аппроксимаций различных порядков на треугольных и четырехугольных конечных объемах. Рассматриваются современные вычислительные технологии сеточных методов, структурные, спектральные и монотонные свойства алгебраических уравнений. Изучаются эффективные прямые и итерационные методы решения систем высокого порядка с разреженными матрицами. Книга предназначена для аспирантов, студентов и специалистов по вычислительной и прикладной математике. Ил. 21. Библиогр. 48. р# Издание осуществлено при финансовой поддержке И Российского фонда фундаментальных исследований (код проекта 00 01-14007). и 1602120000-14 Без об_явл Ά Я82(03) 2000 ЬезоЬъявл· ISBN 5-86134-087-0 © Ильин В. II., 2000 © Институт математики им. С. Л. Соболева • СО РАН, 2000
ВВЕДЕНИЕ. ОСНОВНЫЕ ЗАДАЧИ ТЕОРИИ И ПРАКТИКИ СЕТОЧНЫХ МЕТОДОВ Сеточные методы являются основным средством вычисления решений дифференциальных уравнений или эквивалентных им интегральных постановок и основаны на приближениях производных от функций непрерывного аргумента конечно-разностными выражениями и применении квадратурных формул. В философском смысле их применение является отражением всеобщего круговорота в природе, так как дифференциальное и интегральное исчисления сами возникли из асимптотического анализа малых величин, а уравнения математической физики — главный объект нашего внимания, - как правило, следуют из балансных соотношений на конечных объемах, в их предельном рассмотрении. При всем многообразии сеточных алгоритмов их методология едина и включает выполнение следующих ключевых этапов: - дискретизацию расчетной области, в которой определено решение исходной задачи, заключающуюся в построении сетки — конечного множества точек (узлов), расположенных достаточно близко друг от друга внутри области, на ее границе и, может быть, за ее пределами; - аппроксимацию исходных дифференциальных уравнений или интегральных соотношений с учетом граничных условий, результатом чего является система алгебраических уравнений относительно искомого сеточного решения, определенного в узлах сетки; - исследование свойств сеточных решений: существование, единственность, устойчивость, сходимость приближенного решения к точному решению исходной задачи и оценки погрешности; - построение и обоснование численных методов решения алгебраических сеточных уравнений. Конечной целью теории сеточных методов является оптимизация алгоритмов, которая в общем случае представляет собой сложную и нерешенную проблему. Понятие оптимального метода в вычислительной
4 ВВЕДЕНИЕ математике может трактоваться по-разному, и мы будем определять его следующим образом: алгоритм называется оптимальным, если он обеспечивает решение данного класса задач с требуемой точностью при минимальных вычислительных затратах. Здесь уместно сделать ряд комментариев. Два метода, применимые для конкретной задачи, могут обладать противоположными сравнительными эффективностями, если их рассматривать на классах решений разной общности. Аналогично один алгоритм может оказаться более экономичным при меньших требованиях к точности, а другой — при более жестких. Подчеркнем, что неправильно, строго говоря, считать из двух методов лучшим тот, который при одинаковой вычислительной сложности дает "более высокую точность". Надо обязательно оговаривать ее рамки, так как, например, точность в десять значащих цифр практически никогда не нужна. Очень важно также иметь в виду, что сеточные методы — существенно машинные, так как их реализация "вручную" в современной постановке нереальна. Поэтому сравнительная эффективность метода может зависеть от свойств ЭВМ, что особенно актуально при распараллеливании алгоритмов на многопроцессорных вычислительных системах с разной архитектурой. Понятно, что эффективность численного решения задачи сильно зависит и: от качества программной реализации алгоритма, а трудозатраты на его получение - от уровня информационных технологий, что особенно критично при крупномасштабных вычислительных экспериментах. Однако здесь мы уже погружаемся в более обширную предметную область, называемую математическим моделированием. Она включает и постановку физико-математических моделей, и построение алгоритмов с их программным отображением на архитектуру ЭВМ, и численное исследование реальных процессов или явлений. Эти вопросы не входят в круг изучаемых в этой книге предметов, но их перечисление дает представление о широте профессиональных интересов математика- вычислителя. Исторически после появления вычислительных машин методы конечных разностей (МКР) были наиболее распространенным аппаратом решения задач математической физики. Однако впоследствии пальма первенства в теоретических исследованиях и практическом применении (особенно за рубежом) перешла к методам конечных элементов (МКЭ), основанных на аппроксимации вариационных постановок, что отражается в количестве научных статей и монографий. За последние десятилетия активизировались исследования по методам конечных объемов
ВВЕДЕНИЕ 5 (МКО), или бокс-аппроксимациям. В определенном смысле эти алгоритмы сближают технологии методов конечных разностей и конечных элементов. Методологически же они представляют собой "новую волну" балансных, или консервативных, разностных схем, основанных на приближениях интегральных соотношений, являющихся следствием дифференциальных уравнений. Мы исследуем вопросы аппроксимации краевых задач на основе МКР и МКО в первой и второй главах соответственно, применяя в остальном общие подходы к исследованию и решению сеточных решений. В методологическом плане важно, что решение исходной задачи есть функция непрерывного аргумента, а вычисляемое сеточное решение определено на дискретном множестве узлов сетки. В силу этого возникает дилемма, в каких пространствах и терминах строить теорию сеточных методов. Принципиальным моментом методов конечных элементов является то, что приближенное решение, как и точное, есть функция непрерывного аргумента, в силу чего весь аппарат их исследования основывается на средствах функционального анализа. Мы придерживаемся алгебраического подхода, в котором основные объекты исследования и операции над ними формулируются в терминах векторов и матриц. На наш взгляд, это позволяет подать материал строгим, но прозрачным языком, не вводя неизбежную в других случаях специальную технику. Изложение книги замкнуто в том смысле, что из теории аппроксимации используются фактически только ряд Тейлора и квадратурные формулы, а из линейной алгебры - основные понятия и фундаментальные теоремы. Результаты теории дифференциальных уравнений мы не привлекаем, ограничиваясь минимально необходимыми гипотезами о свойствах решаемых задач. Как правило, сеточные методы обосновываются и применяются к численному решению дифференциальных задач, относительно которых известны существование, единственность, корректность и гладкость решения. Однако иногда вычисления приходится проводить и в таких сложных случаях, когда теоретически вопросы являются открытыми, и тогда адекватность расчетов может основываться на методически грамотно построенных численных экспериментах, если разностные решения на последовательности сгущающихся сеток подтверждают практически и устойчивость, и сходимость результатов к предельным значениям. Методам конечных разностей посвящена обширная литература, в том числе известные монографии С.К.Годунова и В.С.Рябенького [11],
6 ВВЕДЕНИЕ Р. Д. Рихтмайера и К. Мортояа [33], В. Вазова и Дж. Форсайта [5], Г. И. Марчука [23-28] и А. А. Самарского [35-39] с соавторами, вышедшие в свет в основном более 20 лет назад. По методам конечных объемов к настоящему времени имеется фактически только журнальная литература (по данной теме можно назвать небольшие по объему книги [31, 34]). Цель данной книги — отразить в достаточно компактной форме современное состояние теории методов конечных разностей и конечных объемов, отмечая их общие и различные методологические принципы. Ее материал основан на курсах лекций, читаемых автором в течение многих лет в Новосибирском университете. Изложение теории разностных методов традиционно осуществляется с разбивкой по основным видам уравнений в частных производных: эллиптических, параболических и гиперболических. В смысле физической интерпретации первый тип описывает стационарные задачи, а следующие два - нестационарные, что придает последним алгоритмическую общность ввиду последовательного численного интегрирования по временным шагам. Данная книга посвящена только решению краевых задач для эллиптических уравнений. Однако она же представляет собой первую часть полного курса по сеточным методам и содержит описание основных определений, теорем и математического аппарата, на которых основывается также изучение алгоритмов решения нестационарных задач, описываемых параболическими и гиперболическими уравнениями. Книга состоит из трех основных частей, каждая из которых представлена двумя главами: построение разностных уравнений путем аппроксимации непосредственно дифференциальных уравнений или эквивалентных им интегральных соотношений баланса, исследование алгебраических свойств систем линейных разностных уравнений и оценки погрешности разностных решений, прямые и итерационные методы решения систем уравнений с ленточными матрицами, описывающих двумерные или трехмерные разностные краевые задачи. Практически в каждой главе представлены современные результаты, полученные за последнее десятилетие многими математиками, в том числе и автором: методы конечных разностей и конечных объемов повышенной точности, новые свойства монотонных сеточных систем уравнений, быстрые прямые и итерационные алгоритмы для решения сверхбольших алгебраических систем с разреженными матрицами. Материал книги представляет собой базовый курс теории сеточных методов, и за его рамками остались многие интересные и актуальные проблемы, для изучения которых требуется существенно
ВВЕДЕНИЕ 7 более полное погружение в специальные вопросы. Сюда относятся методы решения нелинейных задач и систем дифференциальных уравнений; построение нерегулярных и адаптивных сеток с учетом априорной или апостериорной информации о свойствах искомых решений; аппроксимации сингулярно-возмущенных уравнений с малыми параметрами при старших производных, особенностями решений, наличием пограничных и внутренних слоев; решение задач на последовательности сгущающихся сеток; методы декомпозиции областей, вопросы вычислительной устойчивости алгоритмов и их распараллеливания на многопроцессорных компьютерах, вычислительные технологии математического моделирования. По этим и другим смежным вопросам читателю можно рекомендовать монографии В. И. Лебедева [20], Г. И. Марчука и В. В. Шайдурова [28], Дж. Ортеги и В. Рейнболта [29, 30], В. Д. Ли- сейкина и В. Е. Петренко (21, 22], С. К. Годунова с учениками [9, 10], Дж. Миллера с соавторами [14], Г. И. Шишкина [47] и автора [16-19]. Автор выражает искреннюю благодарность Л. М. Тарасевич и Η. Ε. Козорезовой за неоценимую помощь в подготовке рукописи.
ГЛАВА 1 КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ КРАЕВЫХ ЗАДАЧ Пусть Ω - область n-мерного пространства точек χ с декартовыми ортогональными координатами жь ..., жп, та > 2, а и{х) - определенная в этой области действительная функция, непрерывная вместе со своими производными. Мы будем рассматривать уравнения в частных производных второго порядка Ед2и ^ ди a™d^q + \bpd^p+cu = f{x)> p>q—l у ч р—1 И где коэффициенты apq, &р,си правая часть / - заданные в Ω вещественные функции от х. Уравнение называется эллиптическим в области Ω, если характеристическая квадратичная форма η для любых вещественных параметров ξχ,..., ξη и ж £ Ω строго положительна. В круг нашего внимания не входят системы дифференциальных уравнений, а также уравнения, содержащие производные высших порядков. Главными объектами исследований являются двумерные задачи с η — 2. Основные результаты теории разностных методов переносятся и на более громоздкий для изложения трехмерный случай. Одномерные задачи формально относятся к обыкновенным дифференциальным уравнениям, но мы их используем не только из удобства в методологическом плане, но и в силу их самостоятельного практического интереса. Область Ω предполагаем ограниченной, а ее границу Г - состоящей из частей Γι, Γ2, Гз, на каждой из которых задано условие или первого рода (Дирихле) и — gi(x), или второго (Неймана) §| = <?2(ж), или третьего (Нъющона) || + аи — Qz{%)\ здесь
ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ 9 щ означает производную по направлению внешней нормали к границе области. Отметим еще один характерный класс задач - нахождение решений, периодических по какой-либо одной переменной. В таком случае краевое условие периодичности имеет вид, например, u(xi 4- Η) — u(xi), а встречается оно при наличии расчетных областей с периодически меняющимися геометрическими и материальными свойствами (Н - длина периода). При исследовании конечно-разностных аппроксимаций от свойств краевой задачи нам требуется формально только достаточная гладкость решения, т. е. ограниченность необходимого числа производных. Мы не останавливаемся специально на нелинейных дифференциальных уравнений, так как для них справедливы все рассматриваемые аппрок- симационные качества МКР, поскольку они определяются только свойствами частных производных по независимым переменным. Фактически единственный инструмент функционального анализа, необходимый нам в гл. 1, - это ряд Тейлора, который в случае нескольких независимых переменных можно записать в виде и(хх + Ль...,асп + ftn) = и(хи...,хп) + ^ /ip— u(xu...,xn) р=1 р р~1 * р~\ р + (*ΤΪ)ϊ(Σ^) «(ίι,...,€.). (Li) Здесь hp - произвольные приращения соответствующих аргументов, ίρ € [χν<> Xp + hv] и, естественно, предполагается, что функция и(х) обладает ограниченными производными до (&Ч-1)-го порядка включительно. Подчеркнем, что при любом конечном значении к равенство (1.1) является не приближенным, а точным, в котором, однако, неизвестны величины ξρ. Последний член (будем обозначать его через ф) называется погрешностью отрезка ряда Тейлора. Обозначая далее через h максимальный модуль приращения (шага) аргумента, а через Mk+i - максимальный модуль смешанной производной (k-l· 1)-го порядка в окрестности [ж, χ 4- h], при h <ζ 1 можно записать \Ф\ < Jj^iyhk^M^ = 0{hk^), (1.2)
10 ГЛ.1. КОНЕЧНО-РА ЗНОСТНЫЕ АППРОКСИМАЦИИ где величина к + 1 называется порядком погрешности. В дальнейшем вместо Х{ для независимых переменных будем использовать обозначения я, у, ζ. § 1.1. Приближения производных и дифференциальных выражений Пусть и(х) - функция одной переменной, определенная на некотором отрезке Ω — Ω ϋΓ = {χ € [α, b]}. Определим в Ω сетку как совокупность точек узлов χ г с шагами hi — а?»+1 — ж* > 0 (в дальнейшем через h будем обозначать, по контексту, или шаг равномерной сетки, или максимальный из шагов /ц, а через Ω^ - множество узлов, составляющих сетку). 1.1.1. Разностные аппроксимации производной. Введем определения конечных разностей первого порядка: Vhui = г- = « Ы + W\ Первая из них называется правой разностью, а вторая - левой (употребляются еще наименования разность вперед и размортъ назад). i7o- грешности аппроксимации ф'У, я/^~ этих разностей, называемых также односторонними, легко выводятся из разложения величин u(xi±i) в ряд Тейлора относительно точки #г- (к = ρ = 1 в формуле (1.1)): Отсюда уже можно сформулировать первое утверждение: односторонние разности первого порядка (слово "конечные" для краткости опускаем) аппроксимируют первую производную на функциях из класса С2 [а, 5] (имеющих ограниченные первые и вторые производные) с погрешностью первого порядка: |^| — 0(h), \ф^\ = 0(h). Нетрудно видеть, что для аппроксимации u'(xj) можно применять и так называемую двустороннюю разность первого порядка — u(xi+\) - u(xi-i) . . - ίΛ w. VhUi ~ l'h = и(хй) + i>i. (1.5)
§ 1.1. Приближения дифференциальных выражений 11 Для величины ф^ при использовании еще одного дополнительного члена в ряде Тейлора, легко получить выражение 6 € [a;f-_i,a;i+i]. Отсюда следует, что двусторонняя разность аппроксимирует первую производную на неравномерной сетке также с погрешностью 0(h). Однако в частном случае hi = hi~\ — h имеем φι — ^-u'"(£i), а получаемое при этом из (1.5) выражение = _ UJXj+x) -u(Xj-i) VhUi = — (1.6) называется центральной разностью, и последняя обладает погрешностью 0(h2). Поскольку для погрешностей ф~ из (1.3) при использовании трех членов в отрезке ряда Тейлора можно получить вместо (1.4) новые соотношения V»/ = ^«" + ^«"'(tf). (здесь величины £^ отличаются, строго говоря, от предыдущих, а и" - как и далее щ - введены для обозначений ип(х{) и и(а^)), то понятно, что линейная комбинация односторонних разностей дает новую - трех- точечную в общем случае - аппроксимацию первой производной: Vh«i = τ (ft<-iV+Ui + hiV~Ui) Ν + hi- ι _ ι \hi~lu (hi~l hi λ hi 1 hi + hi-i L Ы V hi hi-ι J Ы-ι г J = < + ^1„»'(ίθ, 6 e [xi-i^Hx], (1.7) которая имеет уже погрешность второго порядка, если только функция и(х) обладает ограниченной третьей производной. Если сетка равномерная, то выражение V\щ становится двухточечным: „ «*+1 -Ц»-1 . , , , , , h2
12 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ и совпадает с центральной разностью (1.6) относительно точки ж* (величина Мз - это максимум модуля третьей производной на интервале [ίΕί-ΐ,Χ,'+ΐ]). Трехточечная аппроксимация первой производной (1.7) может быть выведена также с помощью применения интерполяции и центральных разностей. Для этого нужно воспользоваться выражением для линейной интерполяции и(х)={х-а)и{Ь1 + {Ь-х)и{а)+Г, ^={Х-а)}Х~Ь)и'\0, *€[«,*], о — а 2 а также аппроксимациями первых производных: — _ u<+i - щ # - У?НЩ+1/2 = ^ = Ui+l/2 + Vi+l/2> ^i+1/2 = 24**"'(6+1/3)ι &+1/2 € [«ί,Χί+ι]. Интерполируя теперь значение и\ по величинам u*i±1,2, т. е. полагая а — Zi-i/2 и6 = ^t+i/2j с помощью этих формул получаем соотношение VhWi = \Ui -Xi-l/2)\4hU-$) ^г+1/2 -^ί_ι/2 LV ' /V Λ-ΐ/2 + (zi - Zi+i/г) (Vhu - ^) J + ^h которое после проведения простых преобразований приводит к (1.7). 1.1.2. Конечно-разностные выражения второго порядка* Через конечные разности первого порядка рекуррентно могут быть определены разности второго и более высокого порядков, аппроксимирующие различные производные. Аналогично предыдущему на неравномерной сетке разность второго порядка записывается в виде (/4 + ^-0/2 __ 2ui_i 2щ 2щ+1 hi-i(hi + /it~i) /ij/ii-i hi(hi + hi-x) = и'! + biZ^ziu»< + ^^^i.W(a)| (1.8) it € [flCi_i,«i+i]. Здесь V^Wi-ti/2 суть центральные разности относительно срединных точек сетки Xi±x/2 — 1(^1 + £i±i)- Как видно, вторая производная аппроксимируется соответствующей разностью на функциях из класса
§ 1Λ. Приближения дифференциальных выражений 13 C3[zi~i,Xi+i] с погрешностью порядка 0(h). Если же сетка равномерная, то ΔΛιι< = ^ = < + j2«w(u) (1-β) и погрешность аппроксимации имеет уже второй порядок, но только если функция и(х) обладает ограниченной производной четвертого порядка. Таким же образом, т. е. последовательной формальной заменой производных разностями, строятся конечно-разностные приближения более сложных дифференциальных выражений. Так, если р(х) - некоторая дифференцируемая функция, то можно вывести аппроксимацию для "диффузионного члена" (**)«)«- {hi + hi_l)/2 +*< -^(Λ, + Λι-χ)11-1 2 /Pi-i/2 Pi+i/aV 2p<+1/2 ΐ-i 4- /ц_1 V /ii_i /ij / hi(hi 4- /i»_i) Здесь ^i - погрешность аппроксимации "внешней" производной, равная а *φι - полная погрешность, в которой дополнительно присутствуют ошибки приближения величин (pw)J±1/2 c помощью центральных разностей: ф< = Ы~1^-1\риш + 3(|»')"]* + 0(h2). Отсюда, в частности, следует, что на равномерной сетке погрешность аппроксимации в случае переменного коэффициента диффузии р(х) есть величина второго порядка, как и для второй производной. Более того, если сетка "почти равномерная", т. е. /ι» — Λ.»_ι = 0(/ι2), то погрешность аппроксимации также имеет второй порядок. В качестве примера приведем еще разность четвертого порядка на равномерной сетке; Δ£«4=ΔΛ- h2 h4 =«i4)+^, m<^M6, M6= max f\uW(x)\}. (1.11)
14 ГЛ. i. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИЙ Если в выражении (1.9) для второй разности использовать последующие члены разложения в ряд Тейлора и подставить аппроксимацию четвертой производной из (1.11), то для второй производной получается на равномерной сетке пятиточечное выражение с погрешностью четвертого порядка (на функциях и(х) из класса С6): где фп = 0(h4) и использовано обозначение (~^_2 + 16«i_i - ЗОщ + 16ut'+i - tii+г)· (1.12) 12ft2 Естественно, что если дифференциальное выражение состоит из нескольких слагаемых, то каждое из них можно аппроксимировать раздельно, а общая погрешность будет равна сумме погрешностей слагаемых. Очевидно, что ее порядок будет не хуже минимального из порядков слагаемых ошибок. В то же время теоретически можно ожидать (и мы это действительно увидим), что в результате группирования отдельных компонент ошибок итоговая погрешность аппроксимации может уменьшаться. 1.1.3. Двумерный разностный оператор Лапласа. Аналогичные рассуждения проводятся и для дифференциальных выражений, определенных на функциях от нескольких независимых переменных. Если Ω - некоторая ограниченная область изменения аргумента χ — (ж1,...,жп), то сетка Ω^, определяется как совокупность точек ж*. = (х[ ,..., Хп '), расположенных достаточно плотно в Ω. Не вдаваясь в общий случай, когда строгость изложения требует достаточно сложного формализма, мы остановимся на функциях двух переменных и(х,у) и прямоугольных сетках вида а^+х = ж, + fr?, j/j+i = Vj + Щ· Для равномерных сеток будем использовать обозначения hx = /if и hy = Щ, а для квадратных - h = hx = hy. По контексту h может обозначать и максимальный шаг сетки, т, е. h = sup J max{/i?}, max{ftj} >, Для двумерного оператора Лапласа ~ дх2 Зу2
§ 1.1. Приближения дифференциальных выражений 15 его дискретный аналог на неравномерной прямоугольной сетке можно определить пятиточечным разностным выражением Л - 2ц*-1,з , 2t4j-i 2^i+i,j Οι* • О О \ +>##fc)" (^¥ + ль^К' = <Δ«>«+**■ <1ЛЗ> где для погрешности аппроксимации аналогично одномерному анализу в (1.8) получаем ifel < J з^~+ з W3 l J' ίϊ € [xt_i,Xi+i], % e [yj-i,yj+i]. На равномерной сетке пятиточечный разностный оператор Лапласа упрощается, а порядок его погрешности повышается: Afc«i?i = ^2 + - {Au)itj+1>id, \фи\ < ~M4, (1.14) что очевидно следует из (1.9). Здесь мы без формального определения начали использовать понятие разностного оператора как некоторого преобразования в пространстве сеточных функций - в данном случае совокупности значений Uh — {uij} функции непрерывного аргумента в узлах сетки Slh- Соответственно совокупность значений сеточной функции вида L^Uij будем обозначать через LhU^. Поскольку на алгебраическом языке пд есть вектор, размерность которого равна количеству узлов сетки Ω^, а линейное преобразование в конечномерном пространстве представляется матрицей, то понятия разностного оператора и матрицы мы будем считать эквивалентными (естественно, с точностью до конкретной упорядоченности компонент сеточной функции ид). 1.1.4. Определение погрешности аппроксимации разностного выражения. Теперь мы можем сформулировать достаточно общее понятие. Определение 1.1. Пусть Lu{x) - некоторое дифференциальное выражение, определенное в области изменения аргумента Ω, a LhUk ~ определенное в точке ж*, из ilh конечно-разностное выражение. Если при достаточно малых h имеют место соотношения щ<: | < >-1 h2 6 - 2uiti ч м4, + щ ,j+i
16 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ Lh4k = Lu(xk) + W, №\<Ckh\ 7>0, (1.15) где Ck - не зависящая от h постоянная, то ф% называется погрешностью аппроксимации разностного выражения в точке хк на функции и{х)} α 7 ~ порядком погрешности. Поскольку выражение ЬнЩ на множестве сеточных функций ин = {uk} определяет разностный оператор Хд, то предыдущему определению эквивалентно следующее: при выполнении условий (1.15) разностный оператор Lh аппроксимирует дифференциальный оператор L на функции и(х) с погрешностью аппроксимации фн = {фк} порядка у. Соответственно можно записать * ifc«h = (Lu)fc + ^. (1.16) Заметим, что в (1.15) и (1-16) при обозначении погрешности используется, в отличие от предыдущего, верхний индекс и для акцентирования того, что аппроксимация осуществляется на функции и{х) (и выражается именно через ее производные). § 1*2. Аппроксимадии дифференциальных уравнений Перейдем теперь от дифференциальных выражений к уравнениям, которые абстрактно будем записывать в форме Lu = /, (1.17) где L есть некоторый дифференциальный оператор, а / - известная функция. 1.2.1. Разностные уравнения Пуассона. Простейшим примером для нас будет одномерное уравнение Пуассона д2и Аппроксимируя на неравномерной сетке Пд левую часть (1.18) с помощью соотношения (1.8), а на равномерной - трехточечным или пятиточечным разностным выражением вида (1.9) или (1.11), мы получим определенные на сеточных функциях уравнения LhUi = fi+j>if (1.19) в которых величины ф{ зависят от производных искомого решения. Если в предположении малости погрешностей аппроксимации ими пренебречь, то получим новые соотношения ,
§ 1.2. Аппроксимации дифференциальных уравнений 17 (Lhv)i=fi, (1-20) которые и называются разностными уравнениями. Сеточная функция vh — {v{}, которая этим уравнениям удовлетворяет, называется разностным решением. Очевидно, что если в (1.19) оператор Lh есть Δ^ из (1-9), то по- ( 5) грешность ipi имеет второй порядок, а при Lh — Δ^ - четвертый. Структура оператора Δ^ , с учетом вида уравнения (1.18), подсказывает , что четвертый порядок аппроксимации можно получить и для трехточечного разностного уравнения путем изменения его правой части. Такое уравнение имеет вид -&hVi = —2 = fi + γ^Δ/ι/г- (1-21) Понятно, что того же четвертого порядка будет погрешность и у разностного уравнения -Ahvi={f+~f')i, (1.22) которое может быть получено и непосредственно из (1.9). Приведем еще представляющие практический интерес аппроксимации уравнений Пуассона в цилиндрической (а — 1) или сферической (а = 2) системе координат. С помощью соотношения (1.10) легко проверить, что разностные уравнения 2 Г ХГ-1/2 fX?~l/2 . Xi+l/2\ Х?+1/2 1 . Хг(Пг + Лг-l) L Λί-1 V Λί-l /l» / Λ» J при Xi_i/2 > 0 аппроксимируют исходные дифференциальные уравнения с погрешностью 0(h) на неравномерной сетке и 0(h2) на равномерной. 1.2.2. Погрешность аппроксимации разностного уравнения. В определенном смысле принципиальное отличие уравнения (1.20) от (121), (1.22) заключается в том, что первое в правой части содержит просто значения в узлах (проекцию на сетку) функции из правой части исходного дифференциальною уравнения (1.18), а последние -
18 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИЙ некоторые разностные выражения, которые имеют уже ненулевую погрешность аппроксимации функции f(x). Поэтому определение погрешности аппроксимации разностного уравнения требует некоторого обобщения. Прежде всего, само разностное уравнение, аппроксимирующее дифференциальное уравнение (1.17), записываем в виде Lhvh = Phfh, (1.23) где Р^ - оператор аппроксимации правой части: Phh^fh+Φζ. (1-24) Тогда сеточная функция иь, - проекция на Ωη решения дифференциальной задачи - удовлетворяет разностному уравнению с погрешностью, включающей ф*Н1 а именно Lhuh = Phfh+iph, фн=<ф1-1>Ь (1-25) где ф% - определенная в (1.16) погрешность аппроксимации разностного оператора Lh на решении и. Сеточная функция фь и составляет полную погрешность аппроксимации разностного уравнения. Несколько повторяясь, мы сформулируем введенное понятие формально. Определение 1.2. Пусть и(х) - определенное в области Ω решение дифференциального уравнения (1.17) и в любой точке Xk сетки Пд определено разностное уравнение Lhvk=Phfk. (1.26) Если при достаточно малом h после подстановки Vk = u(xk) в (1.26) выполняется равенство Lhuh = Phfk+*k, \Фк\<Ск\ 7>0, (1.27) где постоянная С > 0 не зависит от ж*, и h> то сеточная функция фн ~ {фк} называется погрешностью аппроксимации разностного уравнения7 a j - порядком погрешности. Немаловажно отметить, что если погрешность аппроксимации разностного выражения определяется на любой, вообще говоря, достаточно гладкой функции, то для разностного уравнения - только на решении дифференциального уравнения.
§ 1.2. Аппроксимации дифференциальных уравнений 19 1.2.3. Аппроксимации диффузионно-конвективного уравнения. Конечно-разностные уравнения положительного типа и монотонные (абсолютно монотонные и условно монотонные) сеточные уравнения. Рассмотрим теперь так называемое диффузионно-конвективное уравнение, содержащее производные от нулевого до второго порядков включительно: ~{р{х)и')' + q{x)u + т{х)и = /(ж), (1.28) где первые два члена имеют физический смысл диффузионного и конвективного переносов, а остальные - источники некоторой субстанции (один из них линейно зависит от решения, а второй - "внешний источник" - не зависит). Коэффициент диффузии р(х) предполагается строго положительным. Аппроксимацию будем проводить для простоты на равномерной сетке, а акцент сделаем на особенностях разностных уравнений, связанных с использованием конечных разностей первого порядка различных типов. Если в (1.28) конвективный член аппроксимируется правой разностью, а диффузионный - в соответствии с (1.10), то для г-го узла сетки получаем трехточечное разностное уравнение вида -diVi-ι + biVi - CiVi+x = /i, (1-29) коэффициенты которого описываются формулами , _ Р»-1/2+Р*+1/2 ft Ь% ~ h* h+TU а погрешность аппроксимации имеет порядок 0(h). Коэффициент hi при неизвестной величине будем называть диагональным, а остальные коэффициенты ( —а^, — с» в данном случае) - внедиагональными. Определение 1.3. Разностное уравнение называется уравнением положительного типа, если диагональный коэффициент является положительным, внедиагоналъные - неположительными, и имеется диагональное преобладание (в общем случае - модуль диагонального коэффициента уравнения не меньше суммы модулей внедиагоналъных). Свойство положительности типа, как мы увидим, является очень полезным как в теоретическом плане, так и в практическом. Для уравнения (1.29) оно сводится к неравенствам (1.30)
20 ГЛ. 1. КОНЕ ЧНО-РА ЗНО СТНЫЕ АППРОКСИМАЦИИ bi > 0, auci > О, bi > di + Ci. (1.31) Если в неразложимой системе все уравнения положительного типа, то она называется системой положительного типа. Неразложимой называется система уравнений, в которой не может быть выделена подсистема меньшего порядка такая, что соответствующие искомые компоненты могут быть найдены вне зависимости от остальных неизвестных. Система уравнений положительного типа является частным случаем более широкого класса монотонных систем уравнений. Определение 1.4. Система линейных алгебраических уравнений с матрицей L^ называется монотонной, если из векторного неравенства LhVh > 0 следует Vh > 0 (здесь и далее векторные неравенства понимаются покомпонентно, как и равенства, а нуль по контексту понимается как вектор соответствующей размерности с нулевыми компонентами). Замечание 1.1. Определения 1.3 и 1.4 содержат методологическое отличие: понятие положительного типа существует и для отдельного уравнения, а понятие монотонности - только для системы. Первое из них, естественно, распространяется на системы или подсистемы уравнений, если, например, условия (1-31) выполняются для некоторой совокупности индексов. Вообще же оба свойства не зависят от правых частей уравнений и характеризуются только коэфициентами при неизвестных. Доказательство того, что система положительного типа является монотонной, может быть проведено от противного. Если система разностных уравнений положительного типа (монотонная), то определяемый ею разностный оператор также положительного типа (монотонный). Другими словами, в этом случае матрица системы также называется монотонной, но данное понятие мы рассмотрим подробнее в гл. 3. Определение 1.5. Система разностных уравнений называется абсолютно монотонной, если она монотонна при любых тагах сетки, и условно монотонной, если она монотонна при выполнении некоторых условий на шаги сетки. Замечание 1.2. Понятие положительности типа можно ввести не только для уравнения, но и для разностного выражения. Аналогично интуитивно оправдано и употребление термина монотонная аппроксимация (или разностная схема, под этим фактически будет подразумеваться, что соответствующие разностные уравнения являются уравнениями положительного типа). Более строго категория "монотонность" характеризуется в теории матриц, и ниже мы
§ 1.2. Аппроксимации дифференциальных уравнений 21 активно будем ее эксплуатировать при алгебраическом анализе разностных методов. Из формул (1.30) видно, что если тч > 0 (это мы будем предполагать и в дальнейшем), то уравнение является абсолютно монотонным при Яг < 0» а при положительных д$ монотонность достигается только в случае выполнения условия Л< Λ±ν»β (1.32) Чг которое означает, что при относительно больших конвективных членах шаг сетки должен быть достаточно мал. Важно подчеркнуть, что это требование на "малость" h может быть гораздо жестче, чем это следует из оценки погрешности аппроксимации. А использование чрезмерно большого числа узлов - это значительное удорожание вычислительного алгоритма. Если в дифференциальном уравнении (1.28) q(xi) > 0, то получить абсолютно монотонное разностное уравнение очень легко - достаточно для аппроксимации и' использовать не правую, а левую разность. В результате этого формулы для разностных коэффициентов заменятся с (1.30) на аналогичные: _ P»~l/2 gt _ Pt+1/2 α<- h* +л' c<- w ' ί133) Погрешность аппроксимации здесь будет тоже первого порядка, а условие монотонности при qi < 0 вместо (1.32) принимает форму Η<Ρ-ψ. (1.34) Когда конвективный коэффициент q(x) является знакопеременной функцией, то легко догадаться, как сконструировать и здесь абсолютно монотонную аппроксимацию. Это делается с помощью так называемых направленных односторонних разностей - в точках с q(xi) < 0 используется правая разность, а при <&* > 0 - левая. Получаемые разностные уравнения записываются формально следующим единым образом: Рг-1/2 \Qi[+Qi Л. __ Pi+l/2 Ы ~ qi h2 2h ' г h2 2/ι ' /135x
22 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ Так как во всех трех случаях - (1.30), (1.33) и (1.35) - погрешность аппроксимации имеет первый порядок, то совершенно естественно попытаться ее повысить в результате применения не односторонних разностей, а центральной. Тогда уравнение имеет по-прежнему трехточечный вид (1.29), а его коэффициенты имеют вид — Р*-1/2 , <li_ _ Pi+i/2 _ q^ *~ h2 2Л' ^ h2 ~^ (1.36) bl=pi-1/2+pi+1/1+ri. Достигаемый здесь эффект - второй порядок погрешности - омрачается тем обстоятельством, что разностное уравнение при любом знаке qi становится условно монотонным. Правда, условия (1.32), (1.34) при этом в два раза "смягчаются": Η<?ψμ. (1.37) №1 Замечание 1.3. Строго говоря, нарушение условий (1.32) или (1.37) свидетельствует о нарушении положительного типа уравнений, т. е. только об отсутствии достаточного условия монотонности. Однако мы увидим ниже (см. § 6.8), что для трехдиагональных матриц с положительными диагональными элементами и свойством диагонального преобладания неположительность внедиагональных элементов является необходимым условием монотонности. 1.2.4. Свойства симметричности и симметризуемост*: разностных уравнений и выражений. Остановимся теперь на такой важной характеристике разностных уравнений, как симметричность. Понятие симметричности системы уравнений обычно связывается с ее матрицей. Однако ее можно ввести также и для пары любой совокупности уравнений как "равенство коэффициента при fc-й переменной в г-м уравнении коэффициенту при г-й переменной в fc-м уравнении" (аналогично можно определить и симметричность разностных выражений). Для совокупности трехточечных уравнений вида (1.29) это означает выполнение равенств а* = c*_i. Очевидно, что для разностных уравнений Пуассона и даже уравнения диффузии с переменным коэффициентом условия симметрии выполняются, если только шаг сетки постоянный. Если же величины /ц различны, то оказывается, что эти системы уравнений несимметричны, но относятся к другому важному классу - симметризуемым системам уравнений. Последнее означает, что они
§ 1.2. Аппроксимации дифференциальных уравнений 23 становятся симметричными после того, как каждое из них умножается на некоторое число (масштабирующий множитель). Как видно из (1.10), для разностного уравнения диффузии таким множителем является сумма hi 4- hi-i, поскольку hi = a,i(hi -f 7ΐϊ-ι) = —^ = 6ί_ι(/^-ι + hi-2)* Щ-1 Однако разностные диффузионно-конвективные уравнения (при любых рассмотренных выше или других способах аппроксимации) в отличие от предыдущих не являются симметричными даже в случае равномерной сетки и постоянства коэффициентов р(х) и q{x). He симме- тризуются они и с помощью введения масштабирующего множителя (hi + hi-i)· Тем не менее системы трехчленных уравнений - и в этом их отличительное качество - могут быть симметризованы с помощью умножения каждого г-го уравнения на масштабирующий множитель а%, если только разрешимы рекуррентные соотношения зе{ = a^-iCi-i/ai, которые следуют из условий симметрии отмасштабированных уравнений й{ = SSidi ~ Ci ~ Ж^_iCj_i. Такая симметризация возможна (и только!) для якобиевых систем трехчленных уравнений, определяемых свойством a^c^i > 0. 1.2.5. Разностные аппроксимации двумерного уравнения Пуассона. Перейдем теперь от аппроксимации одномерных дифференциальных уравнений к двумерным и начнем в определенном смысле с простейшего - уравнения Пуассона в декартовой системе координат При использовании тех же прямоугольных сеток, которые применялись в предыдущем параграфе, мы легко получаем, что пятиточечные разностные уравнения -AhVij = jih (1.39) где разностный оператор Ад определяется из выражений (1.13) на неравномерной сетке и (1.14) - на равномерной, будут иметь соответственно первый и второй порядки аппроксимации. Для дальнейшего полезно представить пятиточечный разностный оператор Δ^ в виде суммы трехточечных: Δ„ = Δ£ + Δ*, (1.40)
24 ГЛ. L КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ где первый представляет вторую разность по ж, а второй - по у. На равномерной прямоугольной сетке, используя пятиточечные аппроксимации вторых производных вида (1-12), получаем девятиточечное разностное уравнение Пуассона типа "большой крест": , ViJ-2 ~ l&OiJ-l + 30l/ttJ· - Ifajj + i + Vi,i+2 _ t , ν которое, как легко проверить, при ограниченности шестых производных решения дифференциального уравнения имеет погрешность 0(h4). На рис. 1 изображены сеточные шаблоны, где точками обозначены узлы, используемые в пятиточечном уравнении, и крестиками - дополнительные узлы для девятиточечного уравнения. Х- г - 2 t i +1 -χ г-1 ij г + 1 J-1 V ? - 2 г + 2 Рис. 1. Сеточные шаблоны для пятиточечного уравнения и девятиточечного уравнения типа "большой крест" Как видно из (1.41), девятиточечное уравнение "большой крест" ни при каких соотношениях шагов hx, hy не является уравнением положительного типа. Для уравнения Пуассона обнаруживается еще другая, замечательная по своим качествам девятиточечная аппроксимация высокого порядка, впервые предложенная Ш. Е. Микеладзе в 1934 г. Она основана
§ 1.2. Аппроксимации дифференциальных уравнений 25 на следующем свойстве разностных операторов: если использовать введенные в (1.40) обозначения Δ£, Δ^, то для достаточно гладкой функции и(х,у) справедливы соотношения hi + hi Δ<%= (Δϊ + Δϊ + ^^Δ») Uij ч &u hif_idPv. d*u\ hid*_/d*v, дЧУ] χ* + ду2 + 12 дх2 \дх2 + ду2) + 12 ду2 \дх2 + ду2)\^ которые следуют из равенства h 1J Vftn* 12 &c4/itJ 6! 9х6 и такого же выражения для А^и^. Заменяя теперь в правой части (1.42) члены Ащ^ через fij в силу исходного уравнения и отбрасывая погрешность 0(h4), получаем, что разностное уравнение Л(9) _4hl + hp ~Щ (5" I) {Vi'1J+Vi+lj) ~ Щ (5" ч) {Vi'j"1 + ViJ+1 ] h2x+h2 - I2h2f,2 W-l-i-l +vi-l,i+l +»ί+ι,,·_ι + Vj+i,j+i) ~/t,J + 12 9s2 + 12 9т/2 U"4J' аппроксимирует исходное уравнение (1.38) с четвертым порядком. Очевидно, что порядок погрешности в (1.43) не изменится, если в правой части производные от функции / заменить на вторые разности. Сеточный шаблон полученного девятиточечного уравнения Пуассона типа "ящик" изображен на рис. 2. Простой анализ знаков коэффициентов показывает, что уравнение (1.43) будет положительного типа только при не очень сильном отличии прямоугольной сетки от квадратной, а именно при выполнении условия ъ**.?*· (ΐ·44)
26 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ х-1 i i+1 j-i j 3+1 Рис. 2, Сеточный шаблон для девятиточечного уравнения типа "ящик" |5 [4 8 [ 11 Ιό hx 1 t ° 3\\ 2 7 I I hx Замечательно, что на квадратной сетке (hx — hy = h) аппроксима- ционные свойства разностного уравнения типа "ящик" еще усиливаются. Это следует из соотношения, которое легко проверяется при использовании большего числа членов ряда Тейлора: ^)„..- 2,4 A^uiyj = Ащл + 4[/>Δ2η?; + gT [Δ3« + 2(Аи)**мкз + 0(Λβ). (1.45) Таким образом, если решение уравнения Пуассона обладает ограниченными производными до восьмого порядка включительно, то разностное уравнение Α{9)ν ·-- 6/ι2 20u^· - 4(ν<_ι^· + Vij-χ + τ/»+ι,,· 4 ν<(ί·+ι) -Vi-2,j - ν»j-2 - "i+2 J - V<,j+2 2/i2 A , 2/i4 4! ~"'J ' 6! V /t,J 3xW, =Α* + -^TA*.i + (1.46) имеет погрешность аппроксимации шестого (!) порядка. Переходя от уравнения Пуассона к более общему - диффузионному уравнению д ди д ди ,, ч ,л АГ7. -d-xpai-dyq^ = fix'^ (147) с помощью отношений (1.10) получаем, что разностное уравнение Г 2 (Pi-l/2J PWL/2±\ 2 (4i J-l/2 qiJ+l/2\]
§ 1.2. Аппроксимации дифференциальных уравнений __ 2Pi-l/2J 2Qi,j-l/2 ' hUW+hu)1*-1'! ЦЛЦ + Н^)1**-1 2Pi +1/2 J _ 2Qi,j+lf2 _ f hi (/»? + /»r_1)f"+1J ВД + fc^)**·*" " iiJ имеет погрешность аппроксимации первого порядка на неравномерной сетке и второго - на равномерной (при достаточно гладких коэффициентах диффузии р(х,у) и g(s,2/)). Чтобы не загромождать изложение, мы не будем выписывать пятиточечные разностные диффузионно-конвективные уравнения. Они конструируются по образу и подобию рассмотренных выше одномерных аппроксимаций, с применением односторонних или центральных разностей для производных по ж, j/, и условия монотонности для них выглядят аналогично (1.32) или (1.37). Остановимся теперь на свойствах симметричности двумерных разностных уравнений. Система на пятиточечном шаблоне в общей форме может быть записана как а условия симметрии сводятся к равенствам dij — Ci^ij, biyj ~ dij-i. (1.50) Отсюда видно, что свойства двумерных задач аналогичны свойствам одномерных. Разностные уравнения Пуассона и диффузии являются симметричными на равномерных сетках и несимметричными на неравномерных. В последнем случае они оказываются симметризу- емыми, а именно путем умножения на масштабирующий коэффициент (/if + /if„i) {Щ + h?_i)· Рассмотренные девятиточечные уравнения повышенной точности на равномерных сетках также являются симметричными. Двумерные диффузионно-конвективные разностные уравнения несимметричны на любых сетках, а вопрос с их симметризуемостью более тонкий, чем в одномерном случае, и мы на нем остановимся ниже. 1.2.6. Примеры трехмерных разностных уравнений. Остановимся очень коротко - на аппроксимации трехмерных дифференциальных уравнений. Принципиально нового здесь ничего не появляется, но технически весь анализ, естественно, усложняется. Сетка рассматривается теперь параллелепипедоидалъная: Xi+i = Xi + К, Уj+i ^.Уз + Щ, zk+l = zk + hzk, 27 (1.48)
28 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ а компоненты сеточных функций обозначаются тремя индексами: Ограничимся уравнением Пуассона д2и дЧ д2и . -M-Ww=f{w)' (151) конечно-разностные аналоги которого приведем только на равномерной сетке. Аналогом пятиточечного уравнения здесь является семиточечное сеточное уравнение Пуассона hi Κέ+ά+έ)^=Λ^-(1'Β2) Также подобно двумерному случаю (см, (1.48)) выписывается разностное уравнение диффузии, которое имеет погрешность аппроксимации 0(h) на неравномерной сетке и О(h2) на равномерной. Что более любопытно - удается построить на равномерной сетке прямой аналог девятиточечного разностного уравнения Пуассона (1.43) повышенного порядка точности. А именно из непосредственного проверяемого соотношения дГ„и,»=(д ;, + Δ»+Δί + ^±^Δ|Δ; где Δ£ - вторая разность "по ζ", а Δ = J^p + -щр + Jp· ~ трехмерный дифференциальный оператор Лапласа, следует, что 19-точечное разностное уравнение Пуассона -AiiVi.» = А,* + п(*1? + *£ + **!?)><·" t1-54) имеет погрешность аппроксимации О (/г4). Сеточный шаблон для такого уравнения изображен на рис. 3, где жирными точками обозначены узлы
§ 1.3. Методы аппроксимации граничных условий 29 семиточечного шаблона, а простыми - узлы, дополняющие его до 19- точечного. Уравнения (1.54) являются уравнениями положительного типа при выполнении неравенств 4= < £■· ^, ^ < \/3. 3 + 1 Рис. 3. Сеточные шаблоны для трехмерных семи- и девятиточечного уравнений Отметим, что если сетка кубическая (hx — hy = hz = /ι), то с помощью 27-точечного уравнения -Δϋ7«=- строится схема порядка О (/ι6). Естественно, что в этих уравнениях шестой порядок погрешности сохраняется, если производные от функции / заменить на соответствующие разностные аппроксимации второго порядка точности. § 1.3. Методы аппроксимации граничных условий До сих пор мы говорили только об отдельных уравнениях или их совокупности, не акцентируя даже внимания на термине "система
30 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ уравнений", хотя на алгебраическом языке любую совокупность уравнений формально можно назвать системой. Исторически или по другим причинам, но в методах конечных разностей применяются и исследуются только системы, имеющие одинаковое число уравнений и неизвестных. В теории дифференциальных уравнений краевая задача определена полностью, когда сформулированы граничные условия, причем их количество и вид, необходимый и достаточный для существования единственного решения, зависят от характера исходных уравнений. Мы пока рассматривали конечно-разностные уравнения в точках сетки Ω^, внутренних по отношению к расчетной области Ω, где определено дифференциальное уравнение. Однако в этих разностных уравнениях неизбежно участвуют неизвестные, соответствующие узлам, лежащим или на границе Г области Ω, или даже вне ее, так что в таком виде полученная алгебраическая система является недоопределенной и имеет бесконечное число решений. Для замыкания системы к ней надо добавить уравнения, аппроксимирующие граничные условия, с тем чтобы уравнять число неизвестных и разностных уравнений (если при этом система окажется невырожденной, то она будет иметь единственное решение). 1.3.1. Аппроксимация условий 1-го рода в одномерных задачах. Двигаясь от простого к сложному, начнем с одномерных задач, а здесь, в свою очередь, - с простейшего в алгоритмическом плане условия Дирихле. Для понимания нам достаточно остановиться на уравнении Пуассона (1.18) в области Ω — {а < χ < Ь}у которое мы теперь дополним условиями первого рода и\х=а = иа, и\х=ь = Щ, (1.55) где иа и щ - заданные числа. Даже в такой тривиальной, казалось бы, задаче имеются методологические нюансы. а) Самый простой случай такой, когда граница области совпадает с узлами сетки, т. е. хо = а, ждг+1 = Ь, Xi — Xi-i + /ΐί-ι, г = 1,..., JV + 1. (1.56) При этом разностные уравнения дополняются соотношениями, точно передающими краевые условия (1.55): v0-=u0=ua, vN.hl = uN+i = ub. (1.57)
§ 1.3. Методы аппроксимации граничных условий 31 б) Интерполяция пулевого порядка. Если граница не совпадает с узлом сетки, то самым тривиальным способом является простой снос граничных значений функции в ближайшие узлы сетки. Например, для левой границы в силу ряда Тейлора •"о = иа + (хо - a)u'(£0), £о € [α, х0], граничное "разностное" уравнение vq = we имеет погрешность аппроксимации первого порядка. в) Аппроксимация Коллатца. Для предыдущего случая естественно использовать более точную линейную интерполяцию: ua(xi - хо) -νι(α- х0) м ЕОч v0 = , (1.58) Χι — α которая, как легко проверить, имеет погрешность 0(h2). Если в пунктах б) и в) хо < а, то приведенные аппроксимации представляют собой экстраполяцию решения за пределы расчетной области, а сама точка хо в этом случае называется фиктивным узлом сетки. г) Логическим развитием рассмотренного подхода является применение интерполяции (экстраполяции) второго и более высокого порядков с помощью нескольких внутренних узлов. Примером может быть квадратичная аппроксимация с погрешностью О (/ι3): а- хо (а - хо)2 vo=ua + (иа - их)— h α - х2 2 и2 2ui - + (хх ~ α)(χ2 - α) (χ2 - xi)(x2 - ο) (χι - α)(χ2 - χχ) (1.59) Совершенно очевидно, что учет граничного условия на правой границе χ = b проводится аналогично. Дополнительные вопросы возникают при аппроксимации граничных условий, когда используются разностные уравнения повышенной точности типа (1.12). Поскольку в первом и предпоследнем узлах сетки около границы пятиточечные выражения не определены, один из способов преодоления возникающих трудностей - использование в таких точках трехточечных уравнений, после чего аппроксимация краевых условий может делаться "обычным" образом.
32 ГЛ. ί. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ 1.3.2. Условия 2-го и 3-го рода (одномерный случай). Перейдем теперь к рассмотрению краевых условий, содержащих производные. Поскольку условия 2-го рода формально являются частным случаем граничных условий Ньютона, рассмотрим только последние: где ^ означает — -^ при χ — α и ££ при χ = b. Применяя линейную интерполяцию для решения и заменяя производную конечной разностью первого порядка, для левой границы получаем vq{x\ -а) + уг(а~х0) νλ - ν0 {Λ . a ρ — 7· (l.oUJ Χι - xq X\ - x0 Первый член здесь при любом значении координаты границы a имеет погрешность 0(h2) (кроме a — хо или а = αχ, когда она нулевая). Второй же член при а = хг/2 представляет собой центральную разность, аппроксимирующую нормальную производную со вторым порядком, а во всех остальных случаях его ошибка есть 0(h). Таким образом, с рассмотренной точки зрения при наличии краевых условий второго или третьего рода границу целесообразно располагать в середине шага сетки. Переписывая разностное соотношение (1.60) для нулевого узла сетки с явным выделением диагонального коэффициента: [a(a?i - а) + β]ν0 -\β- α{α - яоЖ = j{xi - ж0), (1*61) мы можем отметить, что при α β < О это уравнение не является уравнением положительного типа (мы предполагаем xq < а < χι), а при условии α β > 0 оно этим свойством обладает, если только шаг сетки достаточно мал (конкретнее, при [а(а:ι — a) + β] [β — а(а - xq)} > 0). Такой же вывод получается и при аппроксимации условия Ньютона на правой границе области. Отметим, что совпадение знаков коэффициентов α, β является "хорошим" качеством и с точки зрения корректности дифференциальной постановки задачи. Что касается влияния уравнения (1.61) на свойство симметрии, то здесь достаточно вспомнить разностное уравнение Пуассона или диффузии для первого узла сетки. Сравнение показывает, что в общем случае симметрия нарушается, но для одномерных трехточечных уравнений возможна симметризация.
§ 1.3. Методы аппроксимации граничных условий 33 Аналогично условию Дирихле, для граничных условий второго и третьего родов технически несложно использовать интерполяцию более высокого порядка с привлечением дополнительных узлов и повышением порядка аппроксимации. Однако свойства монотонности и симметричности при этом практически всегда теряются. 1.3.3. Аппроксимации граничных условий в двумерных задачах. Рассмотрим теперь особенности аппроксимации краевых условий для двумерных задач. Ситуация здесь определяется главным образом конфигурацией границ. Наиболее простые задачи - когда расчетная область представляет собой прямоугольник со сторонами, параллельными координатным осям. В этом случае направление нормали границы совпадает с одной из координатных линий и методы аппроксимации фактически сводятся к одномерным. Для иллюстрации существенно двумерных эффектов рассмотрим изображенные на рис. 4 узлы сетки, расположенные около криволинейной границы. У Рис. 4. Сеточный шаблон вблизи криволинейной границы области Условия Дирихле для пятиточечных разностных уравнений могут быть аппроксимированы достаточно просто. При использовании интерполяции нулевого, первого или более высоких порядков во внутренних околограничных узлах само дифференциальное уравнение дискретизи- руется на обычном сеточном шаблоне (узлы с номерами 0, 1, 2, 3, 4 на рис. 4, но с использованием внешних (фиктивных) узлов. Затем для последних выписывается "одномерный" многочлен Лагранжа вдоль соответствующих координатных линий.
34 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ В качестве примера рассмотрим аппроксимацию Коллатца (линейная экстраполяция) для изображенного на рис. 4 расположения узлов: hi hv Z02 hv /.. ЙОч vx = uv - Vq-—, v2~u2>- Vq-—. (1-62) *01' *01' «02' *02' Здесь u'x, u'2 - известные значения решения в точках 1! и 2' пересечения координатных линий с границей, а 1шп - расстояния между узлами с номерами тип. Полезно отметить, что если величины v\ и V2 из (1.62) подставить в разностное уравнение (ради простоты - Пуассона) для точки 0, то в итоге имеем 2 2 2 -γ-γ-υν - j—jrv*' - Τ~Γν3- Ч)1'*13 *02'Ь24 ЬОЗПЗ +1гт- + гт-)"° = л- (163) \*01'*03 *02'*04/ Парадоксальным, на первый вгляд, является следующий факт: если соотношения (1.62) имеют погрешность О (/ι2), то разностное уравнение (1.63) аппроксимирует исходное уравнение Пуассона с погрешностью только нулевого порядка (ошибка равна величине 0(1), т. е. при h —> О она не стремится к нулю, но, что тоже важно, как мы увидим позже, - не стремится и к бесконечности, оставаясь ограниченной). Другое важное качество аппроксимации Коллатца - сохранение свойств симметричности (при Щ — hx, hy- — hy) или симметризуемости системы разностных уравнений; чтобы убедиться в этом, достаточно сравнить (1.63) с аналогичными уравнениями для узлов 3 и 4· Здесь уместно сделать одно замечание методологического характера. Данная аппроксимация использует экстраполяцию решения во внешние узлы, хотя оно определено только внутри Ω. Это предполагает возможность гладкого продолжения решения за область, что в одномерных задачах не вызывает сомнения, а в двумерных требует, вообще говоря, отдельного изучения. Альтернативный способ учета граничных условий первого рода - это так называемая аппроксимация Шортли-Уэллера. Суть ее заключается в том, что для околограничного узла строится пятиточечное разностное уравнение на шаблоне, в котором вместо фиктивных (внешних) соседних узлов используются точки пересечения соответствующих линий сетки с границей области (точки I1 и 2' вместо 1 и 2 на рис. 4). В таком случае строящееся по обычным правилам разностное уравнение Пуассона, например, принимает вид
§ 1.3. Методы аппроксимации граничных условий 35 2vy 2v2* 2v3 W(fol' +^0з) ^02'(*02' +^04) ^03(^01' "Иоз) ~/ г/ 1/ ^ Г~Г + Г~7"Г°^/о· (L64) i04V*02' + «04 J \*01'*03 Н)2'*04/ При этом учет краевых условий уравнениями вида Vy = иу, ν? — uy производится точно, а само уравнение (1.64) имеет погрешность аппроксимации 0{h)j т. е. на порядок выше, чем (1.63). Общее выигрышное качество этих уравнений - это то, что оба они положительного типа при любых соотношениях шагов сетки и расстояния узлов от границы. Большой минус аппроксимации Шортли-Уэллера заключается в том, что уравнение (1.64) нарушает свойство симметризуемости разностной системы, даже для равномерной сетки (разумеется, если только for Φ hi или Ιο2* Φ 2θ2) точнее, если граница пересекает координатные линии не в узлах сетки). Аппроксимация условий, содержащих нормальные производные к границам, не параллельным координатным линиям сетки, технически усложняется, хотя принципиально это выглядит просто. Достаточно нормаль к граничной точке сетки продолжить внутрь области до пересечения с каким-либо отрезком, соединяющим два внутренних узла сетки. Затем в полученной вспомогательной точке решение линейно проинтерполировать через узловые значения, а саму нормальную производную аппроксимировать по вспомогательной и граничной точкам. Необходимое разностное уравнение, аппроксимирующее условие 3-го рода в точке 1' на рис. 4, выглядит следующим образом: , β (hiV0 +*05*>4 λ {Λ .-. otvv + γ^ Ι γ— vv 1 = 7- (1-65) Погрешность аппроксимации его, очевидно, есть 0{h). Очевидно также, что использование такого уравнения нарушает симметрию системы и ее симметризуемость в общем случае не представляется возможной. Однако если граница области параллельна координатным линиям, то аппроксимация условий 2-го и 3-го рода делается просто по "одномерным" формулам (1.60), (1.61). На трехмерных задачах мы останавливаться не будем, так как методика остается той же, только необходимо выполнять более сложные геометрические построения. 1.3.4. Погрешности аппроксимации разностных краевых задач. Приведенные выше примеры резюмируем теперь более общими
36 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ рассуждениями. Пусть краевая задача описывается уравнениями Lu(x) = /(ж), χ G Ω, iu(x) = $(ж), ж е Г, (1.66) где I - дифференциальный оператор краевых условий, а д{х) ~ известная функция, как и /(ж). Обозначая через lh оператор аппроксимации левой части граничного уравнения, а через Qh ~ его правой части (чаще всего Qh ~ единичный оператор), второе уравнение из (1.66) мы можем привести к виду huh^Qh9h+i>9h, (1.67) где ф^ - сеточная функция погрешности аппроксимации краевого условия, которая в общем случае состоит из ошибок приближения левой и правой частей. Разностные "граничные" уравнения получаются из (1.67) отбрасыванием остаточных членов, и в итоге дискретизированная краевая задача описывается алгебраической системой Lhvh = Phfh, hvh = Qh9h- (1-68) Мы всегда будем считать, что разностная краевая задача вида (1.68) имеет одинаковое число уравнений и неизвестных. Относительно последних следует провести еще некоторую внутреннюю классификацию. Через ilh мы обозначали множество всех узлов сетки, участвующих при построении разностных уравнений, в том числе внутренних по отношению к расчетной области Ω, лежащих на ее границе Г или даже за ней. Соответственно проведем разбиение flh = Пд U Гд, где через Qh обозначено множество внутренних узлов, а через Г& - множество внешних. Соответственно полное количество узлов N складывается из соответствующих слагаемых: N = N + N?. Иногда оказывается удобным часть неизвестных из системы (1.68) исключить в силу тривиальности отдельных уравнений (например, для граничных узлов с условиями Дирихле) или из других соображений. Тогда получается новая система разностных уравнений, которую можно записать в виде LhVh = /л, (1.69) где оператор Lh объединяет уже разностные аналоги и исходного дифференциального уравнения, и краевых условий, а сеточная функция^ содержит число компонент iV, удовлетворяющих неравенству N > N > N.
§ 1.4. Компактные схемы повышенной точности 37 Необходимо отметить, что формальное рассмотрение погрешности аппроксимации при переходе к (1.69) меняется, как мы это видели на примере аппроксимации Коллатца в представлении (1.63). В заключение данного параграфа укажем еще на один характерный класс задач, возникающих при наличии расчетных областей с периодическими повторяющимися - по одной из координат - геометрическими и материальными свойствами. В этом случае само решение является также периодическим, что, например, для отрезка а < χ < Ъ записывается в виде и(х) ~ и(х + Ъ — а). Естественным путем аппроксимации таких "краевых условий" (вообще говоря, постановку задачи при этом можно рассматривать и для бесконечной области) является совмещение узлов с границами области ж о — α, xjv+i - ft и использование точных соотношений uq = ujv-|-i, U-χ — u;v, ttjv+2 = u\ (в предположении равенства шагов сетки около левой и правой границ). § 1.4. Компактные схемы повышенной точности для уравнений с переменными коэффициентами Напомним, что в п. 1.2.5 была рассмотрена девятиточечная разностная схема Микеладзе (1.43), обеспечивающая на сеточном шаблоне типа "ящик" равномерной прямоугольной сетки аппроксимацию порядка 0(hA). Оказывается, что используемая при ее построении идея переносится и на более сложные дифференциальные уравнения. Получаемые при этом схемы стали называться компактными в отличие от схем на шаблоне вида "большой крест". 1.4.1. Аппроксимации диффузионно-конвективных уравнений. Рассмотрим аппроксимацию диффузионно-конвективного дифференциального уравнения д ди ди д ди ди Lu = (Lx + Ly)u = -_,_+«_- -q- + 6- = /, (1.70) где коэффициенты р, q являются положительными функциями. На прямоугольной равномерной сетке xt = x0 +ihx, г = 1,...Д + 1; yj = у0 + jhy, j = 1,..., J+ 1, определим сначала "стандартный" одномерный разностный оператор (Lxu)iJ Ξ T2[Pi+l/2j(uij -u*+l,j) + Pi-l/2,j(«i,j ~ ui-l,j)]
38 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ где Pi±i/2j — p{Xi %i±l ->Уз)-> а погрешность аппроксимации имеет второй порядок и находится с помощью ряда Тейлора из соотношений Lhxu = Lxu~ -~i4u + 0(/i4), Χ. Δ д^и, дрсРи Зд^сРи 1 д3Р ди д3и xU ~ рдх* + дхдх3 + 2 дх2 дх2 + 2 дх3 дх дх3' (1.72) Следуя идее А. А. Самарского, будем искать разностный оператор Lf x со следующими аппроксимационными свойствами: Ь1хи^Ьхи-^-Ьх(-Ьхи) + 0(^). (1.73) 12 ρ Для этого выпишем легко проверяемое соотношение г А т ^ ( д д d\i ( д ди ди\ п Lx{-Lxu) = l—z-p-z- + о,— I- "я"^я~ +а^~ =-Ra-u + Ma-ti, ρ \ дх ох дх) ρ \ дх дх дх J (1.74) МЖ?А <9ж А ^ „ I f 5?Л2 _ ^] <Н д (ади\ дад2и \2дх2 р\дх) дх)дх\ дх\рдх) дхдх2' Из уравнений (1.72) и (1.74) видно, что для обеспечения условия (1.73) необходимо положить £?,,« = ϋί«-^Μ,Λ«, (1.75) где Μχ - разностный оператор, определяющий аппроксимацию дифференциального оператора Мх с погрешностью 0(h2): N*^^idt+i/2,j(wi+i,j -Uitj) -di-i/2j(u>ij -«1-1/2) ( - ) («i+i,j ~^j) - ( -) («: L VP/ i-fi/2j VP/ t-1/2j +^a*,j —i"(ai+i,j - ai-i,j)(u«+ifj ~ 2« i,j ui—lj) i,j + ut—l,j) i) (1.76) di+i/2.j~2{Pij " 2Pi+i/2j +PHi,j) : ~ ^x(at+i,j - <4j). P»+l/2,j Получаемый новый одномерный оператор (1.75) является трехточечным и может быть представлен формулой
§ 1.4- Компактные схемы повышенной точности 39 Li>*u = Jj2 [Pi-i/2j{ui,j - Щ-ij) +Pi+i/2j(«*,j ~ **i+i,j)]> (1.77) в которой коэффициенты pi+1/2,j; Pi-i/2j имеют вид Pi+l/2,j - Pi+1/2J ^-«a. 1 + 12 d<+i/2j + h>laij ( - 1 ~ "ττ (α*+ΐΛ - a*-i,i) \P/i+l/2,j Z Pi- l/2,j = Pi-l/2,j + ~2^ft* ί1·78) + 7^ di-l/2,j + ^x^i I - J - ITW+hJ - ai-l,jJ iZ L \P/i-l/2,j Z Определяя аналогичным образом разностный оператор L^y с коэффициентами <?iJ+i/2, Qij-i/2i мы можем построить следующую аппроксимацию порядка 0(h4) для уравнения (1.70): Ь2 1 h2 л В правой части этого уравнения дифференциальные операторы можно заменить разностными аналогами, что не изменит общего порядка аппроксимации. Отметим, что данная система является симметричной, если только в (1.70) отсутствуют конвективные члены (а — b ~ 0), а диффузионные коэффициенты р, q не зависят от ж, у соответственно. В соответствии с локальной нумерацией узлов на рис. 2 левая часть уравнения (1.79) может быть записана в виде 8 (£?u)«,j = dQ^jUo - Y^aktijUk, (1.80) причем коэффициенты разностного оператора L\ имеют следующий вид: diij — &-1/2.J Л gi.j _ gi-l.j ^ ^ V Gqitj 6pi-itjhlJ*
40 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ _ Pi+\/2,j ( q,,j gi-i,j h%\ Q3ij ~ hi V Gqu Gpi-ijhlJ' _ З47-1/2Л Pi,j P«,j-i H\ 2'ij ~ К V 6pm eej.^/· l1"^-*^,*;· (L81) a4,ij = _ gi,j+l/2 *T _ 1 /p>-i/2,j Φ-ι*+ι/2 ftj+i/a ft-i/aj+i \ - ·*· fPi-l/*J $i-lJ-l/2 4-1/2 ft-l/2,j-l\ a6" - 12 Ui-i,, Л» +g<)J_x A> J' _ 1 /P.+l/2,j Qi+l,j-l/2 Uij-1/2 P»+l/2,j-l \ a?^ -12 v л+w fc2v «j-i 4 ;· - * {Pi+l/2,j g»+l,j+l/2 gt.j+1/2 Pt+l/2,j+l \ a8" " uUu " 4 + Qi,j+1 hi )' Pij = (Pi+i/2,j +Pt-i/2,j)/2; gi,j = (4**4-1/2 + fc,j-i/2)/2. При достаточной гладкости коэффициентов исходного дифференциального уравнения мы можем записать hx (hx %j \ hl(ld*p 1(др\2 да\ , ft-i/2j = Pi-1/2,; + Τ (τ Γ^ + αί·>) (182) Ζ \ Ο Pi-l/2,j / + «/1^E_I/*V-^ + огь3) + 12 \2дх* р\дх) дх)^ + 0{К)- Отсюда следует, что неравенства pi}j - min{pi+i/2(j,Pi_i/2j,4i,j4-i/2iit,i~i/2} > Ρ > 0, (1.83) необходимые для того, чтобы уравнения (1.79) были положительного типа, могут в принципе нарушаться при определенных соотношениях
§ 1.4- Компактные схемы повышенной точности 41 коэффициентов ρ, ς, α, Ь и шагов сетки /i^, /iy. Однако из (1.82) очевидно, что при преобладающих конвективных членах условия удовлетворения (1.83) более "мягкие", чем те, которые требуются для обеспечения положительного типа "стандартного" разностного оператора L% из (1.71). Действительно, выражение для Pt+i/2,j> например, можно переписать в виде 1 Pi- l/2,j - 12μ где <ри = ^ 'г+1/2^ 1Э2Р 2 аж2 12Р?+1/2^"6(а^^"^^)Л*Р^1/2^+Л: (*-&»< ар аж + 0(Л*). Выписывая аналогичные выражения для pi~i/2ji &,я-1/2> Qij-1/2 и вводя обозначения ро — тш{;р(ж>2/)}> Qo — тш{<?(ж>У)}> мы можем «»ί/ сформулировать следующий результат. Лемма 1.1. ВеличиныPi+i/2j, Pi~i/2j> Qij+i/2, Qi j-1/2 nPu выполнении условий +r h 1 г д2Р да дх hzPo+hl г,3 hyq0 + h2y *J '■•-(я)].+о(*>0' \ / J г j '-(£)L+o«)>o являются положительными. Из леммы 1.1 следует, в частности, такой важный результат, что если все диффузионные и конвективные коэффициенты постоянны, то значения р,р, #, q будут положительны при любых соотношениях величин р, д, а, 6, hX)hy. Далее, требование положительности коэффициентов αχ, аг, аз, а4 из (1.81), как нетрудно видеть, при достаточно малых значениях h — m'ax{hx,hy} имеет форму, близкую к условиям положительности коэффициентов схемы Микеладзе для уравнения Пуассона: \^<т < 5 +О(Ь). (1.84) Представляет значительный интерес вопрос, может ли система уравнений (1.80) при условии (1.82) быть монотонной, если не выполняются условия (1.84). Ответ на этот вопрос оказывается положительным, но доказательство этого факта мы проведем позже в матричных терминах в гл. 3.
42 ГЛ. ί. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИЙ Если вместо Pi+i/2,j> Pi-1/2,3 B (1-77) использовать какую- нибудь другую дискретизацию (шаблонный функционал, в терминологии А. А. Самарского), обладающую свойством Ρί+i/aj = ft+i/2J + bJW*i+i/aj) + 0(Л4), (1.85) где <^л(х) - некоторая гладкая функция, то аналогичным образом можно получать вместо L^ x и другие схемы повышенного порядка, применяя очевидное соотношение - №?,,*)*.; " §(М*1в«)м + 0{h% MKxu = А ^^.(1.86) Действительно, определяя через М^хи естественную разностную аппроксимацию М*)Я.и, с помощью соотношений (1.72), (1.75), (1.86) легко убедиться, что следующий разностный оператор удовлетворяет условию (1.73): Ьнк,хи = LitXu + Mlxu - M% - LUxu - ^(Rx + Mx)u + 0(/i4). (1.87) А. А. Самарский для чисто диффузионной задачи (α = Ь — 0 в (1-70)) предложил для построения схемы четвертого порядка использовать шаблонный функционал вида Pi±l/2j + 12 ld2p l/3pV 2ftc2 +р\,5а;; + 0(/ι4). (1.88) Из последнего разложения и (1.72) легко следует, что соответствующий разностный оператор L\ — Щ х действительно удовлетворяет условию (1.73). Рассмотрим еще один параметризованный способ дискретизации функции р{х,у):
§ Ц. Компактные схемы повышенной точности 43 Соответствующий разностный оператор, удовлетворяющий условию (1.73), например, при θ = | имеет вид Pi±i/2.i = 6И + S{pi>j + W±ij)_1 +Рг7±1 J_1 (1-89) Очевидно, что любая линейная комбинация операторов, удовлетворяющих условию (1.73), также обладает этим свойством. Однако нетрудно убедиться, что на основе применения L^x, L\x, L\ х невозможно получить разностную схему без использования значений Pi±i/2j- Данный вопрос имеет практическое значение в задачах, где функции р, q не заданы явно в аналитическом виде, а вычисляются, например, через значения самого решения или других сеточных функций, которые известны только в узлах. Рассмотренный принцип аппроксимации легко переносится и на трехмерные уравнения более общего вида __ д ди д ди д ди ~ дх дх ду ду dz dz ди 7ди ди + adi+bdi+cTz+am = f· (1·90) В этом случае четвертый порядок обеспечивается схемами Lhuh + (aeu)h=Llxuh + L* „ufc + Lhkzuh - ^L^L^ + Lhk,z)uh Здесь L\x- один из одномерных разностных операторов, описываемых формулами (1.75), (1.85)-(1.88), а одномерные операторы L^yJ L\ z определяются аналогично. Как видно из последнего члена в (1.91), данная система уравнений будет симметрична только при постоянном "гельмгольцовском" коэффициенте зе (даже если диффузионные коэффициенты p,q,r - постоянные, а конвективные а,Ь,с - нулевые).
44 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИЙ Вопрос о монотонности разностной схемы (1.91) требует дополнительных исследований. Для простейшего случая чисто диффузионной задачи с постоянными коэффициентами р,д)гиае = а = 6 = с = 0 легко показать, что данная система уравнений будет положительного типа при выполнении следующих неравенств: Usfi, i|, r§<3. (ι.92) 3 ph2 ph2 qh2z 1.4.2. Уравнение Пуассона в цилиндрической системе координат. Пусть и удовлетворяет дифференциальному уравнению 1 д ди д2и ,, ч ,„ ЛЛЧ Lru + Lzu = ——г— - — = f(r,z) (1.93 г or or oz2 в области (ro,^7+i) x (z0,zj+i), r0 > 0, и граничному условию |^ = О на оси симметрии при г о = 0. Формально уравнение (1.93) (после умножения на г) сводится к виду (1.70), однако мы остановимся на этом случае подробнее ввиду его самостоятельной прикладной значимости. Рассмотрим сначала погрешность аппроксимации стандартного "радиального" разностного оператора при г > 0 (см. п. 2.1.2): (Ljfxt)i = ^2 ^+1/2(^1-^+1) +^-ι/2(«ί-«»-ι)] = — Ь+Г14« + ^»+г^(4)1 +0(h4), П=г1гг, Г* L Ό 12 J г которая имеет, как видно, порядок 0(h2). Выпишем также выражение для квадрата соответствующего дифференциального оператора: О Из сопоставления двух последних соотношений легко обнаружить, что разностный оператор т г дг дг\г дг дг ) т\ дг3 дг г dr drA , (£?.г«)< Ξ j^r. И?1/2(^ - «*+о+»£%(«< - ««-о]> г ь; (1·94) ±1/2 " '<«/> 12Γ,±1/3· следующим образом аппроксимирует при г > 0 дифференциальный "радиальный" оператор:
§ Ц. Компактные схемы повышенной точности 45 Llru = Lru-%L2ru + 0{h4). Таким образом, разностное уравнение Liu = [bltr + Lz ——LlrLz Juh - f - —Lrf - ^LZJ V1 95) имеет погрешность аппроксимации четвертого порядка. Эта алгебраическая система несимметрична, но легко симметризуется после умножения каждого уравнения на величину т% (другими словами, после умножения обеих частей уравнения (1.95) на соответствующую диагональную матрицу). Коэффициенты получаемой системы имеют следующий вид: _ /Γ,-1/a 1 w К\ + К\\ αι - V Щ 12г,_1/2ДХ Щ l· _ /Г<+1/2 1 \Л Ь?+*^\ аз ~ 1"лГ" й^^а1 ~б^Г> ^ = ^ = [1-^(2-iTJI?—)Ш> <L96> L I2h2r \ 6ri+1/27v1/2/J/i2 _hl + h\ /гг-1/2 1 \ a? " a8 \Щ I h2 12Γί+1/2λ Отсюда видно, что при г^1/2 > hr условия положительности схемы, т. е. dk > 0 в (1.96) те же, что и для схемы Микеладзе для уравнения Пуассона в декартовой системе координат. Рассмотренный подход неприменим для построения разностных уравнений на оси симметрии, и при г,- = 0 необходимо использовать специальные представления. В частности, из (1.93) непосредственно следует, что при г -> 0 уравнение Пуассона принимает форму — =/(0,*), ^» = -2*5 Принимая во внимание свойство симметрии решения рассматриваемой задачи, мы определяем на оси разностный оператор (Lhrfiu)0J = 4UQ-J~2"1-J = (Lr,0«)o,i - §(^,o«)o,i + 0(h% (1.98) в котором используется свойство L'.o« ~ 7ГТ = /(°>*)> £γ,ο = -2 я-j. (1-97)
46 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ Γ'υ r-+ov г 3 дг4 Ir^o Отсюда разностная аппроксимация четвертого порядка на оси определяется в виде = (/ + ^/ + §^/)0J + O(fc4). (1-99) В покомпонентном представлении этого уравнения величины αϊ, as, a6 равны нулю, а остальные коэффициенты выражаются формулами _ ЗЛ?+4Л^ _ 4 Л 3ft2 + 4ft2> 1 / Щ+Щ^ 4 / 3h2r + 4hl\ а2 = a4 = ^ (1 - J, «8 = ^1- i2/l2 j' 3h* + Ah* A (1.100) Сравнение величин αϊ, as, αβ из (1.96) для i = 1 со значениями аз, αγ, а« из (1.100) соответственно показывает, что алгебраическая система, получаемая из (1.98), (1.99), является не только несимметричной, но и несимметризуемой. Отметим, что на основе приведенных выше в (1.85)—(1.87) подходов можно строить и другие аппроксимации порядка 0(h*) для уравнения (1.93). Если в (1.94) вместо fj.Ji/2 использовать величины где φ№ и остаточный член - достаточно гладкие функции г, то при этом в (1.95) достаточно заменить "радиальный" оператор L±T на оператор Z/£ r следующего вида: (£*,r*)i,j - ^2 [r!+i/2(^J ~ *<+i j) + pi*i/a(tt^' " «ί-ι^)]> где M£ru - некоторое определяемое аналогично М£хи из (1.86), (1.87) разностное выражение, аппроксимирующее с погрешностью 0(Κ%) величину М*(Ги = f^rV^'ff- Получаемый при этом разностный оператор L£ (вместо Lj в (1.95)) имеет ошибку аппроксимации четвертого порядка в силу легко проверяемого соотношения
§ 1·4· Компактные схемы повышенной точности 47 Lhk<ru = Llru + 0(h*) = LTu - ^Llu + 0(K). 1.4.3. Аппроксимации систем дифференциальных уравнений. Рассмотренный выше подход формально легко переносится и на системы дифференциальных уравнений вида Lu = Y^ Ь^и Η- su = /, (1.101) где и = {ui,...}um} - вектор-функция от независимых переменных χ — {χι,..., жп}, Li - дифференциальный оператор второго порядка ^ = -Е^.;^7 + с'|^ < = ι,....,η, (1.Ю2) j — 1 a bi, aitJ-, Ci, s - матрицы порядка тгг с переменными коэффициентами, удовлетворяющими условиям существования единственного и достаточного гладкого решения рассматриваемой задачи (для простоты расчетную область будем считать n-мерным параллелепипедом с граничными условиями 1-го рода). Предположим, что на равномерной сетке с шагом /ι* по каждой из переменных существуют разностные операторы со следующими ап- проксимационными свойствами: Lhxu = LiU ~ tifdiLig^LiU + 0(/ι4), г = 1,..., η, (1.103) где di и Qi - некоторые матрицы, причем §{ - невырожденные. Данная запись является формальным обобщением скалярного случая, и с формулами (1.73)—(1.75) для η = 2 имеется соответствие: d\ — ... ~ dn = ~, 9i = Р, #2 = q. Из (1.101) и (1.103) при невырожденности матриц Ь{ можно выписать следующие выражения для слагаемых дифференциальных операторов: LiU = L*u + hldiUg^Uu + 0(h4) = bjf- su -]Г bAL*u) . (1.104) Отсюда можно получить соотношения
48 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ diLig7xLiU = diLig^b^1 f / - su - ^ ЪкЬкч\} (1.105) кфг τι J2 bi(L^u + kfdiLig^Liu) + «« = /. (1.106) i=l Подставляя теперь (1.105) в (1.106) и заменяя далее дифференциальные операторы на разностные, получаем разностную схему η = f -^htbidiLig^br1/ + 0(h*). i-X Таким образом, мы вывели аппроксимацию системы уравнений (1.101) с погрешностью четвертого порядка, если только справедливы все проведенные выше преобразования. В частности, исходные коэффициенты и искомое решение должны удовлетворять условиям, при которых остаточный член в (1.103) действительно имеет четвертый порядок. Кроме того, проблема нахождения матрич'ных коэффициентов di и gi может оказаться самостоятельной сложной задачей. Так что рассмотренный формализм, можно сказать, указывает общее направление исследований для конкретных случаев и только. Например, при самосопряженности исходной дифференциальной системы могут интересовать вопросы симметричности, положительной определенности и/или монотонности получаемых разностных схем. 1.4.4. Аппроксимация граничных условий 2-го и 3-го родов. Рассмотренные компактные разностные схемы легко реализуются при решении краевых задач Дирихле в областях, составленных из прямоугольников, стороны которых параллельны координатным осям. В этом случае для внутренних узлов выписываются рассмотренные выше девятиточечные уравнения, и при этом в лежащих на границе узлах сетки используются заданные значения искомого решения, без внесения дополнительных погрешностей. Если же заданы граничные условия Неймана или Ньютона, то их необходимо аппроксимировать (на решении краевой задачи) с повышенным порядком точности, используя при этом тот факт, что решаемые дифференциальные уравнения справедливы вплоть до границы расчетной области.
§ 1.4· Компактные схемы повышенной точности 49 Мы продемонстрируем такой подход на решении диффузионного уравнения без конвективных членов д ди д ди ,, ч ,„ ,^ч L.u + Lvu = --ρΤχ - -qYy = f(x,у), (1.107) решение которого на левой границе χ = хо удовлетворяет условию ди ~Рдх~ + SeU = 9' (1.Ю8) где ρ > 0, гз и # - достаточно гладкие функции. Для этого, вводя аналогичные (1.78) обозначения Pi+l/2,j = Pi+l/2,j + — y>i+l/2?j +<5(Л ), {Vxu)itj = ^ , выпишем с помощью непосредственных тейлоровских разложений следующие вспомогательные соотношения: - „л 17 hl \fdu h2xd3u\ ч 24 V + 0(/г4) 1/2.J Рдх + 2 dxPdx + 24 V &Лх + <93и &Л Ρ^+ΨΤχ) + 48дх\дх2Рдх д3и ди + PW+<Pdx + 0{h4). (1.109) o,j Подставляя теперь сюда граничное условие, выражение для φ и проводя преобразования вида д_ д2 ди _ д3и дрд2и д2рди дх х дх2 дх дх3 дх дх2 дх2 дх' h2 1 Lyu = Llyu+^Ly-Lyu + 0(h4), ^Lyu = v£L1isU - γ^υη + 0(h2), с помощью исходного дифференциального уравнения приходим к следующей форме:
50 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ +1 [^ JM + Hj& (2i*« + Ц - « J; gЩ] }^ +0(h4), (1.110) где Liyu определяется аналогично (1.77) и использовано обозначение 1 д 2 J 6 dx 12dxp 24вх\рдх)' h2 Прибавляя к обеим частям равенства (1.110) величину xf^i^fV^u и продолжая аналогичные преобразования, приходим к соотношению -Pi/ajVS J + [«* + у £*«« + ^ (tf VhxLlyu + hyLl^ Vhxu 12p9x х^ +24V4p^ x·" J -§(4«-&*-Μ+ίΝ.((ϊ 2g 9ж aeu o,j (1.111) ~Л Здесь Vy и Δ£ обозначают центральную разность первого порядка и вторую разность по переменной у, введенные выше в (1.6) и (1.40). Таким образом, если в (1.111) отбросить остаточный член О (/ι4), то мы получаем шеститочечное разностное уравнение, аппроксимирующее на линии границы χ — xq краевое условие (1.108) (на решении уравнения (1.107)) с погрешностью четвертого порядка. В частности, для простейшего случая р = д=1,ае = 0 (граничное условие Неймана для уравнения Пуассона) разностное уравнение (1.111) принимает простую форму: 12 х у 9 21 6 дх -v*« 12 v9 + 24 ("·0+^0)+ο<Λ,>·
§1.5. Метод неопределенных коэффициентов 51 рассмотренную в [36]. Там же рассмотрены аналогичные аппроксимации четвертого порядка для условия Неймана на других сторонах прямоугольной расчетной области, а также в ее угловых точках. Мы на таких подробностях останавливаться не будем и отметим только, что в приведенных разностных выражениях четвертый порядок сохранится, если участвующие в них производные от функций р, <7, / заменить соответствующими конечными разностями. § 1.5. Метод неопределенных коэффициентов Наиболее общий подход к построению разностных схем заключается в методе неопределенных коэффициентов, который на примере трехточечной аппроксимации первой производной может быть проиллюстрирован следующим образом. Будем искать искомую разностную формулу в виде VhUi = C-!Ui_i + CQUi + CXUi+U где неопределенные коэффициенты c_i,Co,Ci находятся из условия совпадения данного выражения (после подстановки в него тейлоровских разложений для щ±х = u(xi±i)) с аппроксимируемой первой производной - с максимально возможным порядком малости по Л. Действуя по этому принципу, из получаемого соотношения VhUi = (C„i +Со + С\)Щ + С_! h2 „ /ι? h2 h? -hi-iut + -y-«i g—w< + 0(h ) + ex hibl+'fu'!+'fu? + 0(h4) выписываем требуемые условия для коэффициентов при производных до третьего порядка включительно: с-х + с0 + сх = О, h{Cx — fti_ic_i = 1, h2cx + h2_xc^x = 0, h\cx - h^xc-x = 0. (1.112) Отсюда подсистема из первых трех уравнений дает однозначное определение коэффициентов ~Ы l + c^xhi~x C-χ - Τ 77 , , χι с1 - , » Со - -СХ - C_j. Четвертое уравнение оказывается несовместным при любых соотношениях /ΐ;_ι, Ы, лв силу Cfc = 0(h~l), k — —1,0,1, мы окончательно имеем
52 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ Vm = «J - \fali* - c^hUK' + 0(h*) = uj + ^lttJ" + 0(h3). Этот результат согласуется с предыдущими выводами и может быть сформулирован следующим образом. Теорема 1.1. Трехточечное разностное выражение (1.7) аппроксимирует первую производную u'{xi) для и £ Сг[а,Ъ] с погрешностью 0(h2) на произвольной неравномерной сетке. При любом соотношении шагов и и(х) е С74[а, Ь] схемы данного вида с погрешностью 0(h?) не существует. На равномерной сетке выражение (1.7) переходит в центральную разность (1.6). Если dice любой из с& положить равным нулю, то оставшиеся два коэффициента из первых двух уравнений (1.112) определяются однозначно как равные по модулю и противоположные по знаку} а погрешность аппроксимации в точке ж* есть 0(h) (если только со и hi — /ι^_χ одновременно не равны нулю). Методом неопределенных коэффициентов можно аналогично показать, что с увеличением числа точек в разностном выражении находятся и аппроксимации первой производной более высоких порядков. Продемонстрируем идею метода на аппроксимации уравнения для функции двух переменных. Пусть, например, дифференциальный оператор имеет вид д2и д2и д2и ди ди Lu = а11л~Т +а12л~^~ + ^22-^- +а10— +а01^- -haoow- (1.113) ахг охоу оуг ох оу Будем искать аппроксимацию Lh в точке Ρ на совокупности узлов (шаблоне) из г -f 1 точек QkP в форме г (Lhu)P - Оои(Р) - £ **«№**). (1-114) где коэффициенты ao,ai,...,ar пока не определены. Разлагая u(QkP) в окрестности точки Ρ в ряд Тейлора до третьего порядка и группируя члены разложения, можно получить /г ч л д2и(Р) А д2и(Р) А д2и(Р) . ди(Р) + А2Щ^- + А0и(Р) + 0(h), (1.115) оу где An,i4i2,... суть линейные комбинации от a0,ai,...,ar с коэффициентами, выражающимися через расстояния от точки Ρ до точек
§ 1.5. Метод неопределенных коэффициентов 53 QkP — (яр + hxk, Ур + fry*)· Приравнивая коэффициенты при одинаковых производных в выражениях (1.113) и (1.115), получаем систему шести уравнений относительно г + 1 неизвестных ао, «ь..., аг: г г г г ^12 = 2^^xfc/iyfcGtfc = ai2, Л2 = X^^i/fcafc = ^Ь (1.116) fc^l г = z2^lkak — 0*22, k=l k=l г Ао = «о 22 a* *=1 22 = > „ N*a* = a22) Л0 - o0 > afc = aoo· В зависимости от выбранного шаблона эта система может быть определена, переопределена или недоопределена. Если система разрешима, то мы находим коэффициенты выражения (1.114), которое в этом случае будет аппроксимировать оператор L с погрешностью первого порядка. Рассмотрим подробнее аппроксимацию уравнения Пуассона д2и дЧ дх2 ду а+S3 = /(«.») (1.И7) на девятиточечном шаблоне, состоящем из совокупности следующих точек Рк = (ж*,у*): Л) = Ы,Ук), Рх = (а&о + й/ЬУо), ^2 = (а?о,Уо + &Л)> Ръ - (я?о - оз^Уо), Ра = (ачьУо ~ ^Л), Ръ = (жо+^5^,2/0+ ^5^), Лз = (я0 - ^б^,2/о + <5б^), ^7 = (хо ~ S7h,y0 ~ S7h), Р8 = (жо + «^Уо -- <*8^)· Для fc = 1,2,5,6 положим Sk — Sk + £&+2 и 4 = ifc - ifc+2· Конечно- разностную аппроксимацию (1.117) в точке Ро ищем в виде уравнения 8 h2 8 fe^O k=Q Если и(х,у) имеет ограниченные производные до пятого порядка, то с помощью ряда Тейлора получаем 8 h2 8 8 ^2акик—— Σ^Δν,ΐ! = и(Р0) У]afc fc=0 fc=0 A=0'
54 ГЛ. 1. КОНЕЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ + yj· -β-(Ρο) Uiai - £з<*з + ^5^5 - ^6^6 - δγα7 + £8α81 + rj 7j—(Po) #2& ~ ^4^4 + SsCL$ + ^6«6 — <^7&7 — #8^8 + 5ΐ/ fc2S2 5f^(ft)[^i+««· + E^ -Σ6* fc=5 fe^O + + (Ρο) [2J|a5 - 2<*2α6 + 2^α7 - 2<*2α8] /ι2 д2и 2! dz% /ι3 93υ г -Siibi + 3<53Ь3 - 3<S565 + 3«56Ьб + 3<*7Ь7 - 3δ868] l3 Я37/ + ^^^-(Ро) p|a5 + 3iJoe - 3ί?ο7 - 35ja8 - Ы2Ъ2 + UAbA ~3ί5&5 ~ 3ί6 Ьб + 3^7 &7 + 3^8 &8 + 3ί s^T2 (Ρο) [35'α5" 3ί«αβ ~ *****+ 3(5*α8" 35lbl +3^зЬз — 3^565 + 3<$β&β + 3^7 ^7 — 3(5868 1,3 ДЗ-. + ·^ρ№) [^θ2 - ί|θ4 + δ35α5 + δΙα6 - ί?α7 - й|о8 —З^гЬг + 3<$4&4 — 3(55^5 — 3ίβί>6 + 3£7&7 + З^^в +¥ й(Ро) ββι+^°»+ Σ **α* ~ ω?6ι - т%Ьз -6 Σ Φ*] /i4/d4u(P0) 54u(P0) 4! V fc=5 8 fe=5 дх3ду дхду3 )[4^(-1)^^ + 12Σ(-1)^6Λ] Л=5 fe^5 +£^Ν-βΣ^-»ί>*+«Σ«4 &=1 fc=5 fc^5 Jfe=5
§ 1.5, Метод неопределенных коэффициентов 55 8 -б£#Ь*]+0(Л8). (1.119) А-5 Приравнивая коэффициенты при одинаковых производных в выражениях (1.117) и (1.119) до членов порядка /t4, получаем систему уравнений относительно а*, и £^. Исследование этой довольно сложной системы показывает, что при выполнении условий Ш<^ и ^<ί*ί*+2<4 для к -1,2,5,6 (1.120) решение имеет вид ро - <5jt+2Mi(p2 + (-1)*Рз) _ Ро + ifc/xi(p2 + (~1)*Рз) аД;ТГ- ; ajb+2 = С 1 ™К-Г4 С Ϊ Pi + Jfc-{-6PA: + l Pi - 4+4P&+1 afc+4-——; Mb α&+6 = —ϊ Ml? 0Α+4^Α+4 0А+6^А+4 Ρθ=Ρΐμ2 + P2M3 + Р3^4, Pi = ^(^12^23 ~ «13^22) > 0, Ρ2-τχ(«ΐ3«2ΐ ~ ацагз), Рз = гг(ацО£22 - «120:21), μι-Мз + d\ + ^2 + ^4 > 0, /i2 = 4(dj? + Mr + djj + <We) > 0, μ3—JlJ3dl + ^2^4^2 + 4^5^7^5, /Z4 = — δ\δ%ά\ + δ2δ^2 + 4<56£8с2б, <*k\=P2dk + 2μχ(-ά$ - (~l)*d6), ak2 = /x3cfe + /λι(-<Μα+2 - 2<$5£7), аАз=/х4й1л ~ (-1)*Mi(<Ma+2 + 2<56<J8), 8 8 8 ао^-^ад., Ь0 = *?αι + £fa3 + 5Z*AaA ™ Σ6*' A 1 A~5 A=l 0A = OA+2 = ~, , (1.121) Ok$k Ok+2$k . (~l)fc+1c6 . (-1)*+1C5 , Ί 9 ^А+4$А+4 Z0k+6Sk+4 ci=J5a5 — Jga6 — δ7α? ± δ$α$, c2 = <55a5 -f £6a6 — <5?а7 — <5|αβ, 8 8 6c3— ί^αι + £4a3 + 5Z^AaAi бс4 = δ\α2 4- У^^аА? А = 5 А = 4 Зс5=<54а5 - J4 + δ^ - δ\α%. Таким образом, выражение (1.118) с коэффициентами, определяемыми из (1Л21), аппроксимирует уравнение (1.117) с погрешностью O(h^).
56 ГЛ. 1. КОНЕ ЧНО-РАЗНОСТНЫЕ АППРОКСИМАЦИИ В простейшем регулярном случае (все 5* = 1, т. е. точки Рь располагаются в узлах квадратной сетки) рассмотренная аппроксимация совпадает с (1-45), имеющей погрешность аппроксимации 0(h6). Аналогично из (1.121) можно получить и девятиточечную схему Микеладзе (1.43) на равномерной прямоугольной сетке с шагами hx,hyy если положить ί5 = s6 = δ7 - δΒ - y/hi + ну к Главное же достоинство приведенных формул состоит в том, что они дают не только способ построения разностных схем на неравномерной прямоугольной сетке, но и аппроксимации в случае, когда регулярная сетка пересекается криволинейной границей с условием Дирихле (аналог пятиточечной схемы Шортли-Уэллера (1.64)). Рассмотренный принцип построения разностных уравнений методом неопределенных коэффициентов является наиболее общим и формально применим к аппроксимации высоких порядков для различных типов дифференциальных уравнений с переменными коэффициентами на сеточных шаблонах разной конфигурации и в том числе для трехмерных краевых задач со смешанными граничными условиями. Главный вопрос здесь заключается, как это видно из предыдущих громоздких выкладок, в высокой технической сложности процесса получения формул. Однако эта проблема может быть успешно решена с помощью программ автоматического проведения аналитических преобразований и положительный опыт в данной области имеется.
ГЛАВА 2 МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Методы дискретизации исходных краевых задач, рассматриваемые выше, основаны на непосредственной аппроксимации дифференциальных уравнений конечно-разностными. Однако такой подход не является единственным, так как практически для каждой задачи математической физики известны интегральные соотношения, отражающие законы сохранения (баланса) той или иной субстанции (массы, тепла, энергии и т. д.). Эти интегральные равенства могут быть также аппроксимированы путем замены участвующих в них производных конечными разностями и применения квадратурных формул для приближения интегралов. Поскольку аппроксимируемые при этом балансные соотношения рассматриваются на элементарных ячейках сетки, для такого подхода сложилось название, получившее широкое распространение в последние годы, - метод конечных объемов. Получающиеся сеточные алгебраические уравнения иногда совпадают с "обычными" конечно-разностными, а иногда несколько отличаются. Теоретический анализ для балансных, или консервативных, разностных схем, как их иногда называют, также почти не отличается, и обычно методическое преимущество здесь заключается в меньших требованиях к гладкости исходного решения, так как в законах сохранения содержатся производные более низких порядков, чем в эквивалентных дифференциальных уравнениях. При общности методологических принципов балансных методов здесь имеются и существенные различия в тактике реализации, и на них мы остановимся отдельно- Главным принципиальным качеством методов конечных объемов является возможность применения поэлементной технологии аппроксимации и формирования алгебраической системы, что приближает их в этом плане к методам конечных элементов. Аналогично локальным матрицам жесткости могут быть определены локальные матрицы
58 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ баланса^ из которых собирается (ассемблируется) глобальная матрица системы уравнений. Независимое друг от друга вычисление локальных матриц баланса не только намного упрощает вычислительную сложность реализации многомерных задач, но и значительно повышает эффективность распараллеливания алгоритмов. §2.1. Интегральное тождество Г. И. Марчука и его применение 2.1.1. Одномерный случай. Изложение данного подхода наиболее наглядно на примере одномерного уравнения диффузии —т-Р(х)гг +г{х)и = /(х), р(х) > 0, а<х<Ь. (2.1) ах ах Будем считать, что функции р, г и / - кусочно-непрерывные на отрезке [а,Ь] с возможными точками разрыва первого рода. Решение и(х) при этом в точке ξ разрыва функции ρ удовлетворяет так называемым условиям сопряжения и\^+ = и\^~, ρ+ν!\ξ+ = ρ~η'\ζ-, где знаковые индексы относятся к односторонним предельным значениям функций. Для построения аппроксимации возьмем сетку с множеством узлов а = х0 < χι < ... < xn < XN-hi = Ь, (2.2) включающим все точки разрыва. Проинтегрируем уравнение (2.1) по ж в пределах (а^-х/г^-ы/г)» ж<±1/2 ~ ixi + χί±ι)/2> в результате чего получим соотношение баланса Ji+1/2 - J4_1/2 + J {ru-f)dx = 0, (2.3) где введены обозначения J»±i/2 = ^(жш/2) функции потока J(a:) = _p(a;)S· (2-4) Для нахождения J,-_i/2 проинтегрируем исходное уравнение в пределах (Жг-1/2>ж)> что дает соотношение χ -р^ = Л_1/2- у (ru-f)dx1. (2.5)
§2.1. Интегральное тождество Г. И. Марчука 59 Поделив последнее соотношение на ρ (напомним, что этот коэффициент диффузии предполагается строго положительным) и произведя затем интегрирование на интервале (xj_i,#j), после несложных преобразований находим выражение для потока Ji-l/2 — -(Ul--ui_1)+ I J I (т-Лах'У I j. (2.6) £t-l Xi-1/2 Хг-\ Отсюда заменой индекса г на г + 1 получается формула для Ji+i/2· Подставляя теперь значения потоков в уравнение баланса (2.3), приходим к интегральному тождеству Г. И, Марчука «ί+1/2 Щ+1 Т^~~~ + —1Гг + / {ru~f)dx "(/τ)" /?/^-^ ζ», ι ж;-1 Xi-i/2 Это точное соотношение может служить основой для вывода разностных уравнений с погрешностями различных порядков. В частности, если г(х) ξξ 0, а интегралы от функций / и 1/р вычисляются точно, то из (2.7) следуют трехточечные разностные уравнения с нулевой погрешностью. Правая часть (2.7) является величиной порядка 0(h3), если только все участвующие в ней подынтегральные функции внутри интервалов {xi,Xi+i) гладкие. Это следует просто из того, что она обращается в нуль после применения квадратурной формулы центральных прямоугольников, которая, как хорошо известно, имеет ошибку интегрирования третьего порядка. Если этой величиной пренебречь, а оставшиеся интегралы вычислить приближенно по той же формуле центральных прямоугольников, то на равномерной сетке получим "классическое" разностное уравнение диффузии (естественно, после перенормировки, сводящейся к делению на h) с ошибкой второго порядка. На неравномерной сетке (при
60 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ использовании приближения / fdx « /* (hi 4- /ii_ ι) /2) получаем трех- «1-1/2 точечное уравнение, которое после деления на 2ΐ~1 также переходит в обычное разностное уравнение, имеющее ошибку 0(h). Естественно, что если функция 1/р точно не интегрируется, то приближенное вычисление соответствующих интегралов вносит дополнительную погрешность. Если р(х) задана аналитически, то это, как правило, не привносит существенных трудностей. На практике часто значения функции ρ известны только в узлах сетки, и тогда требуется дополнительно привлекать интерполяцию (линейную или более высоких порядков, в зависимости от требуемой точности). В принципе все интегралы в тождестве (2.7) при использовании соответствующих квадратурных формул могут быть определены со сколь угодно малой ошибкой (если г φ 0, то придется искомую функцию интерполировать предварительно по значениям щ), В итоге это позволяет построить разностные уравнения с произвольно высоким порядком аппроксимации. Если т(х) = 0, то все они будут оставаться трехточечными. Рассмотренный подход применим и для диффузионно-конвективного уравнения вида (1.28), в котором удобно представить q(x) = р|~. Тогда после обобщения понятия потока (содержащего диффузионную и конвективную составляющие) уравнение (1.28) сводится к форме dJ —+ги = /(я;). (2.9) Далее выписывается соотношение баланса (2.3) и с небольшими изменениями повторяются выкладки (2.5)-(2.7). Например, вместо (2.7) после отбрасывания малой правой части получается разностное уравнение (e~sv)i+1 - (e~8v)j (e-8v)j - (е~9у)^ , / _ — + - + / (ru-f)dx = 0. (2.10) J pe~s J pe~* *i-i/a X i X i -1 Как и в предыдущей главе, отметим основные алгебраические свойства получаемых уравнений. Во:первых, если s не зависит
§ 2.1. Интегральное тождество Г. И. Марчука 61 от χ и г (χ) Ξ 0, то при любых приближениях оставшихся интегралов уравнения являются симметричными и положительного типа. Если г φ 0, то при использовании простейшей квадратурной формулы прямоугольников эти свойства сохраняются, а при более сложных - теряются. Присутствие конвективного члена в (2.8), т, е. s(x) φ const, нарушает как свойство положительности типа уравнений (нет диагонального преобладания), так и свойство симметричности. Однако, как легко заметить , оба эти свойства возвращаются, если ввести новую неизвестную переменную xui — e"SiVi. Из соотношения (2.10) следует одна замечательная аппроксимация, заслуживающая пристального внимания. В данном случае достаточно остановиться на частном случае г(х) Ξ 0, р(х) = 1 и равномерной сетке. Проведя линейную интерполяцию для s(x) и вычисляя затем интегралы в знаменателях точно, получаем разностное уравнение 1 ■ -1-1 VI— е*·-1-** е Si+i - Si \ исследование и применение которого связаны с именами А, М. Ильина, Шарфеттера-Гуммеля и многих других. Главная его особенность заключается в том, что оно имеет погрешность О(h2) и является абсолютно монотонным (более конкретно уравнение (2.11) - положительного типа при сколь угодно большой величине конвективного члена). Наибольшее значение такого типа разностные схемы имеют при решении задач с так называемыми пограничными, или внутренними, слоями, характеризующимися наличием локальных подобластей с резко меняющимися свойствами решения (см. §4.5). Рассмотренные разностные уравнения являются балансными в том смысле, что сохраняют дискретный аналог свойства баланса субстанции для исходной дифференциальной задачи. Если в (2.9) для простоты взять г = 0, то для любых ж', χ11 из интервала [а,Ь] справедливо соотношение х" J(x") - J(z') = ί f(z)dx. (2.12) χ' Вводя обозначение для сеточного потока
62 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ и суммируя уравнения (2,10) в пределах от некоторого индекса i\ до гг, получаем разностный баланс (дискретный эквивалент (2.12)) Важно отметить, что после замены интегралов в (2Л4) на их дискретные аналоги получаемое равенство выполняется точно, какие бы квадратурные формулы для вычисления интегралов в (2.13), (2.14) не применялись. Сделаем еще одно замечание об учете граничных условий при использовании интегрального тождества Г. И. Марчука, Если на концах отрезка [а, Ь] заданы условия Дирихле, то вопросов нет, так как уравнения vq = ua, Ujv-ц = Щ на сетке (2.2) учитывают их точно. Когда же, например, в точке χ = а задан поток J вида (2.4) или (2.8) (наиболее естественное в математической физике условие), то целесообразно сетку выбрать так, чтобы середина первого интервала Х\(г совпадала с границей. Тогда в балансном соотношении (2.3) при % — 1 поток Jx/2 учитывается точно и его не надо аппроксимировать. То же самое верно и при задании потока на правом конце отрезка. И последнее: наличие известных особенностей подынтегральных функций в тождестве (2.7) не препятствует, вообще говоря, построению разностных уравнений сколь угодно высокой точности. Для этого достаточно только применить известные квадратурные формулы для вычисления сингулярных интегралов, 2.1.2. Двумерный случай. Посмотрим теперь, насколько данная идея плодотворна для двумерного уравнения диффузии, которое путем введения проекций вектора потока (2.15) запишем в виде 1 ха -ха dJx дх t ди дх* djy ду Л = ■ = /(* ди ~Рду ,У)- (2.16) Здесь в случае а = 1 уравнение соответствует цилиндрической системе координат, а при a = 0 - декартовой. Как и ранее, возьмем
§2.1. Интегральное тождество Г. И. Марчука 63 прямоугольную сетку (необязательно равномерную) с координатными линиями Xi, yj. Уравнение (2.16) умножим на ха и проинтегрируем по ячейке х^х/2 < х < Xi+i/2, У3-1/2 < У < Vj+i/2> B результате чего приходим к соотношению баланса Уз+1/2 Ж*+1/2 )xadx i + 1/2 Vj+1/2 J I fxadxdy, (2.17) Vj-l/2 *i-l/3 «i+1/2 Vj+l/2 %i-l/2 J/i-1/2 где введены обозначения Jf±1/2 = J*{xi±i/2yV)y «^±1/2 ~ ^У(ж'2/UI/2)* Выразим теперь из исходного уравнения (2.16) величину §£ и проинтегрируем полученное выражение в пределах (χ^χ/2ι^): ■*'(*■») = -/Г-1/2 + j [f дЛ ду J Zi-1/2 {x'Ydx1. (2.18) Аналогично получаем для второй проекции потока у Уз~1/2 Подставляя в левые части (2.18) и (2.19) выражения для потоков из (2.15) и производя интегрирование в пределах (ж^_х,аГ|), (Vj~i,yj) с предварительным делением на рха в первом случае и на ρ - во втором, находим следующие необходимые для дальнейшего выражения: J: х _ χ*-ι g;-i/2 i -1/2 — jc, Л ., + «,-1+ } df I (f-±d-£-)dy' Уэ~1 l/j-i/2 V / (2.20) J-1/2 Vi J Γ ^ J ρ
64 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ где используются обозначения щ = u(xi,y), Uj = v>(x,yj). Подставляя далее (2.20) и аналогичные им выражения для «Т^м» *^jVi/2 B со°тно- шении баланса (2.17), получаем двумерное интегральное тождество / i^S^ + ^V^W / (-!и±а + а^иу* •^ \ Г _£ξ_ Γ -^- ' J \ Γ dx f dx / Vj-1/2 J рЖ« J ρία *t-l/2 J Ρ J ρ Ei+i/2 J/j + 1/2 = f J fxadxdy + <f>id. (2.21) χί-1/2 Уз-1/2 Здесь <j>ij обозначает величину l/j-fl/2 Ж.+1/2 **J = / (^+1/2-^-1/2)^+ / (^+1/2-^-1/2)*°^, (2-22) где, в свою очередь, переменные ¥>?$_!/2» ^j±i/2 определяются формулами <«. - '·<■-'/■■'> - / £ /'"(' - з>>·*'/ / £■ Xi-l X ii-1 (2.23) Тождество (2.21) может служить основой для вывода различного типа разностных уравнений после применения тех или иных формул приближенного интегрирования. Последний член <f>itj проще всего отбросить, так как величины φνί±1ι2 и ^j±i/2 после применения квадратурных формул центральных прямоугольников обращаются в нуль, т. е. они являются величинами порядка О (/ι3). Если далее применить простейшие квадратурные формулы прямоугольников и трапеций, то получаем пятиточечную аппроксимацию н) + ни iXi+l/2Pi+l/2,j — J^ ~+ Xi-l/2Pi-l/2,j j£ )
§ 2.2. Интегро-балансные аппроксимации 65 + J г< VP<'J+1/2 Ц~~-+VU-W—Ц^ ) (Λ"+Λ?_ι)(Λ? + Λ! ι) = \_. ' ^ J '-lJx?fiJt (2.24) которая является симметричной, положительного типа и имеет погрешность О(h2) на равномерной сетке и, естественно, первого порядка - на неравномерной (после "обычной" перенормировки уравнений). Из (2.21) несложно также вывести более точные девятиточечные уравнения, что мы предоставляем заинтересованному читателю. Мы не будем останавливаться также на вопросах аппроксимации краевых условий. Если граница области Ω состоит из отрезков прямых, параллельных координатным осям, то их учет производится совершенно аналогично одномерным задачам. В противном же случае картина усложняется, и этому позже будет уделено специальное внимание. §2.2. Интегро-балансные аппроксимации 2.2.1. Одномерные уравнения. Данная группа методов построения балансных (консервативных) разностных уравнений базируется, как и предыдущая, на использовании интегральных законов сохранения субстанции, которые для уравнения диффузии (2.1) записываются в виде (2.3) или подобных ему выражений. Однако дальнейшая идея заключается в конструировании аппроксимации разностей потоков, связанных с решением, вследствие (2.4), интегральным соотношением *" и{х")-и(х') = - [дх)~9 χ',χ" G [а,Ъ]. (2.25) J Р{х) г' Если здесь при х* — а^, х" = xi+x под интегралом поток проинтерпо- лировать (отсюда и название метода - интегро-интперполяциониый, принадлежащее А. А. Самарскому [35]), то величины J{±x/2 легко выражаются через щ: Ji+X/2 = -(«i+1 - Ui)/ / 0i+l/2, (2-26) где остаточный член φί±ι/2 записывается в виде
66 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ , \ Ρ ί (Ζ ~ Xi+l/^dx Φί+1/2 - [Λ+1/2 J Xi + |/(*- *«-i/3)aJ"(fH-i/») f]/ / J (2-27) и имеет порядок О (/г2), если функция р(ж) достаточно гладкая на интервале [xj,Xj+i], a &+1/2 - некоторая точка из этого интервала. . После подстановки (2.26) в балансное соотношение (2.3) получаем равенство с*+-1/2 ~ —^ + —^ + Ι {ru- f)dx = 0i+1/2 - 0,-_1/2, (2.28) Γ ίίι: Г dx J J ρ J Ρ xi~l/2 левая часть которого та же, что и в интегральном тождестве (2.7). Отсюда следует, что правые части у них тоже должны совпадать, хотя внешне они существенно отличаются: в (2.7) остаточные члены выписываются через искомое решение, а в (2.28) - через производные от потока. С точки зрения минимизации ошибки <fo+i/2 применение формул (2.7) и (2.26) не является, вообще говоря, оптимальным. Как известно из теории гауссовских квадратурных формул (см., например, [3]), при заданных пределах интегрирования и числе квадратурных узлов их координаты и коэффициенты однозначно определяются весовой функцией. А именно абсциссы формул Гаусса являются корнями многочленов соответствующих порядков, ортогональных на интервале интегрирования с заданной весовой функцией. Поэтому вместо ж»+1/2 оптимальной является некоторая точка &4-ι/2> зависящая от функции р(ж), и вместо (2.26) можно записать e; + i /dx l· Φΐ+ι/2, (2.29) Xi где ошибка $i+i/2 имеет вид - J"(Vi+X/2) 'Τ (X ~ b+1,2)2 j c r , *i-li/2 = 2 / й) dx> Vi+1/2 € [xitxi+1\.
§ 2.2. Интегро-балансные аппроксимации 67 Если пользоваться выражением (2.29), то в соотношении баланса в качестве х\х" надо брать &_ι/2, 6+1/2 и последние значения необходимо использовать в (2.28) вместо х%^\/2ч xi+i/2 соответственно. При этом в определенном смысле "наилучшая" для г = О схема второго порядка на неравномерной сетке имеет вид Ci + l/2 -Pi+l/2(*>i+l - Vi) Pi-l/2{Vi ~ Vi-l) , = / f(x)dx, hi tii-i J Xi+i Xi+i Xi+i /dx I f dx I f dx ZT/ J 7' Л + 1/2=Л-/ J ^y (2.30) Эту схему можно конкретизировать после выбора способа вычисления &+1/2) а также линейной или квадратичной интерполяции функции f(x) под интегралом (если он не вычисляется точно). Рассмотренный подход, который будем называть интегро-балансным, можно развивать следующим образом. Для аппроксимации интеграла в (2.25) естественно попытаться использовать формулы численного интегрирования более высоких порядков. Обозначая через щ, α*,* и Ji}k число квадратурных узлов, коэффициенты и значения потока в точках xitk 6 [ж^^т], МЬ1 можем записать J p(x) Pi+1/2 t^, Y^aith = 1, Jiyk =J{xi%k)> (2.31) fc = l Фг+1/2 - С<Л4 ^ , т?г € [ajj,a;i+ij. Здесь не зависящая от /ι; константа С* и показатель степени /3 определяются конкретной формулой интегрирования. Например, при использовании гауссовых квадратур для р(х) ~ 1 имеем ^1/2^[(2ni)!l3(2n + l)J Ы* Подчеркнем, что в результате выбора гц, aj,fc и ас^ь порядок погрешности β в формулах (2.31) может быть сколь угодно большим, техника
68 ГЛ. 2. МЕТОДЫ КОНЕ ЧНЫХ ОБ ЪЕМОВ приближенного интегрирования позволяет это сделать даже при наличии известной особенности функции потока J(x). Выписывая аналогичные (2.25) балансные соотношения на интервалах [ж»-1,ж,-] и [xijXi+i], с помощью выражений (2.31) после несложных выкладок получаем =ЛаЬ*-/М> - 5Ζ ai-UkJi-lJt 4—φΐ+1/2 + -η~ 0.-1/2- (2.32) ι ι Ι ι * 1—1 На различных сеточных интервалах значения квадратурных коэффициентов, да и числа щ могут отличаться. Но в силу их одинаковых нормировок 2 ai,h = 1 соотношения (2.32) можно переписать в виде fe=l -Pi+1/2 Г +Pi-l/2—^ = ^ЛмО^М - Ji-1,0 + 0·*> гаг = sup{nbni„i}, (2.33) mi Wi = "Г 01-1/2 7-^-0.4-1/2, X,7i,/ = I- ai—l пг .=1 Здесь значения J^ = J(xi,/) берутся в точках из того же набора квадратурных узлов, что и в формулах (2.32), но конкретные величины %ί,ι и Хг^к могут отличаться даже при совпадении к ~ I (в частности, в (2.33) одному Jij могут соответствовать в (2.32) значения потока в разных точках х^ь* и Хг,к")· Поскольку из балансного соотношения (2.12) имеем Jij ~ Ji-u = / f{x)dx, то выражения (2.33) приводятся к виду .34) / г *«-ι,ι -Ρί+ι/Ί-^ηζ—-+Pt-i/a",^-Ti'""1 = Хд7М / Д®)**) +0*· (2·; Если функция /(ж) точно не интегрируется, то приближенное вычисление правой части в (2.34) вносит- дополнительную погрешность
§ 2.2. Интегро-балансные аппроксимации 69 фх, но она может быть сделана сколь угодно малой (при достаточном числе узловых точек) за счет выбора способа интерполяции и соответствующих квадратурных формул. Предполагая для простоты, что эти формулы строятся для каждого г по одинаковому числу узлов г, приходим в итоге к выражениям τη; г -Pi+i/2 г +Pi-i/2—г = >,7М ytqi1Ukf(Xittth) + Ψί + ^«· Отбрасывая теперь погрешность аппроксимации, получаем сеточное уравнение ГГЦ Τ -Рг+1/2 7 +Pi-l/2—7 = 2^ ΎΜ 2^ Я^Ш^к· {*-ЭЭ) ni ni~l 1=1 *=i Рассмотрим теперь, как данный подход можно применить к аппроксимации граничных условий, не привнося никаких дополнительных погрешностей. Запишем краевое условие на левом конце отрезка χ = а в формально обобщенном виде ααη{α)+βα3{α) = да, (2.36) где при обращении чисел аа или βα в нуль получаем частные случаи условий Неймана или Дирихле. Сетку выбираем с хо = & и вместо соотношения (2.32) при г — О выписываем точное равенство, вытекающее из (2.25), (2.31): ДО Г""? ДО в котором все обозначения соответствуют (2.31). Умножая равенство (2.37) на βα и прибавляя к нему почленно (2.36), получаем — _η°_ η ααηο-βαΡιμ-^—- =/3a^a0,fe[Jo,fe- J{o)}+ βα-ηΙ~'ψι/2+ да. (2.38) Заменяя далее разности потоков с помощью балансных соотношений вида (2.12), имеем _ по А «qUo - βαΡΐ/2-^V -=)9a5^aofA / /(κ)Λϋ + ψο + 9α 'e==1 a τηο г =& Χ] 7ο,ί Σ qojykf(xoj,k) + ψο-\-ψο+ ga, (2.39) ι=ι k=i
70 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ где в данном случае га0 = п0, 7о,г — «о,ь Ψο = βα^^-ψι/2-> а фа, как и в (2.34), есть суммарная погрешность вычисления то интегралов от функции f{x). В итоге для г — 0 получаем аналогичное по обозначениям с (2.35) уравнение то ααν0 -βαΡι/2~^τ = Αχ Уло.гУ^о.гл/о,/,* + 9а- (2.40) Очевидно, что при βα φ 0 для сохранения симметричности системы последнее уравнение надо поделить на βα (если же βα = 0, то проведенные после (2.36) выкладки не нужны, и к уравнениям (2.35) достаточно добавить из условия Дирихле тривиальное равенство г>о — <7α/αα). Если на правом конце задано также граничное условие аьи(Ъ) + /3t,J(b) — дъ, то сетка выбирается с правым узлом жлг+ι = жь и из аналогичных построений получаем уравнение, замыкающее систему (2.35), (2.40): ТП]Ч Г «ь«лг+1 + /%Ρτν+ι/2 г = 2J W Σ iJV.«.*/jv,i,fc + 0ь· (2·41) Л* 1=1 *=1 Легко видеть, что если αα/?α > 0, aьβь > 0, то уравнения (2.40), (2.41) являются абсолютно монотонными, конкретнее - при любых шагах сетки являются уравнениями положительного типа (напомним, что функция р(х) по изначальному предположению строго положительна). Если же одна из пар граничных коэффициентов имеет разные знаки, то для положительности типа соответствующего разностного граничного уравнения требуется выполнение неравенства типа \βαΡι/2\ > &а^о- Построенные сеточные уравнения являются балансными в двояком смысле. Во-первых, они выведены из соотношений "детального" баланса (2.25) (кстати, при наличии граничного условия Неймана, т. е. при аао.ь — 0, значения потоков J^i легко вычисляются рекуррентным образом). Во-вторых, для численных усредненных потоков, определяемых как Λ+1/2 = 22ai>kJi>k ~ Zl^ijJi^l ~ -Pt+1/2 1>ί+1 ~ Vi *=ι 1=1 hi выполняются (точно!) суммарные соотношения баланса i" тгц г ΐ»+ι/ι - ^i'-i/J = ΣΣΣ*^/ν·*' 0<i'<i"<N. (2.42) i=i' 1=1 k=l
§ 2.2. Интегро-балансные аппроксимации 71 Аналогичные разностные аппроксимации произвольного порядка точности могут быть построены и для диффузионно-конвективного уравнения (1.28). Вводя определение потока вида (2.8), (2.9) и повторяя предыдущие выкладки, мы вместо (2.35) при г — 0 получим уравнение (e-'v)^! - (e'8v)i t _ (e-*v)i - (с—ν)<-ι -Рг+1/2 Г \~Pi-l/2 Г— гщ г где значения Xi,f,fc> 7ί,ί и 4i,i,k будут, вообще говоря, отличаться от предыдущих, а величины pi+i/2 имеют вид Pi+l/2 = Ы/ J £. 2.2.2. Двумерные уравнения. Описанный подход представляется исчерпывающим проблему конструирования разностных аппроксимаций для одномерных краевых задач. Но насколько эти идеи универсальны и применимы для многомерных задач? Успехи здесь гораздо скромнее, и чтобы проиллюстрировать имеющиеся трудности, остановимся на двумерном уравнении Пуассона в декартовой системе координат dJ* дЛ ди ди ~ЬТ+~ду-=f{x'y)> =_^' %· Используя для простоты равномерную прямоугольную сетку с шагами hXl hy, из определения проекций потока и применения квадратурной формулы Симпсона мы можем записать au + i m+ij-Uij = - / Jx{x,ya)dx 6 Уз+i Уз kx (J& + 4J?+1/2ij + J*+1,,) - #+1/3ii, (2.44) j jy(xuy)dy
72 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ где погрешности численного интегрирования равны (см. [3]): Vi+i/aj - gQ ^3 ·. ξί+ι/2 е lXi,xi+iJ, V*j+x/a = go ^ϊ -» *К+1/а е l»*.»J+iJ- Запишем теперь соотношения (2.44) с меньшими на единицу индексами г, j и после несложного комбинирования (почленное вычитание полученных равенств из исходных) получим л - -tt»-l,j + 2ttij -ttf+ij = 6^: [jf+M - Jf-u + W+x/aj - J'-i/aj)] + *C2 W+x/aj - #LX/2J), _Δνω,. = -"«j-i + ayj-m^i (2 45) 6/ly J&+x - Jfj-x + Ч-Пм - J7j-Va)] + 4"Wj+i/a " tfj-x/a>- Рассмотрим выражение, получаемое суммированием линейных комбинаций (2,45): вторые разности по χ берем на (j — 1), j и (j + 1)-й горизонтальных линиях сетки (соответственно с коэффициентами 0hxhyi (6 — 29)hxhyi 9hxhy), а вторые разности по у - на вертикальных линиях с номерами г — 1, г, г + 1 (с такими же весовыми множителями). В итоге получаем девятиточечное конечно-разностное выражение ~hxhy eAxuitj-i + (6 - 2в)Ахщ^ + вАхщ^г + в&ущ-и + (6 - 20)Дуи^ + βΔ,,ΐϋ+ι,,Ι +(6 - 2i)[J?+1J - Jf_w + 4(Jf+x/2J - Jf_x/2J)]}
§ 2.2. Интегро-балансные аппроксимации 73 +^Ji-l,j+l/2 + ^<+l,i+l/2 ~ Ji-l,j-l/2 ~ Ji+lJ-l/2>\ + (б - 2e)[JVj+1 - JIj_, + 4(J*J+1/a - J^1/2)]} + tf,j, (2.46) lfcj = [W+1/2li_i + V>"+i/2,i+i - ^f-i/aj-i - ^"-i/aj+i) + (6-2ff)(^+1/aj.-^-_1/2J)]^ + [«(Cl,j+1/2 + €+l,i+l/2 - Cl,i-l/2 - €+l,i-l/2) где # - пока произвольный весовой множитель. Обозначим через Viyj = {х*~1 < ж < Xi+i,2/j-i < 2/ < Уя-ι} и V-j = {xi-i/2 < я < Xi+i/2,yj-i/2 < У < У 3+1/2} прямоугольные ячейки со сторонами Si = {χ = Xi-i}, S2 - {у = 2/j-x}, S3 - {χ — х*+х}, S4 = {?/ = 2/j+x} И S^{x = X;~i/2}, S'2 ~ {у = i/j_i/2}, S3 = (Ж = Жг+1/2>, 5^ = {у = 2/г+1/г} соответственно (здесь и ниже в обозначениях сторон мы опускаем очевидные из контекста индексы г, j). Выпишем теперь линейную комбинацию интегральных соотношений баланса по объемам Vij и VV ■ с весовыми множителями θχ и #2: 4 4 0Х 2 / JndSfc + θ2 Σ / ^dS* = *i / f{x,y)dxdy + e2 J f{x,y)dxdy, (2.47) 4 4 где 5 = (J £*, 5' = U S£, a *^n есть поток по направлению внешней к=г fc~x нормали к стороне Sk или Sj^, который берется но контексту как d:Jx или ±Л. Дальнейшая задача состоит в том, чтобы оценить, как поверхностные интегралы в (2.47) могут быть аппроксимированы членами из правой части равенства (2.46). Остановимся для иллюстрации на стороне Si, для которой с помощью формулы Симпсона получаем / Jxdy = ^(JUj-i + 4J"-ij + ^f-ij+i) - dj. Λ( Iх 3 5α
74 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ 90 ду* Аналогично выражаются интегралы по остальным сторонам большой ячейки Vij. Например, для 5г имеем /ι5 Ψ',3-1 go аж4 + 0{h) В то же время можно установить связь с формулой Симпсона и некоей другой квадратурной формулой с параметром Θ: ^ [«J?.xj_t + (6 - 2β)J?_x^ + ejj.,J+1] "Vl 7* -(1_β)Τΐ д? + Ϊ2 W У* е^-1'»'+1]' y[^1,i-1 + (6-20)j|;._1+^1)J._1] ^-i=(l " «JtW-W-i - 2JU-i + "^i J-i) (2.48) <i-o)nf[ hlrPjuizuy^) , ^94^(^,2/,-ι)ΐ „ № +ΐ! ^Γ -Ч.Гб^-ьхн-х]. Теперь аналогично рассмотрим, как члены с полу целыми индексами в правой части (2.46) аппроксимируют интегралы от потоков по сторонам малой ячейки V7 .. Для сторон S[ и S'2 соответственно имеем ^ [^f-iAi-i + (β - 20) jf_1/2i, + ^;_1/2J+1] = -3~(^Γ-1/2,ί-ΐ/2 + *Ji-l/2,j + Ji-l/2,j+l/2) Oh г + "3^ [^Jf~l/2tj-l - Ji-l/2,j-l/2 + (2 - 20) J*.i/2,j
§ 2.2. Интегро-балансные аппроксимации -Jf-iM+i/t + ^-x/2,j+i] = 41 J'dy - VU/2,,· + ^f-i/aj, 75 5 ra4 τχ Vi-l/2j—1fi.< 16-90 Oy* ■O(ft) , (^-1/4) ^ + 0-—-^ hi a*Jx(xi-1/2,Vj) „ . ^ — ^г ' ъм € (2.49) 192 9у4 > -ij.-ч - [2/i-i»i/i+ij> ^ [^Χ,,-Χ/2 + (« " J»)^-1/а + ^U-l/2] + ^Κχ,,-1/2 - J?_1/aJ_1/2 + (2 - 2i)J*,_1/a -•^i/aj-i/a + «JJfгj-i/J = 4 / ^ - ^ij-i/a + tfj-i/i· ^^(giy2)+o(ii)I 4J dz2 12 dx4 ίί, & € [ίΕί-ΐ,Χί+ι]. Анализируя полученные выражения, несложно заметить, что если в (2.46)-(2.49) мы положим θ = |, то правая часть (2.46) будет аппроксимировать (на любой достаточно гладкой функции) левую часть балансного соотношения (2.47) при θχ = | и #2 = 4, т. е. справедливо равенство /' Л- 1 2/г3 Ψί,3-1/2- з (« 5(Δχω + Avta)<j + — (Дя.г*^_1 + AeUij+i + АуЩ-х^ + Ауи<+1^·) S S' — U / /(ж, y)<te(fy -f 4 / /(», y)dztfo/ + -0ij + aj 1 Г1 §hxhv
76 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ = βέτ (Σ Σ *'ffi>j> + Фи + A.i + &,,- J. (2.50) В последней скобке двойная сумма представляет "объединенную" формулу численного интегрирования функции f(x,y) (если она не интегрируется точно) по ячейкам Vij и V(^ ее коэффициенты &',>', квадратурные узлы и пределы изменения индексов мы не конкретизируем, поскольку здесь возможен различный выбор, а их частный вид нас в данном случае не интересует. Величина фг^ есть соответствующая погрешность интегрирования, и мы считаем ф^ — 0(h6), что всегда возможно при достаточной гладкости f(x-)y). Переменная ф^ в (2.50) определена выражением (2.46), и ее отдельные компоненты представляют ошибки квадратурных формул Симпсо- на (2.44); нетрудно проверить, что ф-г^ — 0(h6) при достаточной гладкости функции потока. Наконец, величина φχ^ включает все описанные выше в (2.48), (2.49) погрешности интегрирования по сторонам Sk и S'k: ~ ^f-l/2j + ^f+l/2,J ~ $-1/2 J + $+l/2J ~ ^-1/2 + #,i+l/2· Из вида отдельных слагаемых следует, что при выбранном значении весового множителя все члены со вторыми производными от потоков после несложных преобразований взаимно сокращаются, а при непрерывности четвертых производных оказывается ф^$ ~ 0(h6). Таким образом, отбрасывая в (2.50) все остаточные члены, мы можем сделать вывод о существовании балансной разностной схемы с погрешностью 0(h4), которую запишем в форме -(Δ. + Δ„ + §ΔΧΔΒ + hf2AyAxyitj = ^J2«sf*S- (2·51) Сравнивая это уравнение с аппроксимацией Микеладзе (1.42), легко заметить, что они совпадают при перестановочности операторов Δ^ иД^и выборе соответствующих формул в правой части в (2.51). Надо отметить, что при переходе к уравнениям с переменными коэффициентами реализация рассмотренных балансных аппроксимаций повышенной точности технически существенно усложняется, и несколько другой подход мы опишем в § 2.5.
§ 2.3. Аппроксимации па элементно-ориентированных сетках 77 § 2.3. Аппроксимации на элементно-ориентированных сетках В этом параграфе будут рассмотрены фактически такие же интег- ро-балансные аппроксимации, как и в предыдущем. Главное отличие носит (в некотором смысле) философско-методологический оттенок: что при построении сетки считать первичным - точки (узлы) или ячейки (конечные объемы, элементы). В первом случае {точечно-ориентированные сетки, рассмотренные выше) конструирование сетки предполагает сначала построение множества узлов, а затем - при использовании балансных аппроксимаций - формирование около каждого из них соответствующей ячейки. Альтернативный вариант {элементно-ориентированные сетки) предполагает первоначальное разбиение расчетной области на конечные объемы, после чего внутри каждого из них определяется сеточный узел. Иногда эти различающиеся изначально подходы дают одинаковые итоговые результаты, но могут наблюдаться и существенные отличия. Сеточные методы на элементно-ориентированных сетках сейчас получают все большее распространение и обнаруживают необычные свойства: при ухудшении аппроксимационных свойств в "классическом" смысле они обеспечивают точность 0{h2) даже на неравномерных сетках. Впервые этот факт доказан для одномерных краевых задач в монографии В. В. Смелова [40]. 2.3.1. Аппроксимация одномерного уравнения диффузии. В качестве простейшего примера рассмотрим балансную аппроксимацию одномерного уравнения диффузии (2.1) при т{х) — 0 на элементно- ориентированной сетке. Пусть hi (рис. 5) означает конечный отрезок [я*-1/2» xi+i/2h длина которого имеет то же обозначение, а узел Хг располагается в центре этого отрезка. Х0 ΧίΛ Xii/xXi Xuij2 XN 1 μ 1 1 μ 1 и 1 1 и 1 >- „ a—h0-~ +-ht.r~»-ht-~ ~~h^ b Рис. 5. Одномерная элементно-ориентированная сетка Функцию р{х) мы допускаем на интервале [а,Ь] кусочно-непрерывной, но точки ее разрыва предполагаются расположенными только на границах жг+1/2 = х% + Щ- = ζ;+ι - ^S Zi-1/2 = χί - γ = χί-~ι + ^f1 отрезков hi. При этом в таких точках должны выполняться условия сопряжения
78 ГЛ. В. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ + cfo+ dx = Р «»±1/2 ,du dx *»±l/2 li±l/2 — Ui±l/2> (2.52) где верхние значки "±" означают предельные значения функций справа и слева при стремлении к точкам a^±i/2. Расстояние между соседними узлами определяется очевидным равенством Х{ - Xi-χ — \{h% + /ι*-ι). Точное соотношение баланса на конечном объеме hi принимает вид -р~ ,du dx ч+V dx *i+i/a Hi = | /(SB)lfa. (2.53) ^t-i/a Для получения разностных уравнений в правой части (2.53) проще всего применить квадратурную формулу центральных прямоугольников, которая имеет достаточно высокий - третий - порядок погрешности на функциях f(x) Ε С^Сч)> даже при наличии разрывов в точках Xi+l/3 J f(x)dx = ЫЬ + Ф{, \Ф{\ < ^М(, М/ = тахЦ^У| j. (2.54) «t-1/2 С аппроксимацией левой части балансного соотношения (2.53) дело обстоит несколько сложнее, и для начала мы выпишем приближения для правой и левой производных в точке Xi-t/2'- du+ dx t-1/2 du~ 2 ^ + 4-^2 &)> 6€ki/i,4 dx ί-1/2 = 2- (2.55) £{li € fci-i, £1-1/2]· Чтобы построить уравнения относительно значений решения в узлах, из последних равенств необходимо исключить величину щ^х/2, что мы и сделаем с помощью условий сопряжения (2.52). После подстановки в них (2.55) и несложных преобразований получаем U*-l/2 = τ—ГЪ (aiUi + #-l*i-l ~ -0<-1/2),
§ 2.3. Аппроксимации на элементно-ориентированных сетках 79 сц = Ы ' Рг-Х = —7 ) tli-X (2.56) - _„+ h^if hi-i<fu Отсюда после подстановки Ui_x/2 в (2.55) следует выражение .du+\ п+: efcc t-1/2 =сц(щ -«<_ι/2) -Ρί.χ/2 J^a(6) α<Α i-1 ^ Q£< Л*_х d2u „ (tii -Ui-i)+^i, (2.57) ft-i + Ы(Ри( t Таким же образом с помощью условий сопряжения в точке зс<+1/2 и аналогичных (2.55) аппроксимаций односторонних производных на стыке отрезков hii hi+χ получаем du dx i+l/2 =/?i(«i+I/2 -«,) +Р|+х/2Т^(Й') /ii d2u it,n ^i = а<+х hi d2ur „ («i+x-tiij+^i, (2.58) A_ 4. hi+x<Pu/t ат+&Р'+1/24&2^ ai+x+j8«P<+I/a 4 dx2 l4i+I (fi+x). Наконец, используя (2.54), (2.57) и (2.58), формируем дискретное представление балансного равенства (2.53): -ai+x(iii+i -щ) +сц(иг -«j-χ) = hifi + ipi, а* = otipi iPi-i «i+A-X -, ^i =^i--0i-X + </>[■ (2.59) Отсюда после отбрасывания погрешности аппроксимации получаем итоговое разностное уравнение -αί+1(ν<+χ - Ui) 4- aifa - ν,·_ι) = Л<Д. (2.60) Интересно сравнить полученный результат с "обычным" разностным уравнением, которое получается из балансного соотношения (2.3)
80 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ (при г ξ 0) на точечно-ориентированной элементной сетке, если производные в потоках Ji±i/2 аппроксимировать центральными разностными, а интеграл от f(x) - простейшей квадратурной формулой (на основе кусочно-постоянного представления функции по значениям в точках Х{); — (ν»+ι -Vi) + ΐ—(Vi -Wi-i) = = Λ, (2.60a) имеющей при данной нормировке погрешность 0(h2). Останавливаясь для простоты на непрерывных коэффициентах диффузии, сразу замечаем, что уравнения (2.60) и (2.60а) при равенстве шагов сетки совпадают (с точностью до масштабирования). В противном же случае левые части обоих разностных уравнений по-прежнему одинаковы, но коэффициент при /» в "классическом" уравнении (2.60а), в обозначениях элементно-ориентированной сетки на рис. 5, равен (hi-χ -f 2hi -f Λ<+ι)/4 (вместо h{ в (2.60)). Главное же отличие сравниваемых разностных схем заключается в погрешностях аппроксимаций. Чтобы в этом убедиться, перепишем фг из (2.59) в более наглядном виде +0(/ι3). (2.61) Поскольку величины а; имеют порядок 0(h~1), то нетрудно убедиться, что в общем случае ф{ — 0(h) на неравномерной сетке, даже при гладких коэффициентах р(х). А это означает, что если уравнение (2.59) поделить на /^, т. е. отмасштабировать "обычным" образом, когда разностные коэффициенты становятся порядка 0(h~2), то оказывается, что полученная схема вообще не аппроксимирует исходное уравнение диффузии! Однако величина ф{/Ы при h —> 0 оказывается порядка 0(1), т. е. ограниченной. Это является очень существенным при анализе погрешности разностного решения (имеет значение и специальный вид погрешности φι в (2.61)). Остановимся теперь на особенностях аппроксимации краевых условий при использовании одномерных конечных объемов. Проще всего дело обстоит с условиями Неймана на границе. Если и1 — д в точках а и (или) 6, то в балансных соотношениях (2.52) при г = 0 и (или) N надо соответственно значения — I ^f-, и (или) Щ— I ^ взять точно ах \ χο_ 2 7 \ / αχ \ χΝ+ 2 из краевых условий и перенести их в правую часть. В случае же условий 1-го или 3-го рода применяется подход-с фиктивными точками: решение
§2.3. Аппроксимации на элементно-ориентированных сетках 81 предполагается продолженным на полшага за границы расчетного отрезка и вводятся вспомогательные узлы ar_i = а — ^, £jv+i = Ь + *+1 . Значения решения в граничных точках затем линейно аппроксимируются: ηα = ?=ψ± + G(/i2), wb = Ц*+2Ц"+1 +0(/ι2), и "лишние" переменные u_i, Wiv+i с помощью этих равенств исключаются из нулевого и iV-ro разностных уравнений. 2.3.2. Аппроксимация уравнения Пуассона на прямоугольной элементно-ориентированной сетке. В случае двумерных областей с границами, параллельными координатным осям, техника остается аналогичной, что мы для простоты проиллюстрируем на уравнении Пуассона (1.38) в прямоугольнике. Расчетная область разбивается на прямоугольные ячейки (боксы) Vij со сторонами длиной hfj /ι?, а в качестве узлов выбираются центры этих конечных объемов (рис. 6), координаты которых связаны соотношениями Xi — χ%~\ = \{Щ + ^ί-ι)> ι У h]tl 1 У /»;./ 1 ι t χ Xil χ hi Γ "j l Χι χ hi+i I I I I —., 1 1 X i+i У i*i Уз-ι у*+", Yj-'г Хх-г2 Χι + ι 2 Рис. 6. Прямоугольная элементно-ориентированная сетка Обозначая через xi±l/2 = *г ± γ, Уз±\/2 ~ν3±γ (2.62) координаты сторон бокса V{j} дискретную форму балансного соотношения (2.53) записываем в виде Vj+l/2 /( du I du\ λ Vi-l/2
82 du dx ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Si + l/2 Vj + 1/2 + -1/2 Vj + 1/2 du dy f(x,y)dxdy. (2.63) ж*-1/2 Уз-г/2 Сравнивая полученное равенство с его аналогом на точечно-ориентированной сетке в предыдущих параграфах, можно заметить их формальное совпадение. Различие заключается "только" в смысле обозначений Xi±\/2y Vj±i/2: если ранее это были точки посредине между парами Хг, х%±1 и у^-, 2/jii, то теперь в (2.63) они определяются из (2.62) - на равномерной сетке это одно и то же, но в общем случае имеется отличие. Дискретизация интегрального соотношения баланса (2.63) может быть проведена аналогично одномерному случаю, но в силу сделанных здесь упрощений касательно гладкости решения и (ж, у) процедура может быть сокращена без изменения конечного результата. Все интегралы аппроксимируются формулами центральных прямоугольников, а производные заменяются конечными разностями по близлежащим узлам, в результате чего получаем равенство Щ +л? 2K+l,j ~ Ui,j) , 2(«i,j -Ui-l) Λ?+Λ?+1 hf + hU 2(«i,j+l h?j+h)+1 И nj + nj+i J в котором погрешность аппроксимации записывается в форме, подсказываемой выражением (2.61), а также несложно выводимой из (2.64) путем разложения в ряд Тейлора функций в окрестности узла (xi,yi): Ф*,3 = Φί-1/2 + Фх+\/2 + Φί+1/2 + Φϊ-1/2 + Фз-1/2 + Фз-1/2 + Φί+1/2 + Φί+1/2 + Ψ{J, Фг±1/2 = -^-^^(2:ί±1/2'^)+σ(/ΐ ]' Фз±1/2 Φϊ±1/2 (fef)3 d3U 24 дх2ду (хиУз±1/2)+0(Ь% = ^{±W±i-^)^(«i±1/a,yi) · + I [(hi)2 - ВД±1 + (kf±l)2] ~(Хг±1/2,Уз)) + 0(h4) (2.65)
§ 2.3. Аппроксимации на элементно-ориентированных сетках 83 &±ι/2 = ^-{±(^±1-ЛР^(а!<,»>±1/2) + I [(ftP2 - W±i + W±i)2] 0(«ι. »*и/»)} + «(Л4), Здесь величины ^±1/21 i)j±i/2 суть погрешности формул центральных прямоугольников для вычисления интегралов по сторонам бокса с координатами χ = aCj±i/2, У — Vj±i/2> переменные ^±1/2 i>j±i/2 ~ ошибки приближения производных, стоящих в (2.63) под знаком интеграла, a ipij ~ ошибка квадратурной формулы для интеграла от функции f{x,y) по конечному объему vitj. Если обе части уравнения (2.64) поделить на объем ячейки Vij = ЩЩ, т. е. отмасштабировать к обычному для разностных уравнений виду, то величина ф%,э1ЩЩ окажется в общем случае на неравномерной сетке порядка 0(1), т. е. исходное уравнение Пуассона формально не аппроксимируется, как и уравнение диффузии в предыдущем пункте. Получаемое из (2.64) отбрасыванием погрешности ф^ дискретное уравнение Л? +щ 2(vi+ i,j 2(vy+i- vJj) + 2(««j ■Vi-lj) М + Щ+1 Щ + h»+1 4,j) { 2{vi,j+Vi,j-i) Щ+hU = ЦЦ/и (2.66) в случае равномерной сетки (не обязательно квадратной) совпадает, как легко убедиться, с обычным конечно-разностным и, следовательно, имеет ошибку аппроксимации (при обычной нормировке) порядка О{h2). Построение уравнений для конечных объемов вблизи границы с учетом краевых условий делается по аналогии с одномерным случаем (для условий Дирихле используются фиктивные точки), если граница расчетной области состоит из прямолинейных отрезков, параллельных координатным осям. Если же граница содержит наклонные прямые или криволинейные участики, то надо переходить от прямоугольных сеточных ячеек к более универсальным (в геометрическом смысле) треугольным, что мы и сделаем в следующем параграфе.
84 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ § 2.4. Треугольные конечные объемы Построение треугольной сетки в двумерной области, или, другими словами, разбиение ее на треугольные ячейки, получило название триангуляции области. Это сама по себе достаточно содержательная математическая задача возникла и активно решалась в методах конечных элементов. По этой теме имеется обширная специальная литература (см., например, [2, 21]), но мы такими вопросами заниматься не будем, ограничившись минимально необходимыми по ходу изложения сведениями. Предполагается, что вся область Ω разбита на множество непересекающихся треугольников. Полученная сетка определяется как триединая совокупность треугольных элементов, их вершин и ребер. Каждое ребро или принадлежит двум смежным элементам, или лежит на границе Г расчетной области. Граница Г может быть гладкой или кусочно- гладкой - в последнем случае ее угловые точки обязаны являться узлами сетки. Если какой-то участок границы является криволинейным, то он аппроксимируется ломаной (мы рассматриваем простейший подход). На границу наносятся сначала точки (узлы сетки), которые затем соединяются последовательно прямолинейными отрезками. По этой причине в дальнейшем можно рассматривать только полигональные области, составленные из многогранников. Среди всевозможных треугольных сеток своими положительными качествами выделяется так называемая триангуляция Делоне. Это такое разбиение области на треугольники, что описанная вокруг каждого из них окружность не содержит внутри себя никакого другого узла сетки. Триангуляция Делоне обладает таким важным свойством, что каждый получаемый треугольник полностью покрывается непересекающимися ячейками Дирихле-Вороного, каждая из которых строится вокруг узла сетки путем проведения перпендикуляров через середины ребер (на рис. 7 она представлена заштрихованным шестигранником). Хотя в принципе триангуляция Делоне допускает и наличие тупых углов, мы ограничимся более простым случаем - с точки зрения геометрических построений - остроугольных треугольников. Существенным в данном случае оказывается то, что точка пересечения перпендикуляров к серединам сторон (центр описанной окружности) лежит внутри треугольника и почти все необходимые преобразования могут быть выполнены поэлементно, т. е. независимо на каждом треугольнике, с заключительной "сборкой" локальных величин на последнем этапе, когда непосредственно вычисляются коэффициенты разностных
§ 2.4- Треугольные конечные объемы 85 уравнений для узлов сетки. Рис. 7. Ячейка Дирихле на треугольной сетке Отметим, что в данном случае рассматриваются точечно-ориентированные сетки, когда конечные объемы формируются около первоначально найденных узлов. Ячейки же Дирихле будут играть роль конечных элементов, или боксов. Пусть индекс к означает номер внутреннего узла сетки с координатами (хк>Ук), Vk ~ площадь Dk, т. е. соответствующей ему ячейки Дирихле (бокса), %к ~ количество примыкающих к fc-му узлу треугольников, Si, г = 1,2, ...,ife - стороны ячейки Dk> an- внешнюю нормаль к ячейке. Рассмотрим опять уравнение диффузии вида (2.16), для которого при а ~ 0 (декартова система координат) точное интегральное соотношение баланса на объеме Dk записывается в форме г к JT j ~pds = j /(x, y)dv. (2.67) Обозначим далее через Tj7 j — 1,2, ...,гЛ, треугольники, имеющие своей вершиной к-ж узел, и одного из их представителя с локальными номерами вершин 1, 2, 3 изобразим на рис. 8. Обозначая через J{ = J p^d$ поток через сторону Si и через Vkj ~ Si часть ячейки Vjb, находящуюся в треугольнике Tj, мы можем переписать соотношение (2.67) в виде
86 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Σ J^ Σ / /<*>»)* = Σ л,- (2-68) 3 2A i лг / ч Ό '' \ • N 1 N 7 ^-""" J "---Л 2 3' Рис. 8. К построению локальных балансов Как видно из рисунков, каждая из сторон Si и каждый из объем- чиков ν*,* разбиваются на две части (Si = 5^ + S", Vj^ = V^ 4- V^), принадлежащие разным треугольникам, и соответственно этому разбиваются в (2.68) величины 3% и Д^: Ji = Ji + Jl\ Л.* = Л,* + /*.*- <2·69) Слагаемые Ji и J" уже относятся к отрезкам перпендикуляров к серединам ребер, находящихся в каждом смежном треугольнике Tj, a V^ i и VI*ι - вспомогательные треугольники, на которые делится Tj отрезками, соединяющими центр описанной окружности с его вершинами и серединами сторон. Задачу дискретизации интегрального баланса мы фактически разложили на модули: необходимо аппроксимировать элементарные величины J/, J" и f'ki, /£{, а потом произвести сборку частичных результатов, т. е. суммирование в соответствии с (2.67)-(2.69). В процессе аппроксимации локальных балансов типа (2.67) для всех ячеек Vk, очевидно, к каждому индивидуальному треугольнику Tj будет трехкратное "обращение", последовательно при обработке каждой его вершины. Такой вычислительный процесс целесообразно организовать наоборот, взяв за основу полный анализ каждого треугольного элемента и соотнося при этом вычисляемые величины к узлам сетки, являющимся его вершинами.
§ 2.4· Треугольные конечные объемы 87 При следовании такой поэлементной идеологии для примера на рис. 8 нам необходимо аппроксимировать величины P]^ds> /i,M' = J f(*,v)dv, (2.70) 0,*' δ;,λ,λ' где индексы j и к' означают номера треугольника и точки - середины ребра, противоположного к-й вершине элемента Т,, 0, &' - отрезок длины /0,fe', соединяющий точки с номерами 0и fc', а Δ^*,*/ - "маленький" треугольник, имеющий вершинами центр описанной окружности, один из узлов сетки и середину одного из ребер. Проведем элементарные вычисления, которые не будем чрезмерно формализовать, воспользовавшись обозначениями на рис. 8: Jjv = *о,з Ц—^Pz* + ipj,z>, ^j#3' = i>j,v + VW- (2-71) *12 Погрешности аппроксимации ^з* и ф^1 отвечают соответственно за применение квадратурной формулы односторонних прямоугольников (Φό,ν = О(h2)) и замену нормальной производной центральной разностью (V^-,3' — 0(hz)) с учетом наличия множителя l0$* = 0(h). Естественно, считаем, как и везде, что при сгущении сетки все характерные расстояния между соседними узлами являются величинами одного порядка 0(h). Что касается приближенного вычисления интеграла от функции /(#, у) по площади треугольника Δ^(^, то здесь можно поступить двояким образом. Во-первых, если подынтегральную функцию линейно про- интерполировать по ее значениям в вершинах треугольника Tj с погрешностью О (/г2), а затем точно проинтегрировать билинейную функцию, то ошибка будет порядка 0(h4). Соответствующая формула будет иметь вид fjyk,k' = Σί=ι a*fi + 0(h4), где коэффициенты oti несложно выражаются через координаты вершин треугольников. Во-вторых, можно поступить и проще: положить функцию равной постоянной и тогда будем иметь J f(**v)dv = &awfk+1>t, ψ* = 0(Ιι*), (2.72) что тоже допустимо, поскольку величина ψ- оказывается по порядку не хуже чем if>jty -
88 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Суммируя теперь все частичные интегралы в балансном равенстве (2.63) и отбрасывая получаемую полную погрешность аппроксимации фк, получаем в итоге дискретное балансное уравнение вида ih {Аи)к = ак}кик - ]Г а^кЩ = V* Д, (2.73) к,г где А = {а*^}, и — {ик}у причем коэффициенты ак>{ выражаются простыми формулами *,* <*М = Pk,iSi/lk,U ак,к = 2^ttJk,i (2·74) (p*,t ~ значение р(х,у) в точке, расположенной в середине отрезка lk,i, а правая часть вычислена для простоты в соответствии с (2.72)). Относительно погрешности аппроксимации фк уравнения (2.73) полезно сделать несколько замечаний. Ее величина слагается из компонент, относящихся к разным треугольникам и имеющих зачастую разные знаки, что при суммировании может значительно улучшить конечный результат (до сих пор возможность взаимного сокращения слагаемых мы не учитывали). Если сетка равномерная и все треугольники одинаковые, то поверхностный интеграл по стороне Si будет вычисляться по формуле центральных прямоугольников с ошибкой О (/ι3) - при этом в (2.69) поток Ji не надо разбивать на части J[ и J", что приводит к формуле (2.71), а вместо нее использовать выражение Ji,h ~ Vh.iSi^f^- + 0(h3). Кроме того, в этом случае повышается и порядок погрешности приближенного интегрирования по площади ячейки: если ячейка симметрична относительно ее центра, то легко проверить справедливость соотношения f fdv = Vkfr + 0(h4). Однако в общем случае фк = 0{h2), а это означает, что получаемое из (2.73) разностное уравнение г,к Як,кУк - 5^afc,iVi = Vkfk (2.75) после масштабирования его к "обычному" виду, т. е. деления на площадь Ук — 0(/г2), после чего коэффициенты ак^ становятся порядка
§ 2.4» Треугольные конечные объемы 89 0(/ι~2), перестает формально аппроксимировать исходное дифференциальное уравнение диффузии, так как ipk/Vk = 0(1)- Обнадеживающим при этом является тот факт, что "наихудшие" компоненты погрешности в соседние узлы входят с разными знаками, поскольку на общей стороне Si двух примыкающих боксов поток J; вычисляется одинаково (и с идентичной ошибкой), а в соответствующие балансные соотношения он входит с разными знаками. При решении же разностных уравнений можно надеяться, что осциллирующие вклады погрешностей взаимно "почти" аннулируются. Краевые условия 1-го и 2-го рода в описанном подходе реализуются особенно просто ввиду того, что пересечения ребер сетки с границей всегда являются узлами. Если в граничном узле задано условие Дирихле, то для него аппроксимацию строить совсем не надо, а просто в уравнениях для соседних околограничных узлов заданные значения решения учитываются точно. Для узла, лежащего на стыке двух граничных ребер, на которых заданы условия Неймана, расчетные ячейки формируются только по лежащим внутри области треугольникам, а балансные соотношения включают интеграл от потока на границе, который из краевых условий известен точно. Что касается алгебраических свойств рассматриваемых уравнений вида (2.74), то они легко просматриваются: уравнения являются симметричными (α&τΐ = tti,fc) и имеют положительный тип. Подчеркнем, что описанный принцип построения интегро-баланс- ных разностных уравнений обладает большой универсальностью, так как применим для широкого класса дифференциальных уравнений, краевых условий и конфигураций границы (в том числе для трехмерных областей - в последнем случае роль треугольников играют тетраэдры). Остановимся теперь на таком важном вопросе математической технологии, как формирование алгебраической системы (2.73) на основе упомянутого выше поэлементного подхода. Введем в рассмотрение векторы третьего порядка Г uW ηψ [ ^. , jw = Г Jij) 1 и2 r(i) - "'З где щ , к — 1,2,3, - значения неизвестных в вершинах треугольника Т,-, а Jjf - поток, соответствующий fc-му узлу и вычисляемый через интегралы по отрезкам Ок', Ofc", к1 ψ fc, составляющим часть границы ячейки Дирихле, находящейся в Tj.
90 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Очевидно, что после вычисления локальных потоков по формулам вида (2.70), (2.71) связь между векторами и^3\ J^ может быть записана в виде jU) =л(Л«<Л, А«> = а1Д а1,2 а1,3 a{j) a{j) aU) а2,1 а2,2 а2,3 Лз) (Л О) аЗД а3,2 а3,3 J (2.76) где назовем локальной матрицей баланса. Если А и и - "глобальные" матрица и вектор порядка ЛГ из (2.73), то мы можем записать PjuW = «, А(Л = PjA^P,·, (2.77) где Pj - прямоугольная матрица размера 3 χ iV с одной ненулевой (единичной) компонентой в каждом из трех столбцов, а А^ - "растянутая" до полного размера Ν χ Ν локальная матрица баланса. Очевидно, что из последних и составляется полная матрица системы a = j2AU)> (2-78) з где сумма берется по всем треугольникам сетки. Подчеркнем здесь ту очень простую математически, но чрезвычайно важную технологически сторону представлений (2.76)-(2.78), что они позволяют поэлементно, независимо друг от друга, вычислять коэффициенты локальных матриц баланса и собирать (ассемблировать) из них глобальную матрицу системы. Аналогично по каждому из треугольников Tj можно организовать и накопление величин правых частей сеточных уравнений, в том числе с учетом неоднородных граничных условий 2-го или 3-го рода. В совокупности это значительно облегчает программную реализацию алгоритмов, особенно для сложных краевых задач. § 2.5. Поэлементная аппроксимация на прямоугольной сетке Напомним, что в п. 2.2.2 мы построили на прямоугольной равномерной сетке интегро-балансную аппроксимацию уравнения Пуассона с порядком погрешности 0(h4). Понятно, что такой результат можно получить только для равномерной сетки и постоянных коэффициентов. Однако интересно рассмотреть, как используемая ранее идея линейной
§#.5. Поэлементная аппроксимация на прямоугольной сетке 91 комбинации балансов на больших и малых ячейках может быть эффективной в более общих случаях. 2.5.1. Постановка задачи и обозначения. Рассматривается следующая задача: найти решение уравнения ~к(х{''у)ш) ~h{x{x'y)%) +μη=κχ>ν)' (*·»>6Ω' (2·79) в ограниченной области Ω, состоящей из подобластей Ω^, к = 1,..., Na, в каждой из которых заданы свои положительная константа λ* и гладкие функции μ > О, /. Граница области состоит из внешней и внутренней границ: dil = T\JG. На, внешней границе области Г = r<i(jrn заданы граничные условия в форме . ди (2.80) где р, ае, η - некоторые заданные функции, п - внешняя нормаль к Г. Внутренняя граница состоит из частей: G = \JGki· Каждая Gki есть линия раздела подобластей Ω* и Ω;, т. е. линия разрыва функции λ. Обозначим две стороны границы Gki через Gk и Gi. На внутренних границах выполняются условия сопряжения , ι * ди, ч ди, ,Л Л„х «kHGl. A*^U = A<^U· (2·81) Будем рассматривать такую геометрию области Ω, когда ее граница многосвязна и все участки границы параллельны осям координат. Предположим, что входные данные обеспечивают такую гладкость решения, какая будет требоваться в дальнейшем для существования производных требуемого порядка. Для дискретизации задачи строится неравномерная прямоугольная объемлющая расчетную область Ω сетка Bj+i = жй + Л?, yj+l ^yj + hyp г = Ι,.,.,Μ + 1, j = 1,... ,N -f 1, таким образом, что граница области пересекает сеточные линии только в узлах сетки. Введем вокруг сеточного узла (г, j) два вида элементарных объемов - маленький и большой: Viyj = Li - Л?_х/2 < χ < Xi + /if/2, Vj - h)_j2 <y<yj+ /ι?/21, Vij - |жг-1 < ж < «i+ι» yj-i < У < 2/i+i}·
92 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Рассмотрим линейную комбинацию с весовым параметром ω балансных соотношений по большому и маленькому объемам (для краткости опустим здесь и далее индексы (i,j)): J ξξ ω ί -X^dS + {l-w) ί ~X~dS J an J an s s = ω f(f ~ μη)άΥ + (1 - ω) f (f ~ μν)άΥ, (2.82) где S til ~S - поверхности объемов V и V соответственно. Каждый из объемов Vij и Vij для узла (г, j), не лежащего на границе области, делится координатными линиями %{ иу;· на четыре подобъема У к и Vk соответственно, в каждом из которых функция λ - постоянная. Обозначим ее значение в к-м подобъеме через λ&. Тогда каждый интеграл в (2.82) можно представить в аддитивной форме, например: J ~ Л + J2 + Jz + J4< (2.83) В случае, когда узел лежит на границе области, в рассмотрении участвуют только те части объемов, которые находятся внутри области. Далее рассмотрим аппроксимацию интегралов в одном подобъеме: Vz = |ж; < χ < xi+u Vj <У < Vj+ij, У* = {хг<х<х* + Щ /2, yj<y<yj + hJ/2}, имеющем локальные номера вершин 0, 3, 4, 8 (см. рис. 9). 71 U< к SA Sa и -J 8 53 3 Рис. 9. Элементарные ячейки прямоугольной сетки
§5.5. Поэлементная аппроксимация на прямоугольной сетке 93 2.5.2. Методы аппроксимации интегралов. Для построения различных аппроксимаций используем квадратурные формулы центральных прямоугольников и трапеций: \{uij - u<+i,j) = I Jx(x,yj)dx = hiJf+1/2ii+^,-+i/2j = |(J^ + J^1,i)+^+1/2,j, где остаточные члены представлены следующими соотношениями: #u/2J = A^Jix(f',W), tf+i/2j = -Ay|J:x(f",Vi), *',*" e [^,*<+i]· Рассмотрим подробнее для примера аппроксимацию ж-проекции потока J3 вокруг узла 0: Vj + l/2 Vj + 1 Аппроксимируя здесь второй интеграл по формуле трапеций, а первый - по формуле центральных прямоугольников, с использованием легко проверяемого по ряду Тейлора представления «W/2JH/4 = i(3<+l/2,i +<K/2,j + l) - ^КЛ/2,,+1/4 + °(^3) получаем следующее выражение: Ji = "4 ω(3«"+1/2,,· + <+1/2,i+i)+4(l - w)(uf+1J + u?+1J+1) I +^ + 0(Λ4), (2-85) где величина ф^ имеет третий порядок: hl '24U'*+1/2.J+l/4· ^ = -Аз^«?Л/2.л-1/4· С2·86) Для повышения порядка погрешности на единицу вместо аппроксимации Jg будем приближать выражение
94 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Wi + l/2 3%=-\Λω J [ux(xi+1/2ly) -их(хг,уЦау Уз Уз + ι +(1-ω) J [u'(zi+i,y)-u*(zuy)]dy\. (2.87) Уз Очевидно, что если мы аналогично определим величину J^-λΙω I \yy{x,ya+i/2) -иу(х,у,)]ах Xi +(1-ω) J [u»(x,yJ+l) -«»(*,%)]dzj, (2.88) то сумма 7з = Jf -l· J^ будет представлять линейную комбинацию полных потоков через границы подобъемов Уз и VV Отметим также, что в силу условий сопряжения (2.81) суммы потоков J* и J* равны между собой, т. е. в дополнение к (2.83) справедливо равенство J = Л + J2 + J3 + J4. (2.89) Легко заметить теперь, что если мы будем аппроксимировать 3ξ, Jj' аналогично (2.84), то члены третьего порядка малости вида (2.86) взаимно уничтожатся и полученные выражения J$h} J% будут иметь погрешности О (/ι4). Далее легко установить, что если мы определим величины Чh = -Д3 у ΗΚ+1/2„· + «f+1/2J+l) +4(1 - «)(tif+li,· + <+1,J+1 + ufj + <J+1)], (2.90) hx г ^ = ~λ3"8"ίω(Κί+ι/2 +uf+i,J+i/2) +4(1 - ω)«10. + «V+1) .+1 + tt» . + и*)], (2.91) получаемые формально добавлением к ]ξΗ и J$h удвоенных членов 2/j-fi Xi+i квадратурных формул для интегралов / ux(xi,y)dy я f uy(x>yj)dx • Уз ае*
§ 2.5. Поэлементная аппроксимация на прямоугольной сетке 95 соответственно, то для их сумм JJ — J£h + J%h справедливо, опять же вследствие условий сопряжения, соотношение J = j* + j* + j* + J* + 0(h4). (2.92) В выражениях (2.90), (2.91) теперь надо аппроксимировать производные. Используя для этого формулы центральных прямоугольников и трапеций, получаем 4=JZh + Jt + i>3 hi = λ8{ щ hi (Z(Uij - Щ+ij) + Uij+i - Ui+ij + i) + -φ(4^ίί - Ui,j+i) + Ui+x,j - Ui+i,j+i) + {1-ω) ti! (Uij - «i+ij +«i,j+i - «j+ij+i) + J^(UH ~ uiJ+l + «i+lj ~ «i+l,j+l) ]} +%(ν1 ~~ τ)(ω° ~MiJ+l)+ (x ~ τ)(Ui+1J' ~ω<+1·>+ι))}»(293) где погрешность аппроксимации *» = τ(Ιω~1)ΛίΛ?(Μ?5*^+"ί3Ι'^)+σ(Λ4)· (2'94) Как видно, ошибка аппроксимации будет величиной О (Л4) только при единственном значении весового параметра ω — |, которое также обеспечивает четвертый порядок аппроксимации полного потока J = Jf + /J + jf + J? + 0(h*). Рассмотрим теперь аппроксимацию правой части балансного соотношения (2.82), которую также представим в виде суммы слагаемых по подобъемам W 9Η = ίΗ-{μη)Η = Σ№-{μη)ϊ}. fc^l
96 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ Остановимся подробнее на представлении выражения для </з, которое получаем путем применения формул центральных прямоугольников для интегралов по ячейкам Уз и 7з, а также последующей линейной интерполяции значений функций в их центрах по соответствующим узловым величинам: h?hy ( + ^Т~ [(/ ~ 'lu)i+1^ + tf " /*«)i,j+i] } + -03 . (2.95) где -03 = 0(h4) для любого параметра ω. Отсюда для полной погрешности аппроксимации правой части имеем четвертый порядок. 2.5.3. Основные свойства алгебраической системы. Суммируя, наконец, для всех подобъемов выражения вида (2.80), (2.91), (2.95), получаем итоговую аппроксимацию для интегрального соотношения (2.82), которую запишем с использованием локальной нумерации узлов на рис. 9: {Au)i}j ξ (а0и0 - Y^akuk J = /^ + 0{h*), (2.96) где ак = α£ + α^, а отдельные коэффициенты описываются следующими формулами: aJo = Σ α£ = (l - I") (AiBJIm-i + >*KU + Х*Щл + Л4ВД J· a{ = X2H^x1. + X3Hyf, а( = X>H?f + XiHfllj, (2.97) «ί = А4ВД j (l - |«) . «ί = *i*J-Vi (l - L), α7' = λ2Β?;»_1 (l - ^), a? = \zBf* (l - \u>j, ao = ^^i,j{hj + fcjf-i)(ht + fci_i), я ι / r l , 8 — 7ω ax = -hi-i{hj + /ij_i)—-—M«-i,j»
§ 2.5. Поэлементная аппроксимация на прямоугольной сетке 97 αξ = -hi(hj + Λ,·_ι)—-—Mi+i.j, (2.98) α2 = -hj-i^hj + ftj-i) ——Mij-i, н L /г τ 48~-7ω Правую часть уравнения (2.96) можно записать в виде 4 если при этом в формуле (2.95) для а^ положить предварительно Mi,j ξ 1. Отметим, что построенная таким образом система уравнений (2.96) на равномерной сетке совпадает после деления на величину (4 — 3ω)Η2 при А — 1 со схемой Микеладзе (1.43), а также с эквивалентной ей интегро-балансной аппроксимацией (2.50), которые обе имеют погрешность аппроксимации 0(й4). Здесь необходимо подчеркнуть, во избежание путаницы, что система уравнений (2.94) отнормирована так, что ее коэффициенты имеют порядок 0(1), в то время как у непосредственных аппроксимаций (1.43), (2.50) для уравнения Пуассона они составляют величины 0(h~2). Поэтому у системы (2.96), после перенормировки ее к "стандартному" разностному виду путем деления на коэффициент порядка 0(h2), погрешность аппроксимации становится порядка 0(h2). Кроме того, легко заметить, что при весовом параметре ω = ~ и λ = 1, μ = 0 схема (2.96) совпадает, с точностью до множителя, с обычной пятиточечной разностной схемой (1.39) для уравнения Пуассона, так как в этом случае а$ — αβ = αγ = α$ — 0. Обратимся теперь к вопросу об учете краевых условий. Если (*, J)-h узел является граничным с условием Дирихле, то для него сеточное уравнение не строится, а известное значение u^j — gij подставляется в уравнения для соседних внутренних узлов и переносится в соответствующие правые части. Рассмотрим учет граничного условия 3-го рода на примере, когда оно задано на сеточном ребре (0-4), т. е. подобьем V4 — {жг_1 < χ < хг·, yj <y < 2/j+i} является внешним. При выводе уравнений (2.96) мы использовали условия сопряжения (2.81) для аннулирования "избыточных" членов с производными
98 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ на смежных сторонах соседних ячеек. В рассматриваемом случае эти члены не аннулируются и имеют вид J04 - λ3 ^ [ш(3и^ + ulj+1) + 8(1 - ш)и^ + ulj+1]. Это выражение в силу условия (2.80) можно привести к форме </о4 = λ~ jw[3(aeu - 7)o+(aeu - 7)4] 4-8(1 - и>)[(аеи - 7)о + («u - 7)4]}, (2.99) причем без внесения какой-либо дополнительной погрешности. Теперь для учета краевого условия в левую часть уравнения (2.96) надо добавить члены с Uk из (2.99), а в правую - члены с 7ft· Естественно при этом, что в формуле (2.92) член 3\ должен отсутствовать (формально для этого в выражениях (2.97) можно положить λ4 = 0). Получаемую итоговую матрицу системы (2.96) можно представить в форме Α = Α3Λ-ΑΗ + ΑΝ, (2.100) где матрицы А3 + Ан составляются из коэффициетов а£ и а^ из (2.97), (2.98), отвечающих соответственно за аппроксимацию потоков и "гель- мгольцовского" члена μη, а матрица ΑΝ обусловлена модификациями при учете граничных условий 3-го рода. Отметим, что в методах конечных элементов аналоги матриц А3 и Ан называются глобальными матрицами жесткости и масс. Мы же будем называть соответственно матрицами потоков и источников, а суммарную матрицу А - глобальной матрицей баланса. 2.5.4. Локальные матрицы и технология сборки алгебраической системы. Остановимся теперь на поэлементной технологии формирования рассмотренных сеточных уравнений. Введем в подобъеме Уз локальные векторы решения, потока и правой части «(»>={«»}, J<»>= {·#>}, /(3)={/f}, * = {0,3,4,8}. Здесь верхний индекс обозначает номер подобъема, компонента J^ есть поток вокруг к-го узла подобъема, причем компонента потока Jq } определяется при помощи (2.93). (з) Каждая компонента 7^ есть линейная форма неизвестных значе- ний Uk- Например, компонента J% } после аппроксимации представима
§5.5. Поэлементная аппроксимация на прямоугольной сетке 99 в следующем виде: J3 — а^и0 + азз^з + аз4^4 + азе^8· Тогда поток в сеточной ячейке можно записать в векторной форме 7<8> = Αί«<8\ (2.101) где А{ — {a>ij} есть симметричная квадратная матрица четвертого порядка: («00 Лоз «04 «08 \ азо а33 а34 а38 (2 а4о «43 . «44 «48 I «80 «83 «84 «88 / с элементами, определяемыми из (2.93) и представляемыми следующими формулами (с учетом симметричности матрицы): «оо - Аз (l- ^W, «08 - λ8 (ΐ- γ)***;?, 8 J,t ' (2.104) _ \ гту.я rt _ \ rxx.y (2.103) а0з — A3^j(i > «04 — Аз-п^. , «33 — «44 — «88 — «00, «34 = «08 > «38 = «04, «48 = «03? где используются обозначения как в (2.97). Выражения для компонент локального вектора правой части выписываются из представления (2.95) следующим образом: з _ w 8 - 7ω /о — "g/ij Η jg—(/*+i,j + /t,j+i)) /3_ω 8 - 7ω /з — g"/*+i,i "· Jg—l/ij + /i+i,j+i)> 3_ω 8 - 7ω /4 — "g/M + l + Jg—U«j +/*+l.J+lJ» /3_ω 8 - 7ω /δ — "g/i+l,j+l ^ j^—l/<+l,j + /*,j+l)· Аналогично можно ввести для каждого подобъема V/ соответствующие векторы иУЧ7 и выписать представление jW = Afu^K Это представление получено после аппроксимации балансного соотношения в одной ячейке сетки, т. е."локально", поэтому назовем матрицу Af локальной матрицей потоков. Очевидно, что аналогично рассмотрению (2.77) для треугольных конечных объемов мы можем связать каждую локальную матрицу потоков Af с соответствующей "глобальной" матрицей AJ порядка N путем введения соответствий
100 ГЛ. 2. МЕТОДЫ КОНЕ ЧНЫХ ОБ ЪЕМОВ ч = Ркч(к\ Af=PfkAfPk, AJ = Y^Ai, (2.105) ζ где Р^ - прямоугольная матрица размера 4 χ Ν с одной ненулевой (единичной) компонентой в каждом столбце, Af - "растянутая" локальная матрица потоков порядка Ν χ ЛГ, а суммирование проводится по всем ячейкам сетки К/. Очень важно, что элементы локальных матриц потоков Af могут вычисляться в каждом подобъеме независимо друг от друга (а при желании - и параллельно), после чего сборка глобальной матрицы А3 проводится путем простого последовательного накопительного суммирования с помощью формул (aokj — (ao,o)i,j + (аз,з)г-1Л + (a4,4)i,j-i + (a8(8)i-i,j-i> (ai)i,j = (ао,з)*„7 + (a4,8)i,j-i> {a{)ij = (a0,4)t,j + (a3,8)i-i,j> (2.106) {a7)ij = (oo,e)i,j_i, {a%)ij = (°o,8)i,i· Отметим, что в методах конечных элементов аналог матрицы Af называется локальной матрицей жесткости, а процесс формирования "большой" матрицы А3 по формулам вида (2.99), (2.100) - сборкой, или ассемблированием, глобальной матрицы. По аналогии с Af можно ввести локальную матрицу Af четвертого порядка, элементы которой в аналогичных с (2.99) обозначениях на основании выражения (2.93) могут быть записаны следующими формулами: 16 ( М' = 0,3,4,8; кфк\ <8 = α£0 = α£4 = β£, = 0. *М = -ήρωμΛ, a£fe, = -^-(8 - 7ω)μν, Сборка элементов а% глобальной матрицы из afk, проводится совершенно аналогично формулам (2.106). Поскольку в задачах математической физики член дифференциального уравнения μη имеет смысл источника субстанции (тепла или массы - в задачах теплопроводности или диффузии), то матрицы Af и Ан мы будем называть локальной и глобальной матрицами источника. Напомним, что их прототипами в методах конечных элементов являются матрицы масс. Наконец, в околограничных объемах V^ у которых хотя бы на одном сеточном ребре задано краевое условие 3-го рода, можно определить
§ 2.5. Поэлементная аппроксимация на прямоугольной сетке 101 локальную матрицу i4f, ненулевые элементы которой (все пропорциональные значениям аэ в каких-то граничных точках) можно определить с помощью формулы (2.99), из совокупности которых аналогично (2.105) формируется глобальная матрица AN из (2.100). Суммарную матрицу Αι — Af + Af + Af будем называть локальной матрицей баланса. Отметим еще, что аналогично поэлементной сборке матрицы системы легко вычисляются и компоненты правых частей уравнений, причем здесь удобно используется матрица источников. А именно, если ввести локальные векторы /£ ' — {/£, /£,/^, /£} (здесь верхний индекс, в отличие от k в (2.95), означает локальный номер узла, т. е. /£ равно /J1 из (2.95) и /(3) равно /о, /з? Л, Л)? то между ними можно установить связь Рассмотренный поэлементный подход совершенно аналогично переносится на трехмерные смешанные краевые задачи. При этом для значения весового параметра ω ~ Щ получается схема с погрешностью порядка 0(h2) (при "стандартной" нормировке уравнений с порядком разностных коэффициентов 0(h~2)), при ω = |γ следует схема О(h4) вида (1.54), а при остальных значениях ω локальная погрешность есть величина 0(h), причем для ω — ^| имеем обычную семиточечную схему вида (1.52). Естественно, в силу увеличения размерности технические выкладки существенно усложняются по сравнению с двумерным случаем, поэтому в трехмерных задачах особенно эффективно использование сборки глобальной матрицы баланса путем вычисления локальных матриц потоков, источников и краевых условий 3-го рода. 2.5.5. Аппроксимация уравнения диффузии с переменными коэффициентами. Рассмотренные выше методы конечных объемов существенно использовали постоянство коэффициента диффузии в пределах одной ячейки (элемента) сетки. В принципе применяемые подходы приближения интегралов могут быть использованы и для аппроксимации дифференциальных уравнений с переменными коэффициентами, в том числе диффузионно-конвективного типа (1.70). В данном случае возникают следующие ключевые вопросы: можно ли построить на поэлементном подходе метода конечных объемов схему четвертого порядка на равномерной сетке и удастся ли при этом для исходной самосопряженной задачи получить симметричную алгебраическую систему сеточных уравнений? Пока эти вопросы требуют дополнительных исследований. Приведем параметрическое семейство девятиточечных уравнений,
102 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ которое формально является обобщением схемы (2.96) на случай переменных коэффициентов диффузии в уравнении L.u + Lyu = -^ (Pg) - Ι (*!) = /(*, У)- (2Ю7) Анализ аппроксимационных свойств получаемой системы мы не проводим в силу его громоздкости при неравномерности шагов сетки к*,}гУ В случае же постоянства шагов hx, hy предлагаемая система совпадает с компактной схемой (1.79) и ее модификациями, связанными с заменами разностных операторов L^x,Liy на L^x,L^yi которые имеют погрешность аппроксимации 0(h*). Пусть одномерные разностные операторы на равномерной сетке определены в соответствии с формулами (1.77), (1.86) (индекс к для краткости будем опускать) и удовлетворяют аппроксимационному свойству вида (1.73): {Lxu)iJ = ^[Pi+l/2,j(Wttj -tt»+l,i) +Pi-l/2,i(«i,i -tti_i,,-)j, lr {2'108) (Liu)iJ = ^2 [4,J+l/2(«itj - «i,j+l) + iitj-l/2(«tj ~ «irf-l)] ■ Здесь коэффициенты fii±i/2, Qi,j ±1/2 определяются по формулам вида (1.78) при α — b — 0 или же совпадают с ^±1/2 *» Я{ j±i/2 из (1-85), (1.89), т. е. могут иметь разные модификации. Тогда девятиточечная аппроксимация диффузионного уравнения (2.107) записывается в форме Thii - ГЛ«Д.ГА« ^xTh^Thn yTh^rh*i Ь и rr Ьхи + Ьуи- —Lx-hyu-j^Ly-Lxu =>-ϊΝ-ϊΗ=/Λ (2ΐο9) где последний член левой части, например, имеет вид X [PtH-l/2,j(^,j - «i+l,j) +Pi-l/2j{UiJ - «t-lti)j &.J+1/2 Г~ / ч , - , Л &.J-1/2 ft,i-i
§ 2.5. Поэлементном аппроксимация на прямоугольной сетке 103 а предпоследний определяется аналогично. Отметим, что в формулах (2.108)-(2.110) величины с целыми индексами вида Pi,jyqij означают Р(я*, %), q(xu Уз)· В соответствии с локальной нумерацией узлов на рис. 9 разностную схему (2.108) можно записать в покомпонентном виде 8 {Lhu)ij = αο,ί,,^ο - Σ α*.·'Λ«* = fL· (2-m) где разностные коэффициенты имеют вид _ Pi-l/2,j Л ft.j+1/2 + &.J+1/2 _ gt-l,j+l/2 + 4i-lJ-l/2 h*\ a±M ' hi V 12«w 12Λ-υ Λ^' _ gtj-l/2 Л Pt+l/2j + Pi-l/2,j Pt+1/2J-l + Pi-l/2,j~l fay λ a2,i,i ~ ** V lift J «gu-i 4/' ft+l/2,j Λ __ gf,j+l/2 + giJ-1/2 _ ft+l.j+1/2 + gi+l,j-l/2 ^\ _ gi,j+l/2 Λ _ ft+l/2,j +Pi-l/2,j _ ft+l/2,j+l + ft~l/2,j+l ^|\ ^ V 12ft j 12ft j+i ^/' ■<J ~ й V w^> + 5^Гч J' (2'112) _1_ /ft-l/2jg»~l,j-l/2 gt,j-l/2ft-l/2j-l\ ^ 12 V ft-ij*> fta-ifc2 A „ 1 /ft+l/2J<?i-fl,j~l/2 gi,j-l/2ft+l/2,j-l\ "^ 12 V ft+i>2y + ftj-ιΛΪ /' - JL {Pi+l/*.iGi+l,J+l/2 , Pi+l/2,j+l/2gj,j4 1/2 \ <J " 12 V Pi+ijh» + qtj+ihl )' (I4 as «8 a0,ij = al,*,j + ■■■ + aS,i,j- Возвращаясь теперь к методу конечных объемов, проведем аппроксимацию интегрального соотношения баланса (2.82), в котором полагаем μ = 0, а нормальные компоненты потока на границе — А|^ заменяем на величины ±р§^, ^Щ ПРИ интегрировании соответственно по вертикальным или горизонтальным сторонам ячеек. Ввиду громоздкости получаемого выражения в целом выпишем только "парциальную" составляющую потока J% = JqJj по подобъемам Уз и V$ в окрестности 0-й точки, являющуюся формальным обобщением формулы (2.93):
104 ГЛ. 2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ , Λ Qi,j+i/2 f Λ Pi+l,j JJ л? +Pt+l/2,j+l ~ 1 QU hi Го- / \ , - Pi+1/2,, 1 P*+i,j /! ч ί hj - ΓΡ«+1/2, -(l-«)(^+i/a[— Г&^'+1/2, ν , &+1.J+1/2, vfl Pi+l/2,j WJ -«i,j+l) + — («i+Lj-^i+lJ+lJ >· Μ rqj,j+1/ Если таким же образом выписать выражения для «/£/,·, fc = 3,4,8, то по аналогии с (2.101), (2.102) можно определить элементы akyi локальной матрицы баланса A$tij, которая в данном случае будет несимметричной: , ,Ί , Л / Ц & J+l/2 /if &+l,j+l/2 \ ао, "0,4 - 2i,J+l/2 , (l u)(hVj*tj+1/2 М*±Ы± I (1 u)(h"^1/2,j ^fe+1/a*J· Λί ft,i+i о: аз',0 - Pi+l/2J a0,8 - I TiPi+l/2,j+l ~~ + Tyft+l.J+1/2-- "j i>i,J /J
»й 3,8 — Qi+l,j+l/2 § 2.5. Поэлементная аппроксимация на прямоугольной сетке 105 [(1 ц)(k' ^+1/2'' + 1 _ ^Р'+1/2,Л1; \ft? Ptj+i ft* 9i,j /J' i,i _ /fcL ft+W+i/a , Μ ft+w+iW, 7 \ «8,o - ^^/^-^r + ^*J+I/'"i^~Jl1"8,,'J* (K gi+1)J+i/2 ftj ft+wV. 7 \ W (ЪЩ_ _ ty Pi+l/2,j + l λ [8 V ft" ft" Φ+ι,,·+ι / -(1 - ω)[ j-y — , \ftj Pi+l,j ftj ?i+l,j+l /J L8 V ft? ftf Φ+υ / I (1 u) ( ^Χ A+1/2'J' fe'* ^+VaJ+1 X\ \ftf 9t+i,j ftj Pi+i.j+i /J' [W / ft? _ ftrgi+l,j+l/2\ L» V ftf ft? Pi+u+i J +(1_w)(g*^_g*i±i^i 8 V К h) PiJ J + (1 u)(hVj ^i+1J+1/2 _ ^ gi+lj+l/2 ^ Φ^·+1/2\1 Vftf ft+l,i ftj ft+l,j ft^ i?i,J /J' 8,3 - fc+l,j + l/2 *J _ '4,8 — Pi-H/2,j+l a8,4 = Pi+l/2,j a. o,o — ,»,J _ „*.J ,lrf *,J ao,3 + «ο^ *r «o,8> α3)3 а* ц — «3 0 ^ "3,4 ^ u3,8> *J αϊ-ή + a£3 + a; 24,8' ^8,8 28,0 x8,3 4- ai 8,4' "4,4 - "4,0 По аналогии с формулами (2.108) сборка элементов глобальной матрицы в данном несимметричном случае производится с помощью следующих соотношений: ao,ij = aft + a* £* + al'J4 x + aj lj l aM,j z3,0 ^0,0 + a. '''З.З 8,4 J Λ4,4 u3,i,j *8,8 ^0,3 + «: '4,8 » (2.113)
106 ГЛ.2. МЕТОДЫ КОНЕЧНЫХ ОБЪЕМОВ _ j j — j_ 2 — 1 ι — 1 _, ΐ ή % Χ 4 a>2,ij = «4>0 4- α83 ' ί a>4,ij — αο',4 + α3,8 ' > tt5,t,> — ^3,4 ' » ^6,bJ = α8,0 ' » ^7,t,j ~ ^4,3 » ^8,t,j Получаемая при этом матрица Lh — {o>k,i,j} отличается масштабирующим множителем (1 - f u;)(/i? +/if_1)(/ij + ^_i) от матрицы системы разностных уравнений, получаемых из непосредственной аппроксимации дифференциального уравнения, В частности, коэффициенты Q>ktij из (2.110) в случае равномерной сетки после деления на множитель (4 — 3u>)/i^/i^ совпадают с коэффициентом a,k,i,j компактной разностной схемы (2.108)-(2.111), имеющей погрешность О (/ι4). Однако открытым остается вопрос, будет ли аппроксимация с коэффициентами (2.111)- (2.113) иметь преимущество перед "традиционной" разностной схемой на неравномерной сетке. Л0,8*
ГЛАВА 3 АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Изучив построение сеточных уравнений и приступая к исследованию их свойств или методов решения, мы предварительно уделим внимание установлению алгебраической терминологии и ознакомимся - главным образом без доказательств, которые можно найти в специальной литературе, - с основными положениями теории матриц (см., например, [1, 6, 7, 12, 43, 46]). Последующие главы фактически являются специальными разделами вычислительной алгебры. В силу происхождения исследуемых систем уравнений все рассматриваемые матрицы и векторы предполагаем вещественными. § 3.1. Матричные структуры сеточных операторов Понятие разностного оператора мы уже применяли в предыдущих главах, не давая его формального определения. Очевидно, что под этим подразумевается преобразование одной сеточной функции в другую, причем области их определения, т. е. множества узлов сетки, могут отличаться. Поскольку сеточная функция является совокупностью значений (чисел) в узлах сетки, то на алгебраическом языке она представляет собой вектор с размерностью, равной количеству узлов. При конечных величинах шагов сетки и ограниченных расчетных областях (а именно такие случаи мы и рассматриваем) множество определенных на сетке векторов образует конечномерное пространство. А так как любое линейное преобразование в конечномерном пространстве представляется матрицей, то понятия линейного разностного оператора и матрицы мы считаем эквивалентными (с точностью до упорядочения узлов и соответствующих значений сеточных функций). И поэтому, естественно, анализ сеточных уравнений будем проводить с помощью классического аппарата линейной алгебры, не затемняя существа дела новой терминологией и специальной техникой. .
108 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ 3.1.1. Одномерные задачи. Рассмотрим систему трехточечных разностных уравнений вида (1.29), аппроксимирующих дифференциальное уравнение второго порядка на сетке с N внутренними узлами, дополненную граничными равенствами (1.57), соответствующими краевым условиям Дирихле. Вводя векторы-столбцы из N + 2 компонент V — (Voi«li—jWjV)VJV+l)'j /= (/oi/li—i/jVj/jV+l)'j где в данном случае f0 — иа, /jv+ι = Щ> а штрихи здесь и далее означают транспонирование, такую систему можно записать в форме Лй = / (3.1) с трехдиагональной матрицей 10 0 —a bi —c\ bi —a-N bN 0 0 -Cjv 1 (3.2) В силу тривиальности первого и последнего уравнений переменные υο, г>лг+1 из системы (3.1) можно исключить, после чего получаем новую систему: Αν = -02 -ь2 -c2 -ajv-i &iV~l —Сдг-1 -алг Ьлг = / = Vl «2 ftf-l ViV J ' /ι +ахиа 1 /2 /jv-i . Лг +cjvitft (3.3) теперь уже N-ro порядка, равного числу внутренних узлов. Матрица А в определенном смысле "хуже" А, так как она, например, заведомо
§ 3.1. Матричные структуры сеточных операторов 109 несимметрична. И в дальнейшем мы всегда будем рассматривать системы, получаемые после исключения граничных условий 1-го рода. Определение 3.1. Матрица А называется разложимой, если одноименными перестановками строк и столбцов она сводится к блоч- по-треугольному виду А = Ρ АР' Ац Αχ2 0 А22 с квадратными матрицами Ац, А22'} β противном случае матрица называтеся неразложимой. Здесь Ρ обозначает матрицу перестановок, имеющую на каждой строке и в каждом столбце только по одному ненулевому элементу, равному единице (напомним, что такая матрица является ортогональной, т. е. Р' = Р~г). Введенное понятие имеет тот простой смысл, что система уравнений с разложимой матрицей приводится к блочному виду 0 Аг2 V2 Л Л, что эквивалентно решению подсистем A22V2 = /г? Αχχνι = Д - А\2Щ^ свойства которых могут изучаться отдельно. Таким образом, исследование неразложимых систем фактически не является ограничением общности, и именно на таких задачах мы и будем останавливаться в дальнейшем. Определение 3.2. Матрица А — {а*,/} обладает свойством диагонального преобладания, если N |а^|>У>м1> к = 1,2,...,ЛГ, 1 = 1 (3.4) причем хотя бы для одного к неравенство является строгим. Замечание 3.1. Данное свойство можно было бы назвать более конкретно - диагональное преобладание по строкам, так как аналогично можно определить диагональное преобладание по столбцам, изменив только индекс суммирования в (3.4). Кроме введенного используется понятие строгого диагонального преобладания (гораздо реже встречающегося в разностных методах, когда модуль каждого диагонального элемента строго больше суммы модулей остальных элементов своей строки (или столбца)).
110 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Две только что введенные матричные характеристики позволяют сформулировать результат, весьма актуальный для разностных уравнений вследствие его широкой и очень простой применимости. Теорема 3.1 (Тауски). Если матрица неразложима и обладает свойством диагонального преобладания, то она невырождена. Для трехдиагональной матрицы из (3.2) свойство диагонального преобладания выглядит особенно просто: Ы> lail + lcil, i = l,2,...,i\r, (здесь предполагается αϊ = Cn — 0, причем хотя бы для одного г неравенство должно быть строгим), а неразложимость означает отсутствие в ней нулевых коэффициентов а«, с,·. Если они определяются в разностных уравнениях формулами (1.30) из гл. 1, то оба эти свойства выполняются при Pi±i/2t *Ί* > 0 и достаточно малом шаге сетки h (точнее, при q{ <Pi+x/2/h). Важным частным случаем трехдиагональных матриц являются якобиевые, у которых симметрично расположенные элементы имеют одинаковые знаки (а*с»_1 > 0). Для этих матриц существует такое преобразование подобия с диагональной матрицей Т, что подобная матрица А = Т~гАТ является симметричной. Элементы диагональной матрицы легко находятся из рекуррентных соотношений: A^T-'AT^A', T = diag{ti}, i<+i=ii(oi+1/ci)1/2l < = Ι,.,.,ΛΓ— 1, (величину ίι можно положить равной единице). Так как подобные матрицы имеют одинаковые собственные числа, а симметричные обладают вещественным спектром, то последнее свойство относится и к яко- биевым матрицам. Аналогично введенному нами ранее определению монотонных систем уравнений вводится следующее понятие. Определение 3.3. Матрица А называется монотонной, если она невырождена, а обратная к ней матрица неотрицательна (А"1 > 0, где неравенство понимается поэлементно). Связь с определением 1.4 легко усматривается из того, что если система Αν — / с монотонной матрицей имеет неотрицательный вектор правой части, то вследствие равенства υ — Л"1/ решение ν также является неотрицательным. Построение монотонных разностных схем (у которых матрицы систем монотонны) особенно естественно в тех случаях, когда исходная задача из физических соображений не может в принципе
§3.1. Матричные структуры сеточных операторов 111 иметь отрицательных решений - например, функция плотности какой- либо субстанции: при неотрицательной правой части и численное решение будет неотрицательным. Важным подклассом монотонных матриц является следующий (сравни с определением 1.3). Определение 3.4. Матрица называется матрицей положительного типа, если она неразложима, обладает свойством диагонального преобладания, имеет положительные диагональные и неположительные внедиагональные элементы. Для трехдиагональных матриц эти условия вырождаются в неравенства, несколько более жесткие, чем (1.31) (условие неразложимости требует дополнительно строгой положительности величин а^, с*): bi,al,ci > О, bi > аг + с^. Доказательство монотонности матрицы положительного типа легко осуществимо с помощью представления А = D — С, D = diagia*^}, где D и С - неотрицательные матрицы. Поскольку из теоремы Тауски следуют невырожденность А и неравенство для собственных чисел \X(D~1C)\ < 1 (по поводу последнего см. доказательство теоремы б.З в гл. б), то мы можем записать А"1 = (/ - D^C)"^-1 = [I + D~lC + (D^C)2 + ...JIT1- Так как степенной матричный ряд в квадратных скобках сходится, то неотрицательность матрицы Л-1 следует из того, что она предста- вима в виде произведения двух неотрицательных матриц. Определение 3.5. Матрица А = {aij} называется Μ-матрицей, если она монотонна и имеет неположительные внедиагональные элементы, т. е. a^j < 0 при г -ф- j. Очевидно, что класс матриц положительного типа уже, чем класс М- матриц, так как у последних необязательно диагональное преобладание. Если сумма матриц положительного типа есть матрица положительного типа, то сумма М-матриц не обязана быть М-матрицей. Полезно также заметить, что если произведение монотонных матриц есть монотонная матрица, то при перемножении М-матриц или матриц положительного типа их изначальные свойства не сохраняются. Определение 3.6. Симметричная Μ-матрица называется матрицей Стилтъеса. Несложно показать, что у М-матрицы все диагональные элементы положительны (поскольку скалярное произведение k-й строки матрицы А на 1-й столбец матрицы А~х есть величина #&,*).
112 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Отметим, что у некоторых типов матриц неположительность вне- диагональных элементов является необходимым условием монотонности. К таковым, например, относятся трехдиагональные матрицы с положительными диагональными элементами и свойством диагонального преобладания (доказательство см. ниже в п. 6.8.3). Очевидно, что симметричные матрицы положительного типа являются стилтьесовыми и положительно определенными. Напомним, что последнее означает положительность для любого вектора скалярного произведения (Αυ,ν) >δ{υ,ν), δ > О, (З.б) а его следствием является положительность собственных чисел матрицы А (которые у произвольной симметричной матрицы являются вещественными). Для указанного типа матриц свойство (3.6) проверяется непосредственно через оценку снизу скалярного произведения (Αν, υ) суммой (с весовыми множителями) квадратов разностей различных компонент вектора ν, которая для трехдиагональной матрицы А из (3.3) имеет простой вид: N {Αν,ν) > ^2аг(щ-у^1)2. i-2 В общем случае данное утверждение доказывается с помощью следующего представления скалярного произведения для симметричной матрицы: Ν Ν Ν-1 N {Αν, ν) = Σ ν\ 53 <*ij - £ Σ Oij(vi - υ,·)2. Укажем сразу и на чрезвычайно полезное для нас в дальнейшем общее качество симметричных матриц - это экстремальные свойства собственных чисел λ: „.„f(Av,v)\ ^ ί(Αν9υ)\ mm < — — > < Λ < max < ™ г- >, (3.7) υ^Ο Ι (ν, ν) J υ^Ο Ι (ν,ν) J ' где записанная в фигурных скобках дробь называется отношением Рэлея. Из предыдущего вытекает, в частности, что если в трехдиагональной матрице с коэффициентами вида (1.30) все значения тч положительны, то справедливо неравенство λ > mjn{ri} > 0.
§ 3.1. Матричные структуры сеточных операторов 113 Такая же оценка справедлива и для других рассмотренных в § 1.2 аппроксимациях диффузионно-конвективного уравнения, например когда коэффициенты описываются формулами (1.33), (1.35) или (1.36). А неравенства (1-32), (1.34) и (1.37) в алгебраической терминологии означают условия, при которых трехдиагональные матрицы с соответствующими коэффициентами будут матрицами положительного типа и, следовательно, монотонными (отсюда следует, что эти неравенства формально являются только достаточными, но не необходимыми условиями монотонности). Интересными особенностями обладает матрица системы разностных уравнений экспоненциального типа (2.11) (мы также предполагаем сейчас условия Дирихле). Обозначая ее элементы аналогично предыдущему — Si ~ 5*~1 — Si+l ~~ Si ai ~ Λ2(β·<-*-ι)' Ci ~ Л2(1-е"-**+') 1 ~ h? \1 - e**-1-»* e8i+i~Si )* мы легко обнаруживаем между ними связь h > ai+i +с,-_1, (3.9) означающую диагональное преобладание не по строкам, как ранее, а по столбцам. Если матрица симметрична, то различия в этом нет, но в данном случае она уже не является матрицей положительного типа. Однако для транспонированной матрицы А' неравенство (3.9) приводит к диагональному преобладанию по строкам и в результате удовлетворяются все условия определения 3.3 о положительности типа. А так как матрицы А~1 и (Af)~l могут быть неотрицательны только одновременно, то трехдиагональная матрица с элементами вида (3.8) является монотонной. Отметим еще одно характерное свойство трехдиагональной матрицы А с элементами (3.8) - будучи несимметричной, она симметризуется при умножении справа на диагональную матрицу: А = AD = (i)', D = diag{e-5i}. (3.10) Симметризация соответствующей системы Αν = / в таком случае означает замену переменных ν = D"1^, в результате чего приходим к Αν — /. Напомним также, что матрица с элементами (3,8), как и любая трехдиагональная, может быть симметризована и с помощью преобразования подобия (3.5).
114 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Среди рассмотренных трехдиагональных матриц большое методическое значение имеет наиболее простая из них, соответствующая аппроксимации задачи Дирихле для уравнения Пуассона на равномерной сетке: 2 -1 о о -1 2 (3.11) Если на левом конце расчетного отрезка задано условие Неймана, то при аппроксимации его в соответствии с (1.61) уравнением вида г>о — vi = go и исключении с его помощью неизвестной vo из системы вместо Та получаем матрицу λ = ιϊ-τ« 1 W ■ ι -ι -1 2 ' .0 0 '·. -ι -1 2 (3.12) отличающуюся только левым верхним элементом. Она остается невырожденной, так как в последней строке имеется строгое диагональное преобладание. Если же условие 2-го рода задается на обоих концах отрезка, то приходим уже к вырожденной матрице 1 -1 -1 2 о о 2 -1 -1 1 (3.13) у которой вектор е — (1,...,1) из единичных компонент является собственным, а соответствующее собственное число - нулевым.
§ 3.1. Матричные структуры сеточных операторов 115 Отметим еще одно полезное свойство для трехдиагональных матриц положительного типа с постоянными диагоналями 4 = о —а о —а Ее симметризация с помощью диагонального преобразования подобия (3.5) выглядит особенно просто: D = diagJ ( - J i, A = DAD'1 ^ {-^/ас,Ъ,~^/ас}, (3-14) т. е. само преобразование внешне заключается в делении поддиагональ- ных элементов и в умножении над диагональных на одно и то же число. Если при этом а ф с, то подобная матрица А будет иметь большее диагональное преобладание, чем исходная А, так как Ь — 2у/ас > Ь — а — с вследствие того, что у двух разных чисел среднее геометрическое меньше среднего арифметического. Выпишем еще одну трехдиагональную циклическую матрицу, полученную из краевой задачи с периодическими краевыми условиями: т„ = 2 -1 -1 2 О -1 о 2 -1 -1 2 (3.15) которая аналогично Тс имеет собственный вектор е с соответствующим нулевым собственным числом. Используемые в данном пункте разностные коэффициенты относились к аппроксимациям на равномерных сетках. Чтобы выделить влияние неравномерности шагов hi, приведем для этого случая вид матричных элементов, соответствующих формулам (1.8) для оператора Пуассона:
116 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ 2 t 2 2 ь% = τ—г-, ci hi-\{hi-x Λ· hiY hi-ih^ hi(hi~i + hi) Как непосредственно легко проверить, соответствующая трехдиа- гональная матрица А несимметрична, но симметризуется умножением слева на диагональную матрицу: А = ТА{А)', Τ = diag{/ii + Λ<-ι}. (3.16) Соответствующая симметризация системы сводится к масштабированию уравнений умножением их обеих частей на множители hi + hi- χ. В заключение данного пункта коснемся одномерных разностных уравнений повышенной точности, ограничившись одним примером - аппроксимацией (1.12) четвертого порядка точности. Матрица в данном случае является пятидиагональной: Α = -Δ^ = {...1,-16,30,-16,1,...} и не является уже матрицей положительного типа. Надо при этом иметь в виду, что если в первом и предпоследнем узлах сетки около границы используются трехточечные разностные выражения, то соответствующие строки матрицы будут такие же, как у Та из (3.11). 3.1.2. Структура многомерных разностных операторов. Матричные структуры для многомерных краевых задач гораздо сложнее одномерных, и мы главное внимание уделим двумерным задачам, наметив только принципы обобщения результатов на трехмерные. Начнем с простейшего, но представительного в методическом плане примера - пятиточечных аппроксимаций задачи Дирихле для уравнения Пуассона в прямоугольной области на равномерной прямоугольной сетке (см. формулы (1.14)): —2- (-Vi-ij + 2viyj - vi+1J) + —(-Vij-ι + 2vij - Vij+χ) - fcj, г-1,2,..., J; j = l,2,...,J, (3.17) voj = 9i,h v%4 ~ 9itj> vh0 - 9i}o, v%,j = 9iyJ* Такая совокупность (I + 1)(J ~l· 1) уравнений является аналогом системы (3.1), и от нее удобнее перейти к "усеченной" форме путем исключения неизвестных на границе области. Получаемую систему порядка 13 запишем в виде
§«?.i. Матричные структуры сеточных операторов 117 {Au)ij = -ctijVi-xj - bijVij-ι - CijVi+!j ~ ditjVitj+i ~l· eijVij = Д,·, « = 1,2,..., /; j = 1,2,..., J; altj = C/^ = bxj = diyj = 0, (3.18) где подразумевается, что в приграничных узлах правые части включают граничные значения решения. Диагональный элемент удобно разбить на два слагаемых ег*^ = eij + eij' пеРвыи из которых в примере (3.17) равен -%? и происходит из аппроксимации второй производной по ж, а второй "отвечает" за координату у. Соответственно пятидиагоналъная матрица системы (3.18) естественным образом раскладывается в сумму двух матриц IJ- го порядка А = Ах +Л2, (A2v)i,j ~ -bijVij-x + e"jVi,j - dijVij+χ, (3.19) каждая из которых связана со второй производной по ж и у. Приступая теперь к описанию структуры матрицы Л, мы должны понимать, что она определяется порядком неизвестных Vij и необходимо остановиться на таких представлениях, которые дают больше возможностей для простого анализа. В одномерных задачах из предыдущего параграфа мы не задумывались над проблемой нумерации узлов и выбрали естественное их упорядочение "слева - направо". В двумерных случаях возможности богаче и само понятие естественности здесь неоднозначно. Мы начнем с построчной упорядоченности "слева - направо, снизу - вверх", когда у вектора ν = {vk} номер компоненты связан с индексами г, j формулой k = i + (j- 1)1. Удобно начать с представления матриц Αχ, Α2 по отдельности. Первая из них, очевидно, является блочно-диагональной Αχ in AU5 о о Al,j (3.20) имеет блочный порядок J, а каждый ее ненулевой блок представляет собой квадратную трехдиагональную матрицу порядка /:
118 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ 1и {»· - a»,i» *>я Cij...}. Вторая матрица имеет трехдиагональный вид А2 = {...O.-bij.O.-.O, е^,0...0, -^,0...}, (3.21) (3.22) причем в каждой строке ненулевые внедиагональные элементы расположены на расстоянии I позиций от диагонального. В блочной форме она имеет блочно-трехдиагональное представление А2,1 -Ut 0 ~h A2J -Uj '. 0 -Lj -Uj-! A2,j (3.23) где все блоки являются диагональными квадратными матрицами порядка /: Lj = dmg{bij}, A2tj = diagKj}, Uj = diag{*j}. (3.24) Очевидно, что сумма j4i и А2 является блочно-трехдиагональной матрицей А = Dx -Ux -L2 ·· О -Lj Dj -Uj 0 -Uj-X Dj (3.25) в которой диагональные блоки суть трехдиагональные матрицы
§ 3.1. Матричные структуры сеточных операторов 119 DJ = AU + А2J = {-α«,ίϊ eitj, -Cij·}. (3.26) Представляя также в блочном виде векторы ν = {vj}> f = {/j}, где Vj, fj - под векторы порядка i", элементы которых соответствуют значениям функций на j-v. строке сетки, систему (3.17), (3,8) можно записать в следующей форме: -£Л-_1 + DjVj - UjVj+χ = fj9 Lx^Uj = 09 j = l,2,...,J. Если нумерацию узлов сетки взять не по строкам в соответствии с (3.20), а по столбцам (к — j + (i — 1) J), то определенные в (3.19) разностные операторы Αχ, Аг поменяются типами своих матричных структур: новая матрица А 2 станет блочно-диагональной, как Αι в (3.20), но только с I квадратными блоками порядка J, а Αχ станет матрицей трехдиагональной вида А 2 из (3.22), (3.23): Αχ = {...0, -α^-, 0...0, ejj-, 0,..., 0, -с^-, 0,.,.}. (3.28) Фактически А = Αι + Аг означает новое представление того же самого разностного оператора, но в другом базисе. На алгебраическом языке это означает переход к новым переменным ν = Ρυ, / - P'f (3.29) при помощи преобразований с ортогональной матрицей перестановок Р. В этом случае система Αν = /, после подстановки v7f из (3.29) и умножения обеих частей слева на матрицу Р', принимает форму Αν = Р'АР'Ч = /, (3.30) что и дает нам связи матричных представлений разностных операторов Ак =Р'АкР~\ к =1,2. (3.31) Остановимся теперь на свойствах симметричности и монотонности двумерных разностных операторов. Пятиточечные уравнения Пуассона на равномерной сетке вида (3.17), очевидно, порождают симметричные матрицы. Однако если сетка неравномерная, то коэффициенты системы (3.18) определяются в соответствии с разностным выражением (1.13) и условия симметрии а^· = Ci-i,j, bij — di,j-i уже не выполняются. В этом случае, как и в одномерных задачах, удается симметризовать матрицу А - на этот раз путем умножения ее слева на диагональную матрицу
120 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ A = DA = A, D = dvb{Vij - (/if + Щ^Щ + Л^х)/4}, (3.32) где Vi j имеет геометрический смысл объема ячейки сетки около узла (id)- ' Поскольку в блочном представлении (3.20) матрицы А каждый блок А\ j представляет собой дискретизацию одномерной "подзадачи" на j-й строке сетки, то все ее свойства сохраняются, в том числе и для более сложного диффузионно-конвективного уравнения. То же самое можно сказать и о матрице А2, в силу чего условия для положительности типа двумерных разностных операторов целиком следуют из соответствующих одномерных задач, так как сумма двух матриц положительного типа есть матрица с таким же свойством. Аналогичные рассуждения справедливы и в сторону расширения типов граничных условий аппроксимируемой краевой задачи. Наличие условий 2-го или 3-го рода на отдельных сторонах (или их частях) расчетного прямоугольника вместо условий Дирихле сказывается на свойствах матрицы А только посредством изменений в элементах "блочно- одномерных" матриц Αχ, А2у но не в общей структуре. Матрицы А\ А2 рассматриваемого вида обладают уникальным в своем роде качеством - они являются перестановочными, т. е. АХА2 = А2АХ. (3.33) Это касается не только аппроксимации (3.17) для уравнения Пуассона на равномерной сетке, но и ряда более общих случаев - сетка может быть неравномерной, в дифференциальное уравнение могут быть добавлены члены с производными первого и нулевого порядков. Исходная краевая задача может даже иметь переменные коэффициенты и смену типов граничных условий на сторонах прямоугольника, но при существенных ограничениях, которые в целом формулируются следующим образом: должны выполняться условия разделения переменных. Это означает, например, что коэффициенты при производных по χ не могут зависеть от переменной у. Отметим одно принципиальное отличие одномерных и двумерных задач. Если в одномерном случае трехдиагональная матрица симметри- зуется всегда в силу своей простой структуры, то в двумерных задачах, например, пятидиагональная матрица, получаемая из аппроксимации диффузно-конвективного уравнения, в общем случае не симметризуется диагональной матрицей. Обратимся далее к отличиям пятидиагональных матриц для случая, когда исходная краевая задача -задается в области, отличной
§ 3.1. Матричные структуры сеточных операторов 121 от прямоугольной. Тогда в каждой строке сетки находится различное количество узлов Ij и для систем уравнений (3.17) или (3.18) надо соответственно писать г = 1,2,..., Ij. Матрицы Αι, Аъ из (3.19) при построчной упорядоченности узлов по-прежнему имеют блочное представление (3.20)-(3.23), но структура самих блоков меняется: все диагональные блоки A\j, A2J в (3.20) и (3.23) имеют теперь в общем случае разные порядки 7^, а матрицы Ljj Uj становятся прямоугольными. Полная матрица А системы может быть названа пятидиагональной условно, в том смысле, что ее внешние ненулевые диагонали становятся "кривыми" и их точнее именовать "огибающими". Такие особенности привносят существенно новое качество матриц Αι,Α2 - они становятся неперестановочными даже для постоянных коэффициентов дифференциальной задачи. Принципы представления матричных структур разностных операторов, рассмотренные нами на простейших примерах, позволяют, по- видимому, применять их и для других разностных аппроксимаций. Например, система девятиточечных уравнений типа "ящик" (1.43) при построчной упорядоченности узлов имеет матрицу также блочно-трехдиа- гонального вида (3.25), но теперь внедиагональные блоки Lj, Uj будут трехдиагональными, как и Dj. Но девятиточечная система типа "большой крест", описываемая формулой (1.46), имеет клеточную структуру более сложную и является блочно-пятидиагональной, причем диагональные блоки являются квадратными пятидиагональными матрицами, а внедиагональные блоки на каждой строке имеют не более одного ненулевого элемента. Введем еще одно - аддитивное - представление матрицы А, которое будет часто использоваться в дальнейшем: А = D - L - U, (3.34) D = {D,}, L = {Lj}, U - {Uj}, где D является блочно-диагональной матрицей, L ~ строго нижней треугольной, a U - строго верхней треугольной. Перейдем теперь к краткому изложению матричных структур, соответствующих трехмерным краевым задачам, и ограничимся рассмотрением семиточечных разностных уравнений (1.52). Пусть сеточная область будет для простоты параллелепипедом, а число расчетных узлов вдоль каждой из его сторон равно I, /, К. Как и ранее, с сеточной функцией со значениями Vijtk мы должны сопоставить вектор, от нумерации компонент которого будет зависеть структура матрицы системы.
122 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Выберем естественную упорядоченность узлов слоями вдоль оси ζ, а для каждого слоя - одинаковую построчную нумерацию. Тогда для вектора υ — {vij^} номер компоненты связан с индексами координатных линий равенством Z = t + (j-l)/+(fc-l)JJ. (3.35) В этом случае, очевидно, семидиагональная матрица системы порядка IJK будет иметь ненулевые элементы на диагоналях, соседних с главной, а также отстоящих от нее на I позиций и на 13 позиций, соответственно со значениями, равными 1//ι^, 1/^у и Ι/Ζι^. Удобно также представить такую матрицу в блочном виде, разбив вектор неизвестных ν на подвекторы vk — {vij,k} c компонентами, соответствующими слою сетки ζ — Zk- Этой записи будет соответствовать трехчленная форма системы, аналогичная (3.27): {Av)k ■_. -Lkvk-i + Dkvk - Ukvk+X = /fe, _ (3.36) Li = CTjc = 0, fc = l,2,...,tf. Здесь Lk и Uk - диагональные матрицы порядка I J, a Dk ~ пятидиа- гональные матрицы того же порядка, имеющие такую же внутреннюю структуру, как и матрица А вида (3.25) для двумерного случая. Более конкретно: имеется простая связь Dk = А + ρ-iS, где Ε означает единичную матрицу. Клеточное представление для матрицы А системы (3.36) совершенно аналогично по форме (3.25) - надо только над обозначениями всех матриц поставить черту, а индексы j, J заменить на к, К. Изменения в форме блоков и в значениях коэффициентов матрицы трехмерного разностного оператора, связанные с обобщениями краевой задачи в сторону модификации формы области, коэффициентов дифференциального уравнения и краевых условий, вносятся совершенно аналогично двумерному случаю, и мы здесь повторяться не будем. В заключение этого пункта дадим определение одной важной характеристике ленточных матриц, к которым относятся фактически все матрицы систем разностных уравнений. Определение 3.7. Шириной полуполосы ленточной матрицы А — {ak,i} называется минимальное целое число η такое, что для всех I > к + η или I < к — η значения ак,г равны нулю. Для двумерных задач, например, ширина полуполосы равна / при построчной упорядоченности узлов в прямоугольной области и max{ij}, если число узлов в сеточных строках переменное. В трех- з мерных же системах эта величина на порядок больше и равна IJ, если
$3.1. Матричные структуры сеточных операторов 123 сетка рассматривается в параллелепипеде с упорядочением узлов "слоями по г" в соответствии с нумерацией (3.35). ЗЛ.З. Некоторые разложения блочных матриц. Аппарат исследования разностных систем уравнений и методы их решения в значительной степени базируются на различных разложениях, или факторизации, блочных матриц. Естественно по этим вопросам дать предварительно общие сведения из теории матриц, что мы сейчас и сделаем, начиная с "простых" (не блочных) факторизации. Если у матрицы А все главные миноры не равны нулю (здесь можно использовать не вполне устоявшееся определение - строго, -или вполне, невырожденная матрица), то она представима в виде произведения нижней и верхней треугольных матриц: А — LU. Такое разложение на треугольные множители, или факторизация, не единственно, но если у матрицы L или U зафиксировать диагональные элементы, то оно становится единственным. Обычно под термином "LU-разложение" понимают представление, в котором диагональные элементы матрицы L равны единице. Диагональные элементы матрицы U при этом равны отношению соответствующих главных миноров \А{\ матрицы А «Μ = μ*|/μΐί-ι|, i = i,2,...,tf. На такой именно факторизации основан классический метод исключения Гаусса, сводящий задачу решения системы Аи = / к последовательному решению вспомогательных систем с нижней и верхней треугольными матрицами Ly = /, Uu = у. Не вдаваясь в алгоритмические особенности метода исключения Гаусса, укажем, что количество арифметических действий Q и объем оперативной памяти Р, необходимые для его выполнения, оцениваются при больших N величинами Q = ~N3 + 0{N2), P^N2 + 0{N). о Реализация метода Гаусса существенно упрощается, если матрица А является ленточной с шириной полуполосы т, т. е. ее элементы отравны нулю при \г — j\ > m. В этом случае матрицы L, U оказываются также ленточными и затраты вычислительных ресурсов уменьшаются до величин Q = \m2N + 0{mN), Ρ = 2mN + 0(Ν). Очевидно, что для строго невырожденной матрицы существуют и разложения вида
124 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ А = LDU, (3.37) где D — {^м} _ диагональная матрица. Для одной из возможных факторизации элементы матриц-множителей определяются формулами Здесь \Ai{iJ)\ имеющей вид определитель окаймленной подматрицы г-го порядка, Ак-х Aj Ai ciij M{hj) = где Ak-ι - главная подматрица (к — 1)-го порядка, а Ль Aij - вектор- строка и вектор-столбец (к — 1)-го порядка, состоящие из первых элементов строки и столбца матрицы А с соответствующими номерами. Если матрица А симметрична, то в разложении (3.37) матрицы L и U - транспонированные по отношению друг к другу, и мы можем записать А = LD1/2 * Dl^2V - L · L, L — LD1/2. Такая факторизация симметричной матрицы единственна, и она называется разложением Холесского. Любая матрица iV-ro порядка может быть представлена в блочном, или клеточном, виде: А = Mti А2,х Апл 4l,2 ^2,2 Αι,2 А1лП А2,п АП,П с диагональными блоками Лп^, представленными квадратными подматрицами порядка iVjfe, Νχ Η- iV^··· + Νη = Ν. Соответственно блочному представлению матрицы можно определить нижние и верхние блочно- треугольные матрицы, у которых блоки Aij равны нулю, если соответственно г > j или г < j. Аналогично обычным можно также ввести блочные главные подматрицы А1 =Л1,1,Л2 = Αχ,χ j4ii2 *2,1 i2,2 Μ,χ L м,к Alyk Akyk J Для матриц в блочном представлении справедлив также результат о разложении: если все блочные главные подматрицы Αχ, А2, А$,... матрицы А невырожденные, то она может быть представлена в виде
§ 3.2. Спектральные характеристики матриц 125 произведения блочных нижней и верхней треугольных матриц; такое представление единственно, если диагональные блоки одной из матриц- сомножителей взять равными наперед заданным невырожденным матрицам соответствующих порядков. В дальнейшем нас особенно будут интересовать блочно-трехдиаго- нальные матрицы вида (3.25), для которых разложение на множители записывается в следующей простой форме: А = (G - L)G-X{G - U)f (3.38) где G — {Gk} - блочно-диагональная матрица с блоками Gi = Du Gk=Dk- LftGfc^Ulk-!, k = 2, ...,n, a L = {Lk} и U = {t/fc}- блочные нижняя и верхняя треугольные матрицы. § 3.2* Спектральные характеристики матриц Спектральный анализ является одним из основных в исследовании свойств систем сеточных уравнений, а также в обосновании и оптимизации методов их решения. Прежде чем перейти к конкретным задачам, приведем те минимальные данные из алгебраической теории матриц, которые нам потребуются. 3.2.1-. Предварительные сведения о спектральных свойствах матриц. Начнем с краткой, но достаточной для нас в дальнейшем информации о векторных и матричных нормах, отсылая заинтересованного в более глубоком ознакомлении читателя к одной из фундаментальных современных монографий по матричному анализу [46]. Здесь также может быть очень полезна ставшая классической книга Д. К. Фаддеева и В. Н. Фаддеевой [43]. Определение 3.8. Нормой Гельдера с показателем р, или 1р-нормой, вектора и = {щ;г — Ι,.,.,Ν} называется величина ΝΙρ=(ί>Ιρ)1/Ρ· Среди векторных норм этого семейства мы будем фактически использовать только следующие три типа, соответствующие ρ — оо,2,1: равномерном: (кубическая) норма jjtxjjoo — гпазс{|ях^|}; евклидовая (сферическая) норма ЦиЦг = (u, u)1>/2, где для вещественных векторов скалярное произведение имеет вид
126 ГД.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ N (и, υ) = ^2щу{ = (v,u); октаэдрическая норма Ν i=l Существует очень много способов введения норм матриц, но мы будем использовать только матричные нормы, подчиненные соответствующим векторным гельдеровским нормам P||p = max!iMk (3.39) «#о \\и\\р Согласно этому определению для ρ — со, 1,2 матричные нормы имеют следующий вид: Ν Ν \\А\\оо =max|^|afcie||, \\А\\г = maxj ^ |afc,e|j, |Щ|2 = max ji/,}, где vq есть сингулярное собственное число матрицы, т. е. корень квадратный из собственного числа произведения АА!, Очевидно, что сингулярное число всегда неотрицательно, а для симметричной матрицы равняется модулю соответствующего собственного числа, определяемого равенством Azq = \zq, где zq - собственный вектор матрицы А. Симметричные матрицы относятся к классу так называемых нормальных матриц, имеющих N линейно-независимых собственных векторов. Поскольку к ним, естественно, применимы процессы ортогонали- зации и нормировки, то можно сказать, что нормальная (и симметричная в том числе) матрица имеет ортонормальный базис из собственных векторов, т. е. {zq,zq*) = 5qtq* = | 0j' q^q'\)> где δ4ι4> называется символом Кронекера. В силу определения собственных чисел А^ и векторов zq для нормальной матрицы справедливо представление (спектральное разложение) А = ZAZ\ (3.40) где Λ - диагональная матрица с элементами Хя на главной диагонали, а Ζ - квадратная матрица, столбцами которой являются векторы zq.
§ 3.2. Спектральные характеристики матриц 127 Матрица Ζ относится к классу ортогональных матриц, обладающих свойством Ζ'1 = Ζ*'. В силу представления (3.40) для симметричной положительно- полуопределенной матрицы, имеющей неотрицательные собственные числа, допустимо определение квадратного корня, являющегося матрицей с теми же собственными векторами и собственными числами ^/λ^, т. е. А1/2 = Zk^Z', (3.41) и выполняется очевидное свойство А1/2 · А1/2 = А (читателю наверняка понятно, что Λ1/2 означает диагональную матрицу с величинами у/\ на главной диагонали, т. е. λ1'2 = diag{Ag }). Аналогично могут быть введены и другие функции от матрицы. А именно если для всех собственных чисел Xq определена функция iW, то F(A) = Z'diag{F(A«)}Z. (3.42) Каждая положительно-определенная матрица порождает некоторое новое А-скалярное произведение и норму: {щ ν)α ξ (Аи, ν) = (щ Αν), \\u\\A^{Au,u)1/2^U1/2u2\\. Приведем без доказательства некоторые нужные нам для дальнейшего спектральные свойства матриц, которые сформулируем в виде лемм или теорем. Лемма 3.2. Нормальные матрицы А,В перестановочны (АВ — В А) тогда и только тогда, когда они имеют одинаковый базис из собственных векторов. Собственные числа суммы А Л- В и произведения АВ равны сумме и произведению соответствующих собственных чисел матриц А, В. Для произвольной вещественной квадратной матрицы обобщением соотношения (3.40) является следующее утверждение. Теорема 3.3 (Шура). Для любой вещественной квадратной леа- трицы существует вещественная ортогональная матрица Ζ такая, что
128 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Αι Ζ'ΑΖ О An (3.44) где для каждого г матрица Ai имеет размер 1x1 или 2x2, отвечая соответственно вещественному собственному значению или паре комплексно-сопряженных собственных значений матрицы А. Блоки Ai можно расположить в произвольном порядке. Если две матрицы ком- мутативны} то их приведение к форме (3-44) осуществляется одной и той dice матрицей Z. Подчеркнем, что матрица (3.44) является верхней хессенберговой (т. е. элементы aij равны 0 при г > j + 1) и становится верхней треугольной, если ее собственные числа вещественны. Для оценки границ спектра матриц важное значение имеет следующий результат. Теорема 3.4 (Гершгорина). Каждое собственное число матрицы всегда расположено в одном из кругов комплексной плоскости 1«м-А|< £ Κ,·|, i = l,2,...,N. (3.45) Отсюда следует, например, что если матрица имеет по всем строкам строгое диагональное преобладание ί = ηΰη{κ,·|}- Σ К,|}>0 i = i (3.46) и все α^ι положительны, то для любого собственного числа λ его вещественная часть удовлетворяет оценке ReA > δ. (3.47) Определение 3.9. Матрицы А,В называются подобными, если существует невырожденная матрица Τ такая, что справедливо равенство В = Т~1АТ.
§ 3.2. Спектральные характеристики матриц 129 Очевидно, что подобные матрицы А, В имеют одинаковые собствен ные числа, а их соответствующие собственные векторы zq, yq связаны соотношением zq — Tyq. Определение 3.10. Если существует невырожденная матрица S такая, что В = SAS1, (3.48) то матрица В называется конгруэнтной к А, а само выражение (3.48) - преобразованием конгруентности. Такие матрицы А и В при этом называются конгруэнтными. Очевидно, что если матрица А симметрична (и, возможно, положительно определена), то такими же свойствами обладает конгруэнтная к ней матрица В. Более глубокий результат заключается в следующем так называемом законе инерции Сильвестра. Теорема 3.5 (инерции). Симметричные матрицы А, В конгруэнтны тогда и только тогда, когда у них одинаковое количество положительных, отрицательных и нулевых собственных чисел. Естественно, что для спектрального анализа определяющее значение имеет нахождение собственных чисел или их оценок для сумм и произведений матриц. Алгебраический аппарат, если не погружаться в технические дебри, ограничивается в данной области немногими результатами. Естественно, самый простой из них заключается в лемме 3.2 о свойствах спектра перестановочных матриц. Ненамного сложнее следующие утверждения. Лемма 3.6. Собственные числа многочлена от нормальной матрицы Рп{А) суть значения многочлена от соответствующих собственных чисел, т. е. Хд(Рп(А)) = Ρ„(λβ). (3.49) Лемма 3.7. Если матрица А симметрична, а В симметрична и положительно определена, то матричное произведение В А подобно матрице Вг/2АВг/2, конгруэнтной с А, и, следовательно, имеет одинаковое с ней количество положительных, отрицательных и нулевых собственных чисел. В частности, если Xq(A), Xq(B) > 0 для всех q, то \{АВ) >0. Лемма 3.8. Для собственных чисел Хя суммы симметричных матриц А Ь В справедливы следующие оценки через собственные числа μ4 и vq матриц А, В: πύη{μρ(Α)} + ππη{ι/ρ(Β)} < Xq(A + В) < тах{д^(А)} + max{i/ff(B)}. 9 9 Q Ч (3.50)
130 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Последний результат непосредственно вытекает из экстремального свойства собственных чисел (3.7). Лемма 3.9. Если матрицы А,В симметричны и положительно определены, то для собственных чисел их произведений АВ выполняют неравенства min^g(A)}min{i/fl(B)} < Xq(AB) < тах{/ха(Л)}тах{^(£)}. (3-51) Я Я Я Я Доказательство этого факта основывается на том, что если zq - соответствующий Хя собственный вектор матрицы АВ, то из его определения следуют равенства (BABzq,zq) ^ (Axq,xq) (Byq,yq) χ ^Bz y ^в1/22 (Bzq,zq) (xq,xq) {yq,Vq) Я e' Q из которых очевидным образом вытекает (3.51). □ Для определенности в дальнейшем будем предполагать, что если матрица симметрична, то ее собственные числа Xq пронумерованы в порядке возрастания: λχ < Аг < ... < Χν· Теперь мы дадим одно из фундаментальнейших понятий теории матриц, актуальность которого в вычислительной алгебре многократно будет подтверждена в последующих главах. Определение 3.11. Числом обусловленности невырожденной матрицы называется величина cond(A) = \\A\\-\\A-1\\. Здесь матричные нормы могут быть любые, но одинаковые. Если это необходимо, типы норм могут конкретизироваться, в том числе и в обозначениях. Если, например, используется какая-то из гельдеров- ских норм |j ■ ||р, то соответственно записывается сопар(А). Очевидно, что для ортогональных матриц число обусловленности равно единице (в норме || ■ ||2), а для всех остальных - больше. Иногда говорят, что матрица хорошо или плохо обусловлена, если ее величина сопа(Л) близка к единице или много больше ее. Понятно, что граница между этими противоположными качествами условна и, строго говоря, понятие лучшей или худшей обусловленности является относительным. Это означает, что матрица А лучше обусловлена, чем В, если cond(^) < cond(B), и наоборот. Спектральным числом обусловленности симметричной матрицы А называется величина
§ 3.2. Спектральные характеристики матриц 131 cond2(i4) = max{|Ag(^)|}/min{Ag(A)|}. я ч Зачастую также употребляют понятие числа обусловленности системы уравнений, подразумевая под этим, естественно, ее матрицу. Ключевую роль числа обусловленности можно понять из оценки погрешности решения алгебраической системы при неточных исходных данных. Пусть вектор ||х|| есть решение системы с возмущенной правой частью Ах = / + 6f. Тогда для вектора ошибки χ — χ легко получается оценка <||Α||.|μ-ΊΙ·ΪΓϊίΓ = Δ. Если же правая часть известна точно, но вычисления ведутся с возмущенной (невырожденной) матрицей А = А + δ А, то приближенное решение χ удовлетворяет системе (А + δΑ)χ = / и его погрешность оценивается неравенством 1|Х"*1,<ЦА||.||А-1||-М = «л. ΙΜΙ - 11/11 Наконец, когда приближенно даны элементы и матрицы, и правой части, то для решения системы (A -f δ Α) (χ + δχ) = / + 6f получаем следующий результат; J-w* < Δ/ + Дд 4- Δ/Δα· Важно заметить, что все эти неравенства являются неулучшаемы- ми, или точными, в том смысле, что найдутся такие Л, /, δΑ и <5/, для которых неравенства перейдут в равенства. Используя ту или другую конкретную матричную норму, мы можем определять различные числа обусловленности. Как мы увидим ниже, спектральное число обусловленности для симметричной матрицы, определяемое через евклидову норму, играет важнейшую роль при исследовании итерационных методов. 3.2.2. Спектр одномерных сеточных операторов. Результаты этого пункта заключаются в том, что, во-первых, для некоторых матриц с постоянными коэффициентами мы приводим (без вывода) явные выражения собственных чисел и векторов, а, во-вторых, когда это невозможно, даем оценки для границ спектра. Надо сказать, что формально все спектральные свойства одномерных разностных операторов можно вывести из теории уравнений в конечных разностях (см. [8, 15]), по аналогии с обыкновенными дифференциальными уравнениями, однако это технически достаточно сложно и мы эти вопросы опускаем для сокращения изложения.
132 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Мы начнем с простейшей трехдиагональной теплицевой матрицы Та = {.»~1,2, —1,...} из (3.11), соответствующей аппроксимации задачи Дирихле для уравнения Пуассона на равномерной сетке. В данном случае очевиден следующий результат: Τβ2? = λχ, q =1,2,..., Ν, A»=4sin2 «* ■,~,i ч -*,-,...,-., -, 2(JV + 1)' (3.52) * = {Ъ = У11П^1Пл}' где множитель в собственном векторе введен по условию нормировки (Zq,zq>) = SQiq'. При этом полезно отметить неравенства которые в асимптотическом случае N ^> 1 переходят в приближенные равенства, а также вытекающую отсюда оценку числа обусловленности СОП(1; 2{Ν + 1)γ ,<r.><[^] Для матрицы Ть из (3.12), соответствующей смешанной краевой задаче (условие Дирихле на одном конце расчетного отрезка и условие Неймана - на другом), имеем Tbzbq = Xbqzbq, q = l,2,...,N, <-«*«&£>"■ < = Hs^}· <354) 2 2 Отсюда следует, в частности, что число обусловленности cond· r2(2i\T-l· 1)-|2 ,ewsp^] асимптотически, т. е. при N ^> 1, в четыре раза больше, чем у матрицы Та. Для задачи Неймана, порождающей матрицу Тс из (3.13), получаем Tcz\ = \%z\, q=l,2,...,N, A<=4sin2^-^, 2 Ш (3.55)
§ 3.2. Спектральные характеристики матриц 133 Рассмотрим также трехдиагональную циклическую матрицу Т& из (3.15) (N + 1)-го порядка, соответствующую периодической краевой задаче. Ее спектральные свойства описываются следующими выражениями: Tdzd = \dzd q=l,2,...,N + l, \dq = 4sin2 ^ A = I λ/JV +1 ^ N+ \ N + l)' J Первым шагом к переходу на матрицы более общего вида является рассмотрение трехдиагональной симметричной теплицевой матрицы, для которой ввиду элементарной связи с Та А = {... - а, о, -а,...} = аТа + (Ь - 2а)# собственные числа определяются простым выражением A,(il) = 48ίη22(/1ΐ) - 2α + Ь] · (3·57) Если же трехдиагональная теплицева матрица несимметрична, то поскольку диагональным преобразованиям подобия (3.14) она сводится к симметричной, для нее также формулируется результат, аналогичный предыдущему: А = {...-аД - с,...} = вГх/асТаН- ib-2>/ас1 я]!)"1, Здесь надо иметь в виду, что если соответствующие собственным числам Xq(A) из (3.57) являются описанные в (3.52) собственные векторы ζ*, то собственными векторами несимметричной матрицы из (3.58) будут zq(A) = D-'z* = { (") 2 HiqWTi) J" (3·59) Следует указать, что при а^сиЬ>а + с полученная после симметризации матрица D~lAD при N ^> 1 будет иметь тем лучше обусловленность, чем сильнее разница в значениях а, с, так как при этом растет величина 2у/ас — а — с. Заметим, что говорить о числе обусловленности исходной матрицы А надо с осторожностью, так как
134 ГЛ.З, АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ в силу ее несимметричности величина сопаг(>1) выражается не через значения \{А) (3.58), а через сингулярные числа. Что касается представлений или оценок для матриц с переменными элементами, то здесь круг результатов ограничен. Основные инструменты исследования здесь - использование теоремы Гершгорина, выражений для спектра матричных сумм и произведений или специальные технические приемы. Например, для трехдиагональной стилтьесовой матрицы, соответствующей аппроксимации задачи Дирихле для уравнения Пуассона на неравномерной сетке, можно выписать аддитивное представление А = {... - аь Ьи -Oi+i»} = Ao + (A- Л0), Aq = а ■ Та, а — ппп{а*}, такое, что разность А — Aq будет положительно полуопределенной матрицей. Отсюда (с применением кругов Гершгорина для верхней оценки) получаем а ■ λ? < Xq(A) < max{at· + fy -f сл}. i В данном случае полезным примером является аппроксимация задачи Дирихле для уравнения диффузии на неравномерной сетке с разностными коэффициентами, определяемыми из (1.10), когда матрица Λ _ Г 2Pt-l/2 %(ЫР%-1/2 + bt-lPt+l/2) I hi-i(hi + /i^i—i)' hi-ihi(hi + /ii_i) 2Pi+i/2 1 ^(Λί + Λί-ι)'" i является матрицей положительного типа, но несимметричной. Для нее на основе описанных выше подходов получаются двусторонние оценки < -JUsin2 " < Ад(Л) < 4£, (3.60) (Ν + 1)2/ι2 - h2 2(tf + l)- gV '-tf' где введены обозначения ρ - min{pi=tl/2}, h==min{ui}, p = тах{рй±1/2}, Я = max{/ii}. Отсюда следует оценка для спектрального числа обусловленности ϊ\ 2 ^и)5[т±пГт,
§ 3.2. Спектральные характеристики матриц 135 которая указывает на ухудшение обусловленности матрицы как при усилении неравномерности шагов сетки, так и при разбросе значений коэффициента диффузии. В случае аппроксимаций повышенной точности, например (1-12), или при дискретизации одномерных краевых задач для дифференциальных уравнений более высокого порядка возникают ленточные матрицы с шириной полуполосы ρ > 1, для которых зачастую существуют аддитивно-мультипликативные представления через трехдиагональные матрицы и анализ спектра удается осуществить на основе предыдущих результатов. 3.2.3. Спектральные свойства многомерных разностных задач. В данном пункте основное внимание мы уделим, естественно, двумерным разностным операторам, а изучение их спектра основывается на "одномерных" результатах и на структурных свойствах матриц, описанных в п. 3.1.2. Рассмотрение начнем с пятиточечных уравнений (3.17), аппроксимирующих задачу Дирихле для уравнения Пуассона в прямоугольной области на равномерной прямоугольной сетке с шагами hx, hy. Блочно- трехдиагональная матрица такой системы имеет вид (3.25), а ее аддитивное представление А = Αι + А2 и структура слагаемых приведены в (3.19)-(3.24). Блочно-диагональная матрица Αχ в данном случае имеет одинаковые диагональные блоки Aij — ρ-Τα. Поэтому ее собственными числами являются μρ = \p/h%, ρ — 1,2,...,/, каждое кратности J, равной блочному порядку Αι, а соответствующие собственные векторы имеют блочный вид с какими-либо нулевыми подвекторами и только одним - ненулевым и равным ζ£ из (3.52) (в этих выражениях надо положить N = 1). Чтобы описать спектральные свойства слагаемого Аг, достаточно вспомнить, что при ортогональном преобразовании подобия (3.31) с матрицей перестановок Р, соответствующей перенумерации узлов сетки по столбцам, эта матрица принимает блочно-диагональную форму, аналогичную (3.20), с тем отличием, что порядок каждого блока будет J, а их количество равно /. Поэтому собственными числами Аг будут vq — λ£//ι^, q = 1,2,..., J, каждое кратности /, а ненулевые компоненты собственных векторов складываются из элементов ζ% (см. (3.52)) при N = J. Поскольку матрицы Αχ, Аг в данном случае перестановочны, они имеют общий собственный базис, и для матрицы А теперь легко выписать представление собственных чисел и векторов. Его удобно записать
136 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ с помощью мультииндексов; Azp,q — λρ&ζρ&·> Ρ = 1» 2,..., I; g = 1,2,..., j; λΡ„ = Μ, + «, = ^sm ^-^ + ^sm щ^, о . · (3.61) oaf 2 17Г ■ J71" 1 и* - ы · **.; - {v(/ + i)(J + i)smp/TI' 8Ш*7ТП> i -1,2,...,/; j = 1,2,..., J. Из приведенных соотношений видно, что число обусловленности такой системы пятиточечных уравнений не больше, чем у худшей из двух соответствующих одномерных краевых задач (т. е. у матрицы Αχ или А2). Если теперь рассматриваемую исходную краевую задачу варьировать, оставаясь в рамках условий разделения переменных, то аналогично можно явно выписать спектральные свойства матриц. Например, при смене граничных условий Дирихле на некоторых сторонах прямоугольника на условия Неймана (по одной из координат может быть также условие периодичности) в формулах (3.61) выражения для λ° меняются на λ£, λ£ или λ£ из (3.54)-(3.56). Аналогично через "одномерные спектры" выражаются спектральные свойства матрицы Л, если матрицы Αχ и Л2 имеют другие элементы, но остаются теплицевыми или просто имеют явные выражения для собственных чисел и векторов. Использование результатов по трехдиагональным матрицам удается иногда и для более сложных матричных структур. Удачным примером является система девятиточечных разностных уравнений Пуассона типа "ящик", матрица которой для случая прямоугольной сетки в соответствии с (1.42) имеет следующий вид (предполагается задача Дирихле в прямоугольной области): hl+h* А = АХ+Аъ- ^^—ХАха2. (3"62) В сипу того же свойства перестановочности матриц Αι, А2 и выражений для их собственных чисел μρ, vq получаем ХР,я(А) = βρ + Vg TZ-^VpVq W 7Г 12 2, χ . 1 *ЧК+Щ) I—1 Ui + i {I + l)2h2x {J + l)2h2y 12(/ + 1)2(J+1)2^2 j>
§ 3.2. Спектральные характеристики матриц 137 Ххл < λΡ,9 < Хы « 4^ + ^ ) - ^ · (3-6S) Отсюда, в частности, можно усмотреть, что число обусловленности данной девятиточечной системы меньше, чем пятиточечной. Чтобы это было наглядней, упростим задачу, полагая сетку квадратной, а расчетную область - квадратом со стороной π, т. е. hx — hy ~ h~ -щг[] I ~ J = N. В этом случае из (3.63) получаем оценку 2 4 cond2(A) < ~ —, т. е. в | раз меньше, чем для матрицы из (3.61). Перейдем теперь к рассмотрению спектральных свойств пятидиа- гональной матрицы А, когда ее слагаемые Αχ, Α2 не перестановочны. Если система уравнений является симметричной, то оценки легко получаются на основе леммы 3.8 о сумме матриц. Остановимся на пятиточечной аппроксимации задачи Дирихле для уравнения Пуассона на равномерной прямоугольной сетке в полигональной области. При этом, как отмечалось, блочно-трехдиагональная матрица А — Αχ -f А2 и ее слагаемые описываются формулами (3.20)- (3.26), в которых каждый из блоков Dj, AXj> A2j имеет порядок Ij. Если ввести обозначения /-min{/j}, / = тах{/Л, J — min{Ji}, J — maxiJj}, з з i i то из неравенств (3.50) с помощью представлений для собственных чисел матриц Αχ и А2у которые выражаются соответственно как совокупность всевозможных значений 4 о Ό -7Г для собственных чисел получаем двусторонние оценки Отсюда видно, что число обусловленности определяется длиной самых протяженных - горизонтального и вертикального - сеточных отрезков внутри расчетной области. (3.64)
138 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Аналогичным образом оценки могут быть распространены на более общие задачи, например уравнение диффузии с использованием неравномерной сетки: минимальные собственные числа оцениваются по "наихудшим" сеточным отрезкам, имеющим минимальные значения коэффициентов диффузии и максимальные шаги сетки (или большое количество узлов), а максимальные собственные числа фактически выражаются через минимальные шаги сетки. Переходя в заключение к спектральным свойствам трехмерных разностных задач, мы для простоты ограничимся рассмотрением системы семиточечных уравнений Пуассона (1.52) на равномерной сетке в параллелепипеде с граничными условиями 1-го рода. Соответствующая семи- диагональная матрица А в данном случае представляется в виде суммы трех трехдиагональных и перестановочных матриц А — Αχ + Α2 + А3, каждая из которых отвечает за аппроксимацию вторых производных по ж, ι/, ζ. Структуру каждой из А^ легко уяснить, экстраполируя предшествующие результаты по двумерным задачам. Так, матрица Αχ при естественной нумерации узлов (3.35) будет иметь блочно-диагональный вид, аналогичный (3.20): Ах = diag{A1(i(fc}, Α1άΜ = τ^ν^α, но только количество диагональных блоков (размерности /) равно JK. Ее / различных собственных чисел имеют вид 4 . 2 р7Г ^ Λ _. и каждое из них имеет кратность JK. Аналогично определяются через βς из (3.52) собственные числа А2 и Лз, а результат для полной матрицы А удобно записать в мультииндексной форме как ^•2ф,д,г — ^-p-,q,r^ptq^r 5 Ρ ~ -Lj -"э -* i Я. ~ !)■■■)«'j ft — 1, ..., ii , 4 . 2 ρπ 4,2 απ W = /* + «. + * = -sm w—] + -sm ---- + ^smVn)! (3-65) f 2λ/2 . ρπ . ρπ . τ·π ί ζρα,Γ = < . sin-—-sin-—-sin-»—- , M' lv/(J + l)(J + l)(ur + l) /+1 J+l if + li i = !,...,/; i = l,,...,J; fe = l,...,JK'.
§ 3.3. Свойства монотонных сеточных схем 139 Отсюда видно, что в случае кубической сетки и кубической расчетной области число обусловленности будет то же, что и в соответствующей двумерной задаче. Спектральный анализ разностных краевых задач для других типов граничных условий, конфигурации областей и видов решаемых дифференциальных уравнений можно провести, как и ранее, с помощью аддитивного представления полной матрицы А через слагаемые Л*, соответствующие одномерным задачам. § 3.3. Свойства монотонных сеточных схем Напомним, что система линейных алгебраических уравнений называется монотонной, если ее матрица монотонна, т. е. обратная к ней матрица существует и неотрицательна (Л"1 > 0). Частным случаем монотоных матриц являются матрицы положительного типа, наиболее легко идентифицируемые (см. определение 3.4). 3.3.1. Некоторые характеристики монотонных матриц. Чтобы обогатить понятие монотонных матриц, нам потребуется рассмотреть еще несколько определений и теорем. Определение 3.12. Матрица положительного типа со строгим диагональным преобладанием называется матрицей Минковского. Имеется одна существенная связь между матрицами Минковского и М-матрицами. Теорема 3.5 (Островского). Если А есть Μ-матрица, то существует положительно определенном: диагональная матрица D такая, что D~1AD есть матрица Минковского. Этот результат потенциально важен для нижней оценки собственных чисел, однако вопрос заключается в конструктивном нахождении необходимых диагональных матриц. Для характеризации М-матриц полезны следующие два утверждения. Теорема 3.6. Вещественная матрица А с неположительными внедиагоналъными элементами является Μ-матрицей тогда и только тогда, когда ее диагональные элементы положительны и справедливо неравенство р(В) < 1 для спектрального радиуса матрицы В — Ε - D^A, где D = diag{A}. Доказательство данного утверждения следует из того известного факта, что неравенство р(В) < 1 является необходимым и достаточным для сходимости матричного ряда -
140 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ (D^A)-1 = (Е- В)-1 - Ε + В + Б2... > 0. Напомним, что спектральным радиусом матрицы называется максимальный из модулей ее собственных чисел />(В) = {тах|А3(В)|}. Замечание. Тесно связанным с теоремой 3.6 является следующее утверждение: если матрица В неотрицательна, то матрица Ε — В является монотонной тогда и только тогда, когда р(В) < 1. Теорема 3.7. Для того чтобы вещественная неразложимая матрица А с неположительными внедиагоналъными элементами была Μ -матрицей, необходимо и достаточно наличие у нее свойства обобщенного диагонального преобладания, т. е. существование положительного вектора у > 0 такого, что Ау > 0, причем хотя бы для одной компоненты вектора Ау неравенство строгое {{Ay)i > 0). Нетрудно проверить, что свойство обобщенного диагонального преобладания для матриц с неположительными внедиагональными элементами эквивалентно свойству "классического" диагонального преобладания для матрицы А = AY, где Υ ~ diag{z/i} - диагональная матрица в силу очевидного равенства Ay = AYe, которое для матрицы А равносильно (3.4). Что касается достаточности "обычного" диагонального преобладания для монотонности неразложимой матрицы с неположительными внедиагональными элементами, то это следует из свойств матриц положительного типа. Важное прикладное значение может иметь следующее утверждение, которое в определенном смысле можно назвать теоремой сравнения для М-матриц. Теорема 3.8. Пусть А1 = Di — С\ есть Μ-матрица (D\ — diag{j4i}J Ci > 0 - неотрицательная матрица с нулевой главной диагональю). Пусть также Z>2 > D\ ~ некоторая положительно- определенная диагональная матрица и С% - неотрицательная матрица, удовлетворяющая неравенству Сг < С\. Тогда А2 = £>2 — Сг является Μ-матрицей и выполняется условие А^1 < А^1. Следствием данного результата является тот факт, что если А есть М-матрица, D - неотрицательная диагональная матрица, то А -f D - тоже М-матрица , причем (А + D)-1 < А~г. Поскольку у монотонной матрицы обратная матрица имеет неотрицательные элементы, важное значение имеют следующие спектральные свойства неотрицательных матриц.
§ 3.3. Свойства монотонных сеточных схем 141 Теорема 3.9 (Фробениуса). Неразложимая неотрицательная матрица А имеет простое положительное собственное число ρ с положительным соответствующим собственным вектором. Абсолютные значения остальных собственных чисел не превосходят р, а матрица А не имеет других положительных собственных векторов. Доказательство этой теоремы включает следующую важную характеристику, которую можно назвать минимаксным свойством спектрального радиуса неотрицательной матрицы: . ((Ax)i\ . ((Лх)г\ ρ = max min < - > = mm max < >. x>0 i К Xi J x>0 i К х{ ) Отсюда вытекает, в частности, такой результат: если неразложимая неотрицательная матрица А представима в форме А = В 4- аС, где В и С - неотрицательные матрицы (С / 0), то dp/da > 0. (3.66) Для монотонных матриц приведем еще несколько полезных для многих приложений результатов. Теорема 3.10 (о норме матрицы, обратной к монотонной). Пусть А - монотонная матрица, αν - некоторый вектор такой} что справедливы соотношения Αν > ае, а > 0, \\ чД[оэ — 1- Tozda имеет место неравенство Ц-А""1^ < а"1· Доказательство этого факта следует из простых соотношений ||Л-1||оо=тах{(Л-1е)Л, 1 = IMIoo > {A-xAv)i > а(Л-1е)1. Попутно, кстати, устанавливается, что вектор г>, участвующий в условии теоремы, имеет положительные компоненты. □ Замечание. Совершенно аналогично может быть доказано и более общее утверждение: если А и В - монотонная и неотрицательная матрицы такие, что Αν > аВе, а > 0, Ц^Цоо = 1, то справедливо неравенство ||Л~1В||00<а~1. Поскольку для нас особое значение имеют блочно-трехдиагональные матрицы вида (3.25), то представляет интерес следующее их свойство,
142 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИИ касающееся разложений в произведение блочно-треугольных матриц вида (3.38). Теорема 3.11. Если блочно-трехдиагональная матрица А вида (3.25) - положительного типа, то блочно-диагональная матрица G ~ {Gk} из разложения (3.38) является монотонной. Для доказательства необходимо показать монотонность всех блоков Gk, т. е. их невырожденность и неотрицательность обратных матриц G^1. Оба эти факта вытекают из следующего представления обратной матрицы: А"1 = {Е- G^U^G'^E ~ G^L)-1 = [Ε + G^U + ... + (а-1и)п]С-г[Е + GlL + ... + (G^L)71). Поскольку L и U - строго нижняя и верхняя треугольные матрицы, то правый нижний блок матрицы А~~г есть G"1. А так как он обязан быть неотрицательным вследствие монотонности А, то это означает монотонность Gn. Аналогично из монотонности главных блочных подматриц Аи, которые также являются матрицами положительного типа, следует монотонность блоков Gi,..., Gn_ι. □ Определение 3.13. Представление матрицы А в виде А — В — С называется регулярным разложением, если матрицы В,С являются соответственно монотонной и неотрицательной, т. е. В"1 > О, С > 0. Если вместо последнего условия выполняется - В~гС > 0, то данное представление называется слабо регулярным разложением. Очевидно, что регулярное разложение является слабо регулярным разложением, но обратное неверно. Теорема 3.12 (Варги). Если равенство А — В — С есть слабо регулярное разложение монотонной матрицы А, то для спектрального радиуса матрицы В~гС справедливы соотношения Кроме того, если для слабо регулярного разложения выполняется неравенство (3.67), то А - монотонная матрица. Доказательство данных утверждений легко проводится на основе спектральных свойств неотрицательных матриц В~гС и А~гС Отсюда вытекает следующий результат. Пусть для монотонной матрицы имеются два регулярных разложения А = В^ — С*., к ~ 1, 2, причем матрицы Gi,G2 связаны неравенством С\ < С2. Тогда для спектральных радиусов матриц В71Си* имеет место неравенство
§ 3.3. Свойства монотонных сеточных схем 143 piB^d) < Р(В^С2). (3.68) Определение 3.14. Представление монотонной матрицы А в виде А — Q~l(B - С)Р~Х) где Р, Б и Q - монотонные матрицы, а С - неотрицательная, называется квазирегулярным разложением. Теорема 3.13 (о квазирегулярном разложении). Если равенство А = Q~l(B — С)Р~1 есть квазирегулярное разложение, то для спектрального радиуса матрицы В"1 С справедливы соотношения Доказательство данного утверждения следует из теоремы Фробе- ниуса о спектральных свойствах неотрицательных матриц, к которым относится и В~1С. Ее максимальное по модулю собственное число λ положительное и простое, а соответствующий собственный вектор ζ имеет положительные компоненты. В силу равенства Cz = XBz и следующей из определения 3.14 связи В = QAP -f С получаем соотношение ls~P~lA~lQ~lz — ζ. Последнее означает, что у неотрицательной матрицы P~lA~lQ~l положительный вектор ζ является собственным и, следовательно, ее соответствующее собственное число является максимальным по модулю, положительным и равно piP-iA^Q-1) = j-^ > 0, откуда уже следует необходимый нам результат. О Отсюда аналогично (3.66) получаем следствие: пусть матрица А имеет два квазирегулярных разложения A = Q^(Bk-Ck)P^, k = 1,2, причем дополнительно выполняется неравенство Q^CPC1 < Q^CP} (Q^CPi1 < Q^CPi1); тогда для спектральных радиусов матриц B^lCk выполняется соотношение piB^Ci) < P(B^C2) (piB^d) < р{В-гС2)). Этот факт вытекает из соотношения (3.66) и того, что неотрицательная матрица Pj^lA"lQ^lCk подобна .4~*Q^CkPj^1-
144 ГЛ. 3. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ В заключение данного пункта приведем одно достаточное условие монотонности матрицы, являющееся достаточно конструктивным и хорошо дополняющее теорему Варги о регулярном разложении. Теорема 3.14 (О. Аксельсон, Л. Ю. Колотилина). Пусть для матрицы А существует слабо регулярное разложение, т. е. А = В~С, 2Гх > 0, В~гС > 0. Пусть также существует положительный вектор ν > 0 такой, что справедливо неравенство В"1 Αν > 0. Тогда матрица А является монотонной. Доказательство проводится изящно на основе следующего из условий теоремы соотношения Β~χΑν — (I — B~1C)v > 0. Отсюда получаем векторное неравенство В"1 С ν < ν, которое можно переписать в виде V~1B~1CVe < е или ЦУ-1^""1^^!!^ < 1, где е - вектор из единичных компонент, а V = diag{vi} - диагональная положительно-определенная матрица, порождаемая вектором ν — {v{}. Таким образом, спектральный радиус матрицы В~гС меньше единицы (р(В~1С) < 1) на основе ее подобия с матрицей V~1B~1CV и мы можем записать А"1 = (/ - в~1су1в-1 = [/ + в-1 с + {в-1 с)2 + ...IB-1. А поскольку ряд в квадратной скобке является сходящимся, то матрица А"1 существует и представима в форме произведения неотрицательных матриц, т. е. сама является неотрицательной. D 3.3.2. Оценки решений монотонных систем уравнений. Содержание данного пункта начнем с результата, который при всей своей очевидности имеет фундаментальное значение и может быть назван как теорема сравнения для решений монотонных систем уравнений. Теорема 3.15 (сравнения). Пусть А ~ монотонная матрица, аи^\ и^ - два решения систем с разными правыми частями flf /2, связанных соотношениями упорядочения: AuW=fW, fc = l,2; /(1)>/(2) (/(1)>/(a)). Тогда выполняются неравенства и^ > и^ (и^ > и^). Доказательство этого утверждения следует из того, что вектор разности двух решений ζ — и^ — и^ удовлетворяет системе уравнений Αζ — / ξ f^ - f^ > 0 и в силу соотношения ζ — А"1 / является неотрицательным как произведение неотрицательной матрицы на неотрицательный же вектор. , D
§5.5. Свойства монотонных сеточных схем 145 Практическое значение чаще имеет теорема (ее можно назвать второй теоремой сравнения), являющаяся следствием предыдущей. Теорема 3.16. Пусть векторы и^г\ и^ являются решениями систем уравнений Аи^ = f^k\ k = 1,2, с монотонной матрицей А и правыми частями, удовлетворяющими условиям /(1) = {Л(1) > о}, /(а) = {/|(>):|Л(а)|</<(1)}- Тогда компоненты решений связаны неравенствами Ι«ί2,Ι<«ί·1)ι i = 1,—, JNT. (3.69) Для доказательства введем сначала вспомогательную систему Ай — /> / = {\fi: i}> решение которой й есть неотрицательный вектор, который в силу условий данной теоремы и результата предыдущей удовлетворяет неравенству й < и^. Далее, вектор f^ разобьем на разность двух неотрицательных векторов / - / / . л | 0 /(2) < 0j - и - у о, /|2) > о, 1/^1, /<2)<о. Соответственно разбивается и вектор решения ν№ = и+ — и™, Л«+ = /■+ , Аг2 = /~. Поскольку введенный вспомогательный вектор ΰ представляется в виде й-и+ + и~,тов силу неотрицательности векторов ti+, и~ для всех г очевидны неравенства \и\ \ < Щ < и] \ что и дает необходимый результат. Очевидно, что покомпонентые неравенства (3.69) приводят к соотношениям для норм l|tt(a)lleo<||tt(1,||oo. (3-70) D Методическое значение описанных результатов будет очевидно далее, но смысл их заключается в следующем. Конечной целью в данном случае является оценка равномерной нормы решения системы Аи = / через такую же норму вектора правой части. Она дается очевидным неравенством IHU < IIA-MUI/lleo, (3.71) которое, однако, не может помочь в тех случаях, когда не удается оценить норму обратной матрицы (например, с помощью теоремы (3.10)), Зачастую же удается конструктивно построить некоторую мажорирующую функцию и^ и через нее выписать искомую оценку для г/2).
146 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ Следующим нашим шагом будет переход к рассмотрению систем уравнений, которые характерны для сеточных методов и имеют пересечение с классом монотонных. Их матрицы являются, с одной стороны, сужением монотонных, а с другой - расширением. Сложившегося наименования для них нет, и мы для определенности назовем их псевдомонотонными. Определение 3.15. Пусть 1$(N) означает совокупность индексов ik, 1 < ik < Nf к — l,...,ra, причем πι < Ν; пусть также h(N) ~ {1 < ik < Ny ik £ Iq(N)} - совокупность остальных индексов, а матрица А — {&ij} N-го порядка обладает следующими свойствами: а) для г € Iq(N) строки матрицы являются строками неотрицательного типа - N aiti > 0, Oitj < 0, ам — 5Z a*.J - °> * G To(N), 3 Φ *; i=i б) для г € h{N) строки матрицы А имеют строгое диагональное преобладание - ii = i(ΐα^ΐ- Σ Kil)>*>°> ieh(N). j - 1 зФ* Тогда матрица А называется псевдомонотонной. Очевидно, что если в Ιχ{Ν) строки, кроме свойства б), обладают еще и качеством неотрицательности, то псевдомонотонная матрица А является матрицей положительного типа. Однако в общем случае она не монотонная. Следующая теорема является алгебраической интерпретацией принципа максимума. Теорема 3.17 (принцип максимума). Если вектор правой части системы уравнений Аи = / с псевдомонотонной матрицей удовлетворяет условиям fi < 0, г £ Iq(N), то для компонент его решения справедливо неравенство тах{щ} < тах{ггг}, т. е. их значения не достигают максимума в /q.
§ 3.3. Свойства монотонных сеточных схем 147 Доказательство проводится стандартным образом. Если щ = const для % € /о U hj то справедливость утверждения очевидна. В противном случае рассуждения проводятся от противного: если для некоторого г 6 /о выполняется неравенство щ > тг,х{щ}, то в /0 найдется по крайне А ней мере один индекс j, для которого будет выполняться неравенство (Au)j > О, что противоречит предположению о правой части в условиях теоремы. D Теорема 3,18. Пусть й - неотрицательный вектор такой, что для псевдомонотонной матрицы А выполняются неравенства (Αΰ)ι = fi > Δ > 0, г € Iq, а правая часть уравнения Аи ~ f удовлетворяет условию \fi\ < ε, i £ Iq. Тогда имеет место оценка max{|ui|} < max{|ui|} 4- — max{ui}. (3.72) ieio ieh Δ ieio Для доказательства построим вспомогательный вектор у = и--уй, 7 = ε/Δ> (3-73) который очевидным образом удовлетворяет неравенствам (Av)i<\fi\-jfi<0, ieio, вследствие чего из теоремы о принципе максимума получаем max{fi} < max{vi} < max{|ui|}. ieio ieh ieh Отсюда в силу представления (3.73) для вектора ν имеем max{uj} < max{|u»|} -f 7max{uj}. (3.74) ieh ieh ieio Аналогично можно ввести другой вспомогательный вектор w — —и — 7«? лпя которого так же легко проверяется соотношение {Aw) ι < \fi\~ ifi < О, г Ε Jo, дающее нам неравенство тз.х{~щ} < тгх{\щ\} + 7твх{щ}> ieio ieh ieio естественным образом дополняющее (3.74) до получения требуемой оценки (3.72). D Рассмотренные две теоремы являлись, по сути, подготовительными для обоснования следующего утверждения. Теорема 3.19, Пусть выполняются условия предыдущей теоремы и неравенства |/ί/α^| < ει, г Ε h(N). Тогда для решения системы Аи — } с псевдомонотонной матрицей справедлива оценка
148 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ |u<|-Ki^{ui}+ei)· (з-75) Доказательство достаточно короткое: из исходной системы имеем для всех г неравенство аг,г . . "г,1 3 = 1 3 Φ* откуда в силу определения меры относительного строгого диагонального преобладания 8 для г Ε Д {N) получаем одно из двух возможных соотношений: \ui\ < (1 - <5)max{|wJ} + max] — f, г G Д, \щ\ < (1 - i)max{|uj|} 4- max] —- \> г € Д, отличающихся только расположением максимума в первом слагаемом правой части. Любое из двух последних неравенств в соединении с результатом (3.72) предыдущей теоремы дает необходимую оценку (3.75). D 3.3.3. Оценки решений для блочно-трех диагональных систем уравнений положительного типа. Рассмотрим теперь оценки решений алгебраических систем уравнений с блочно-трехдиагональ- ными матрицами вида (3.25), которые удается получить непосредственно из вида их элементов без привлечения спектральных свойств или вспомогательных мажорирующих функций. Для этого мы применяем сначала представление матрицы А = D — L — U в виде произведения (3.38), где левый множитель есть блочная нижняя треугольная, а правый — верхняя треугольная матрицы. В таком случае мы можем записать систему уравнений как Au=(G- VjG^iG - U)u = /, (3.76) где G — diag{Gi = Di~ LiG^\Ui-\} есть блочно-диагональная матрица блочного порядка N. Разбивая заданный и искомый векторы на N подвекторов / = {/,}, и — {щ}, соответствующих блочному представлению матрицы, и вводя вспомогательный вектор ν = G~l(G — U)u, решение системы (3.76) можно определить с помощью рекуррентных соотношений
§ 3.3. Свойства монотонных сеточных схем 149 Giv% = /, GiVi = /< + Ьм-и г = 2,..., ЛГ, (3.77) un^vn, m^Vi+Gi UiUi+χ, £ = ЛГ-1,...,1. Отсюда можно получить цепочку неравенств для любых из рассматриваемых нами векторно-матричных норм IKII < llOlllMI, Ikll < ΙΙ^γΊΙΙΙΛΙΙ + IIGr^illlk-xll. < = 2,...,JV, Ы<1М1, IWI < Ikll + lIGr^illll^+ill. « = л-ι,-,ι, которая позволяет, в принципе, получить оценки для норм решений непосредственно через нормы правых частей алгебраической системы, если только известны оценки матричных норм для G^1, G^xLi и GjxUi. Для блочно-трехдиагональных матриц положительного типа их можно получить с помощью нескольких лемм. Лемма 3.10. Пусть матрица G = diag{Gi} определяется из разложения (3.76) для матрицы А положительного типа, причем для всех г выполняются условия Die > die, Lie < he, O^e < щеу d. > 0. (3.78) Тогда для величин Qi = HG^Hoo справедливы рекуррентные неравенства 9i < dT1, 9i < (di - hui-xgi-x)-1. (3.79) Если при этом удовлетворяются соотношения di > 2, 1{Щ_г < 1, г = 1,..., Ν, (3.80) то имеют место неравенства Отметим, что в данной лемме и ниже порядки диагональных блоков Di могут быть разные и тогда соответственно в (3.70) векторы с единичными компонентами будут иметь различные размерности. Однако для краткости мы векторы с индексами βι не вводим, используя обозначение е по контексту. Доказательство (3.79) следует из непосредственно проверяемых при условиях (3.78) выражений Gie - Die - LiGjljJi-xe > (di - to-i||Gr-ill)e, (3.82)
150 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ а также применения теоремы ЗЛО о норме матрицы, нормальной к монотонной (отметим, что матрицы G{ являются монотонными вследствие теоремы 3.11). Неравенства (3.81) выводятся из (3.79) по индукции. □ Аналогично может быть получен следующий результат. Лемма 3.11. Пусть матрица G определяется из разложения (3.76) для блочно-трехдиагоналъной матрицы А положительного типа и пусть выполняются соотношения Lie > SiUie, β< > 0, г = 2, ...,Ν - 1, (3.83) Die > U{Li + Щ)е, U > 1, i = l,...,tf. Тогда для величину = j|C?7~xC7"»j|oo справедливы рекуррентные неравенства П<~, П < ai г = 2,..,7\Г-1, ίχ 1 - b^Ti-i (3.84) ai = [ti(l + β»)]"1, &г ~ ai«i· £?слад при этом удовлетворяются условия аг-гЪ{ < aibi+l < 1/4, г = 2,..., iV - 1, (3.85) mo справедливы следующие оценки: Ti<t~\ п<~ 2а\ , τ,<2αίτ^-, t = 2,..-,ΛΓ —1. 1 + л/1 — 4а46,-+1 « + 1 (3.86) Доказательство (3.84) проводится с помощью очевидного неравенства GjxUie < Tie аналогично (3.82): G\e < [(U - Ti_i)s; + ^]?7*е. Отсюда после умножения обеих частей соотношения на GJ получаем рекуррентные неравенства г\ < [£*(1 + $г) — ^ίΤί-ι]-1) в которых для сведения к (3.84) остается ввести обозначения α^ί^. Оценки же (3.86) при условиях (3.85) легко выводятся из (3.84) по индукции. D Подобным же образом могут быть получены оценки для норм ||Gtit||ooi после чего из приведенных выше рекуррентных неравенств для ||ν»||, \\щ\\ можно вывести оценки решений. Мы предложим еще другой, аддитивный подход, позволяющий непосредственно оценить вклад в решение различных подвекторов правой части fi. Для этого представим вектор / в виде суммы f = P + P + - + fN, /* = {#=*.<»/*}, (3-87) т. е. у каждого слагаемого /г подвектор // совпадает с /*, а остальные подвекторы /?,, if φ г, равны нулю. Соответственно аддитивным образом представим решение
§ 3.3. Свойства монотонных сеточных схем и - й1 + й2 + ... + uN, Ай{ = /\ 151 (3.88) и будем оценивать отдельно каждую парциальную составляющую иг — {«?.}■ Для некоторого фиксированного значения г перенумеруем подвекто- ры векторов йг> fl так, чтобы их компоненты uj-, f\ были последними, а система уравнений записывалась в виде Ли = ]\и = (ui,...,iIi_i,iI<+1,...,ujVujV), Ρ = (О,...,О,/j). (3.89) Здесь матрица А имеет следующий блочный вид: А = Г -Di -ьа 0 L 0 -ϋχ D2 0 ·· 0 ι -Ui-2\ 0 -Li-i-Pi.il 1 -Dt+i — Ui+\ \— Li+2 Di+2 1 0 0 -Li | -ui 0 -Ln 0 -t/jv-il 0 •On I 0 | Di J (3.90) Она может быть представлена также в форме блочной матрицы второго порядка и затем факторизована: (3.91) Здесь Αι - блочно-трехдиагональная матрица блочного порядка N — 1, Li nUi - блочные столбец и строка, G - блочно-диагональная матрица с диагональными блоками Л,, Gi, а матрица Gi имеет вид Li -Ui Di = -Li 0 Gi G-1 Ai 0 -Ui Gi Gi = Di- LiA^Ui =Di- Lid-xUi-ί - UiGi+1Li+1, (3.92) где матрицы (?i< и (?,', в свою очередь, определяются следующими "прямыми" и "обратными" рекуррентными соотношениями:
152 ГЛ.З. АЛГЕБРАИЧЕСКИЕ СВОЙСТВА СЕТОЧНЫХ УРАВНЕНИЙ G\ — Du G{f = D{ — LifG^Ui'-ι, t'= l,...,t — 1, (3.93) Gi> =GN = DN, Dv-Ui'G^Li.+u t' = tf,tf-l,...,i + l. Для матрицы Gi при условиях (3.78) аналогично лемме 3.10 доказывается неравенство HGT1 II < (* - Uui^WG^W - и+1щ\\6-^\\У\ (3.94) из которого при выполнении соотношений (3.80), характерных во многих прикладных задачах, получим следующую оценку: ||С, ||ee<^2--T--JV_. + J - N + 1 ■ (3-95) Для ее вывода необходимо применить неравенство (3.81) для нормы матрицы С{\ и доказать аналогичный результат для G~^x (||Gf+illoo < N-i \ N-i+l)· Проведенные выкладки мы можем заключить следующей формулировкой. Лемма 3.12. Пусть й% = {й*·} - определенное в (3.87)} (3.88) парциальное решение алгебраической системы уравнений с блочно- трехдиагональной матрицей положительного типа. Тогда для его подвекторов справедливы оценки iHlloc < испиши, (3.96) и: i 11 г- \\П-1 ТТ. .11 ... \\П~^ |оо llej+ill.» < ΙΙ^ϋί+ίΙΙοο-ΙΙ^χ^+ιΙΙβοΙΙδϋΙβο, j = i + i,...,N. Если матричные блоки удовлетворяют неравенствам (3.80) uai, bi < ~, то имеют место неравенства 411» < -—ϊΗ-^ΙΙΛΙ i(N -i + 1), Ν * + 1 i + j + V 1|«{+,-||ео < .. , Τ, jHlloo, j = l,...,N-i-l, (3.97) ΙΚ,-ΙΙοο < ^Klloo, i = i i-i- Доказательство первого из (3.96) неравенств следует из представления й\ = Gi fi решения системы (3V89) с учетом разложения (3.91)
§ 3.3. Свойства монотонных сеточных схем 153 матрицы (3.90). Остальные два неравенства в (3.96) получаются с помощью "прямой" факторизации первого диагонального блока А\ матрицы Αχ из (3.91) (Gi> из (3.93) совпадают с Gv из (3.77) для г' = 1,..., г — 1) и "обратной" факторизации второго диагонального блока А\ ': Л<2) = (# - и^)6-г(6 - Ь(2)), (3.98) где первый множитель есть блочная верхняя треугольная матрица, последний множитель — нижняя треугольная матрица, a G — diag{(5i} есть блочно-диагональная матрица, блоки которой определяются из рекуррентных соотношений (3.93). И наконец, неравенства (3.97) выводятся с помощью применения к (3.96) оценок (3.86), (3.95), а также оценок для \\GJ 1Li\\OC3, легко получаемых аналогично тому, как это сделано в лемме 3.11. D Теперь можно сформулировать итоговый результат данного пункта. Теорема 3.20. Для подвекторов решения и ~ {щ} алгебраической системы уравнений с блочно-трехдиагональной матрицей А положительного типа справедливы оценки N ΙΙ«<ΙΙοο<ΣΐΙ«ίΐΙοο, (3.99) i=i где для каждого из слагаемых й\ при условиях лемм 3.10-3.12 выполняются неравенства (3.96), (3.97). Доказательство этого утверждения тривиально, а практические его применения для различных частных случаев будут рассмотрены в следующей главе при анализе погрешностей приближенных решений краевых задач. Заметим в заключение, что полученные неравенства дают фактически оценки устойчивости в равномерной норме для сеточных систем уравнений рассматриваемого здесь класса.
ГЛАВА 4 СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Данная глава несет основную теоретическую нагрузку в том смысле, что предыдущие давали или конструктивные подходы по методам аппроксимации, или вспомогательный (хотя и содержательный сам по себе) материал о свойствах сеточных решений и операторов. Вопросы существования и единственности решений сеточных уравнений фактически исчерпываются алгебраической проблемой невырожденности матриц и в простейших случаях нами уже рассмотрены, а в более сложных, связанных с аппроксимациями систем дифференциальных уравнений, выходят за рамки данной книги. Исторически исследования свойств приближенных решений дифференциальных уравнений разностными разделяются на задачу-минимум и задачу-максимум. Первая связана с анализом устойчивости и самого факта сходимости разностного решения к точному при стремлении шагов сетки к нулю, а вторая - с более тонкой проблемой оценки погрешности разностных решений через величины, определяемые способами дискретизации и свойствами исходной задачи. Мы останавливаемся на втором подходе, позволяющем получить более глубокие и практичные результаты. Оценки погрешности можно получать в различных нормах, и нами выбираются наиболее естественные - евклидовые и равномерные, дающие, с одной стороны, простой аппарат исследований, а с другой - охватывающие основные задачи математической физики. Техника анализа требует привлечения только алгебраических свойств матриц и аппроксимационных характеристик сеточных (конечно-разностных или конечно-объемных) уравнений. Большое практическое значение имеет вывод оценок погрешностей по априорно известным данным исходной задачи или по апостериорной информации, получаемой в ходе реализации численного решения (в том числе с учетом погрешностей округлений). Однако эти вопросы требуют более глубокого изучения как свойств дифференциальной задачи, так и получаемых в вычислительном процессе величин.
§^.ί. Устойчивость сеточных уравнений 155 §4.1. Устойчивость сеточных уравнений. Связь ошибок сеточного решения и погрешности аппроксимации Мы напомним операторные формулировки исходных дифференциальных и аппроксимирующих их сеточных уравнений. Краевую задачу записываем в форме системы Lu{x) ~ /(ж), х € Ω, 1и{х) = д(х), χ 6 Г, (4.1) где L, I - дифференциальные операторы, f,g- известные функции непрерывного аргумента χ = (χι,..., жд), а Я - размерность расчетной области. Соответственно записывается и сеточная краевая задача: (Lhvh)Xb = (fh)9h, хк е ПА, {lhvh)xu, хк е ГЛ, (4.2) где Lk, Ik и fh, £А ~ сеточные аппроксимации дифференциальных выражений и правых частей из (4.1), a vh - вектор сеточного решения, определенного в узлах сетки хк G Ω& = Ω^ U Гд. Здесь Ω^ - множество узлов, лежащих внутри расчетной области Ω, а Γ/j ~ совокупность граничных или околограничных узлов, находящихся или на самой границе Г, или вблизи нее. Далее для краткости компоненты векторов vh и других, или значений сеточных функций в узлах, будем обозначать через vj, а в записи к € Qh или /г Ε Γ\ под Ω^, 1\ - понимать совокупности узловых номеров из соответствующих множеств. Количество узлов в Ω/j, Γή обозначаем через Nq, N?, а число узлов в Ω^ - через N = Nq -f JVp. Если обозначить через uh вектор размерности, равной количеству узлов сетки, компоненты которого суть значения решения дифференциальной задачи в узлах сетки Ω^, то для него справедливы равенства (Ьь«Л)* = /£ + (^)*, *€ПЬ, (4.3) (Ь«А)* =$£ + «)*, кеГ>» где ψ1} ш фд - погрешности аппроксимаций дифференциальных уравнений внутри расчетной области Ω и краевых условий на границе Г. Определение 4.1. Вектором (сеточной функцией) погрешности сеточного решения называется вектор
156 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ zh = uh - vh, (4.4) каждая компонента которого z% есть разность точного решения исходной дифференциальной задачи в k-м узле сетки и соответствующей компоненты разностного решения. Поскольку рассматриваемые операторы Lh и /д являются линейными, путем простого почленного вычитания уравнений (4.3) и (4.2) мы получаем фундаментальные соотношения {Lhzh)h = №%)к, кеПн, (hzh)k = (V£)*, fcerfcl устанавливающие, что ошибка разностного решения удовлетворяет "своей" системе сеточных уравнений, правая часть которой есть погрешность аппроксимации. Напомним, что сеточная задача (4.2) аппроксимирует исходную дифференциальную задачу (4.1) на решении и с порядком п, если существуют положительные постоянные /i, M/, Mg такие, что для всех h <h выполняются неравенства №}\\nh < Mfhn>, U*\\rh<Mah»; (4.6) где 0 < η — min(n/,n5), || · ||пЛ и || * ||г\ - какие-либо векторные нормы в подпространствах размерности Nq и JVr-, h означает максимальный шаг сетки, а М/ и М9 не зависят от h. Определение 4.2. Сеточная задача (4-Ю называется устойчиво^ если ее решение существует и единственно, о для всех h < h при достаточно малом h выполняется неравенство \\vhhk<Cf\\fh\\oh+Cg\\gh\\rh, (4.7) где Cf, Cg - не зависящие от h положительные постоянные, а II' \\uh ~~ векторная норма в пространстве размерности N. Подчеркнем, что здесь может подразумеваться любая из векторных норм, так как в конечномерных пространствах все они эквивалентны, т. е. предел по норме равносилен покомпонентным соотношениям *£ -> 0. Определение 4.3. Сеточное решение системы (4-Ю сходится к решению исходной дифференциальной задачи (4-1), если при h -> 0 имеет место предел \\zh\\fth —У 0.
§^.i. Устойчивость сеточных уравнений 157 Следующее определение является более сильным в том смысле, что не только устанавливает сам факт сходимости, но и дает оценку погрешности. Определение 4.4. Сеточное решение системы (4·%) сходится к решению дифференциальной задачи ЦЛ) со скоростью порядка п} если для h < h имеет место неравенство \\zhUh < Mhn, (4.8) где Μ -не зависящая от h постоянная. Следующее утверждение, при всей его кажущейся тривиальности в наших рассмотрениях, имеет фундаментальный характер и связывается с именем Лакса, хотя сам автор формулировал аналогичный результат для эволюционных задач и в более общих банаховых нормах. Теорема 4.1. (теорема эквивалентности). Если сеточная система устойчива и аппроксимирует дифференциальную задачу7 то сеточное решение сходится к точному решению. Более того, при выполнении неравенств (4-6) и (4-V справедлива оценка \\zh\\uh < CfMfhn' + CgM3hn', (4.9) т. е. порядок погрешности η = min(n/,nff) равен порядку аппроксимации. Доказательство очевидным образом следует из применения оценок (4.6) и (4.7) к уравнению для погрешности (4.5). Отметим, что имеет место и более тонкий результат, на котором мы не останавливаемся; при наличии аппроксимации устойчивость является не только достаточным условием сходимости, но и необходимым. Перейдем теперь к более стандартной алгебраической записи сеточной системы и дадим несколько иную интерпретацию изложенных выше положений. А именно перепишем сеточную задачу (4.2) в виде одного векторного уравнения Αν = /, (4.10) где А, г», / - квадратная матрица и векторы порядка N. Способы их определения могут быть разные: в одном случае ν может быть vh из (4.2) и N — iV, а в противоположном (после исключения граничных значений v%} k Ε Г^, из системы) получим N — Nq и уравнения будут соответствовать только внутренним узлам сетки из Ω^. Вектор погрешности аппроксимации φ в соответствии с (4.10) определяется из уравнения
158 ГЛ. 4· СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Au^f + ψ, (4.11) где и - вектор размерности N с компонентами, равными значениям точного решения дифференциальной задачи (4.1) в соответствующих узлах сетки. Определяя вектор погрешности сеточного решения ζ размерности N аналогично (4.4), из равенств (4.10) и (4.11) получаем аналог системы (4.5) Αζ = φ, (4.12) откуда при невырожденности матрицы А имеем выражение ошибки решения через погрешность аппроксимации ζ = А~гф. (4.13) Отсюда для любой из векторных и согласованной с ней матричных норм следует оценка IN < ΙΗ^ΙΗΜΙ· (4.14) Подчеркнем, что любое из равенств (4.10)^(4.13) понимается как семейство уравнений при различных шагах сетки. В частности, теоретический интерес представляет асимптотический случай h -> 0 (хотя для каждой конкретной сетки порядок N разностной системы остается конечным). Вытекающее из (4.10) аналогичное (4.14) неравенство IN <Ρ_1ΙΙ· ΙΙ/ΙΙ (4.15) в сравнении с (4.7) очевидным образом устанавливает, что условие |И-1|| < С, (4.16) где С - не зависящая от h константа, означающее равномерную по h ограниченность норм обратной матрицы, эквивалентно данному в определении 4.2 понятию устойчивости. В частности, если имеется эквивалентная (4.6) оценка погрешности аппроксимации №11 < Mhn, (4.17) то из нее и из (4.16) вытекает неравенство для ошибки решения 1И1 < cMhn. (4.18)
§^.£. Оценки погрешностей в евклидовой метрике 159 Нашей дальнейшей задачей в этой главе будет изучение количественных оценок для конкретных сеточных краевых задач в различных нормах, с кратким анализом возможных путей повышения точности. С методологической точки зрения полезно акцентировать тот факт, что мы получаем оценки абсолютной ошибки разностного решения, а не относительной. Для последней тоже нетрудно вывести неравенство, воспользовавшись очевидным соотношением ||/|| = \\Av\\ < \\А\\ · ||и||. Отсюда с помощью (4.14) при естественных предположениях ||/|| φ О, ||и || Φ 0 следует оценка Ы-Ш U " 11/11 ■ Здесь дробь в левой части можно интерпретировать как относительную ошибку сеточного решения, а в правой - как относительную величину погрешности аппроксимации. Полученное таким образом неравенство не представляется конструктивным или оптимистичным, так как для типичных сеточных задач число обусловленности матрицы А имеет порядок 0(h~2). § 4.2. Оценки погрешностей в евклидовой метрике Данный параграф касается исследований сеточных систем с симметричными или симметризуемыми матрицами, для которых величина ЦЛ"1!^ определяется через собственные числа, а последние или вычисляются точно в простейших случаях, или оцениваются с помощью рассмотренных в предыдущей главе способов. Изложение материала мы дадим в иерархической последовательности: сначала рассмотрим простейшую методическую задачу Дирихле для уравнения Пуассона на равномерной сетке (расчетная область - отрезок, квадрат или куб, в зависимости от размерности исходной задачи), затем постепенно проанализируем влияние на оценки погрешности со стороны различных факторов - неравномерность шагов сетки, наличие различных граничных условий, непостоянство коэффициентов дифференциальных уравнений и изменение конфигурации геометрии области. 4.2.1. Задача Дирихле для уравнения Пуассона на равномерной сетке. Выпишем систему од номерных разностных уравнений
160 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ ~{AhV)i ' ""Ι? Л' (4.19) i = l,...,JV; t/0~u0) vjv+i =wjv+i. Как мы уже видели раньше (см. (1.9)), погрешность аппроксимации этой задачи оценивается неравенством Ш < ^М4, (4.20) где М$ - максимум модуля четвертой производной от решения в расчетной области. После исключения величин vq, ν^+χ мы получаем систему уравнений iV-ro порядка вида (4.10) с матрицей А = ^Та, собственные числа которой при достаточно малых h оцениваются снизу величиной λι ~ (к/(Ъ — а))2 (см. (3.52)), где Ь — а = /i(iV + 1) - длина расчетной области для дифференциальной задачи. Следовательно, для евклидовой нормы обратной матрицы справедлива оценка \\А-% *№ и мы можем применить оценку (4.18). Но здесь уместно сначала сделать отступление. Определяя "классическую" векторную норму погрешности для ψ = {φι} из (4.20) ,N v 1/2 мы получим порядок 0(/ι3^2), не совпадающий с величиной каждой компоненты. Чтобы избежать этого неудобства, отмасштабируем векторную норму введением множителя h: f Ν ν ι/2 h2 \\ФЬк= (Σ>#) $ ΐ2Μ4(6"α)' (4*21) Это означает, что "взвешенная сеточная евклидовая" норма ЦгЦгл погрешности решения разностной системы (4.19) есть величина 0(h2) при ограниченности четвертых производных решения дифференциальной задачи. Данный результат следует из очевидного неравенства 1И1гл < ||-Α_1||2/ι · \\Ф\\2Н и легко проверяемого факта Ц-А*"1^* = Ц^"1!^, поскольку матричная норма ||Л~Х||2Л по определению есть
§ 4·%· Оценки погрешностей в евклидовой метрике 161 it л-iii ЛИ lxhh\ а векторные нормы | [Л"1 ж Игл и ЦжЦгл отличаются соответственно от ||Л_1ж||2 и ||а:||2 на одинаковый множитель. Такой же результат получается и для двумерной сеточной системы (4.22) {Av)u = ((ΑΙ + Α»)ν) = hj, i = 1,..., Ν.; j = 1,..., Ny; соответствующей прямоугольной равномерной сетке с шагами Л, = (Ь - «)/W* + 1), hy = (с - d)/(Ny + 1). Погрешность аппроксимации данной разностной задачи, очевидно, оценивается величиной hM < ~М^Х + ^Μ4)ί,. (4.23) Здесь и далее МкуХ и М*>у ~ максимальные значения производных А;-го порядка по #, у от точного решения. Как отмечалось в предыдущей главе, собственные значения матрицы системы выписываются точно в силу перестановочности Ах% Ауу и для нормы обратной матрицы получаем ΐμ-1Ιΐ2Λ = ΐμ-1|2< \Ь-а) + \c-d) (4.24) Естественным определением сеточной евклидовой нормы будет Ν* η1/2 Uhh = hxhyJTWiA , (4.25) i^-.i -J переходящей при /ι 4 0 в норму пространства Ьг для функций непрерывного аргумента. Отсюда из соотношений (4.23), (4.24) получаем INbh = 0(/ι2), как и для одномерного случая. При этом простой взгляд на выражение для погрешности (4.23) подсказывает, что при необходимости обеспечения заданной точности разностного решения шаг сетки можно брать больше вдоль той из координат, вдоль которой решение "более гладкое" (имеет меньшую по абсолютной величине производную).
162 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Замечание 4.1. Аналогичные рассуждения и выводы получаются и для трехмерной задачи Дирихле в параллелепипеде, которые мы только коротко обозначим: в сеточной системе (4.22) добавляется третий член (Aflv)ijik, соответствующий второй разности по ζ, что приводит к появлению в погрешности аппроксимации третьего члена ви- h2 да j^M^^z] аналогично изменяются выражение для минимального собственного числа матрицы А и оценка для ЦЛ"1^; после введения сеточ- ной нормы \\il>\\2h ~ [hxhyhz Σ ^?,j,jk) получаем оценку для погреш- ности решения \\z\\2h = 0(h2).· Теперь для модельной двумерной задачи Дирихле в прямоугольнике рассмотрим девятиточечную аппроксимацию повышенного порядка, которая в соответствии с (1.42) вместо (4.22) дает систему ((Α.Α*-*±!&Α.ΑΛυ\ -f..+(K*i_,£*£) [\Ah Ah 12 АьАн)")^-и3+{идх2 + 12ду2)^ i = l,...,Nx- j = l,...,Ny; (4.26) V0,j=U0,j, Vpr, + 1>j - Uifl+lij, vNi,s+1 =UNiy+1, Vifi = Uifi- Погрешности аппроксимации этих выражений, как было показано в § 1.2, удовлетворяют неравенству №,il < |(ΛίΜβ>β + h*Mt,y). (4.27) Собственные числа матрицы системы уравнений выписываются в явном виде (см. (3,63)), откуда для норм обратной матрицы следует ■\А-1\\*< 2 i [b-aj 2 / ч 2 π4 hl+hl У c-dj 12 (δ - α)2 (с-d)2 J -ι (4.28) Используя теперь двумерную сеточную евклидову норму (4.25), из (4.27) и (4.28) легко получаем, что при ограниченности производных шестого порядка от решения уравнения Пуассона ошибка сеточного решения задачи (4.26) есть величина порядка 0(fr4), а более конкретно, удовлетворяет неравенству INbk < fi\\A-%(h*Mt,B + h4yMe>y). (4.29) Очевидно, что если в правой части уравнений (4.26) вторые производные от / аппроксимировать вторыми разностями (это актуально,
§ 4-2. Оценки погрешностей в евклидовой метрике 163 когда функция правой части задана только значениями в узлах), то это приведет к появлению в (4.27) дополнительных членов 1 i\u4^f ^d4f\\ -—max< \hz^r—7 + Κτγύ] ?, 144 χ,ν \\ хдх* уду4\) что, однако, не изменит четвертого порядка в оценке погрешности (4.29). Отметим также, что в соответствии с (1.45), (1-46) в случае квадратной сетки (hx = hy) система разностных уравнений (4.26), при незначительном изменении правой части, имеет погрешность аппроксимации О(ft6) и, следовательно, ошибка разностного решения - тоже шестого порядка (в предположении дополнительной гладкости функций ии/). Замечание 4.2. Поскольку для трехмерного случая на равномерной сетке была построена 19-точечная разностная аппроксимация уравнения Пуассона с погрешностью четвертого порядка, то из (1-54) мы получаем прямой аналог системы (4.26) для задачи Дирихле в параллелепипеде. Собственные числа и норма обратной матрицы, как и в двумерном случае, оцениваются по спектру одномерных разностных операторов, и в итоге для евклидовой сеточной нормы ошибки имеем оценку 1М|аЛ = 0(h4). В качестве следующего шага по усложнению разностных задач рассмотрим изменения вывода оценок погрешности вследствие отличия геометрической формы области от прямоугольника в двумерном случае и параллелепипеда - в трехмерном. Будем предполагать, что по- прежнему решается задача Дирихле для уравнения Пуассона, а граница, расчетной области проходит по координатным линиям или плоскостям декартовой сетки. При этом для всех рассмотренных в данном параграфе разностных уравнений погрешности аппроксимации на равномерных сетках останутся теми же. Главное отличие в возникшей ситуации состоит в том, что сеточные операторы теперь не имеют явных выражений для собственных чисел. Однако в силу экстремальных спектральных свойств симметричных матриц для пятидиагональных матриц в двумерном случае и семидиагональных - в трехмерном (дающих аппроксимации О(h2)) собственные числа легко оцениваются через результаты для одномерных задач (см. (3.36)) и в итоге имеем ||Л_1||2 < С, где постоянная С не зависит от ft. Отсюда уже следуют такие же по порядку оценки погрешности решения \\ζ\\^η — 0(ft2), что и для канонических областей (легко проверить, что этот результат сохраняется для более
164 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ общих - полигональных - областей, когда их границы могут проходить и по диагоналям сетки, а требуется только, чтобы они пересекали координатные линии в узлах). Отметим, что минимальное собственное число матрицы А оценивается по "наихудшим" горизонтальным и вертикальным линиям сетки, содержащим наибольшее число узлов. Если обозначить Nx = maxj{iVJ}, Ny = maxi{iV?}, где iVJ, Nf, - количества узлов в j-й горизонтальной и г-й вертикальной линиях, то получаем С = [min{A(A)}l * < 7Г2 7Г2 + h%{N9 + l)* Κ*{Νν + 1) В геометрической интерпретации это означает, что результат для полигональной области получается из оценки погрешности для описанного (минимального) прямоугольника. Что же касается схем повышенной точности типа девятиточечной разностной схемы (4.26), то здесь имеются формальные трудности. Поскольку матрицы 4J и ij в непрямоугольной области неперестановочны, то матрица системы оказывается несимметричной и для оценки евклидовой нормы уже надо привлекать сингулярные числа. 4.2.2. Влияние смешанных граничных условий. Рассмотрим сначала одномерную разностную краевую задачу, отличающуюся от (4,19) только тем, что условие на правой границе записывается в виде ^±1^Л=д. (4.30) Это уравнение аппроксимирует условие Неймана ^ = ц с погреш- ■ 2 ностью V'iv+i, которая оценивается величиной ^Мз, если только граница находится в серединной точке xn-\-i/2 последнего интервала сетки, и величиной ~Мг в любом другом случае. Если из iV-ro уравнения системы с помощью равенства (4.30) исключить переменную vjv+i> то получаемая матрица представляется в форме А = ^Ть, а ее собственные числа выражаются с помощью (3.54), Компоненты вектора погрешности аппроксимации при этом оцениваются неравенством (4,20), кроме последней, для которой имеем h2 1 \Φν\ < —M4 + ^!^JV-hll· Спектральная норма обратной матрицы теперь оценивается величиной
§ 4·%· Оценки погрешностей в евклидовой метрике 165 м-Ч1,<4(^)1, в четыре раза большей, чем для задачи Дирихле. Применяя, как и ранее, сеточную евклидовую норму "с весом /ι", получаем для ошибки разностного решения оценку Таким образом, порядок ошибки будет определяться погрешностью аппроксимации краевого условия: ЦгЦгл = 0(h2) при использовании центральной разности и \\z\\2h — 0(h) в противном случае. Если условие Неймана задано на обоих концах расчетного отрезка, то матрица системы А = ^Тс будет вырождена (см. (3.55)) и исследование ошибок потребует специальных подходов, на которых мы останавливаться не будем. Рассмотрим теперь полигональную область, на различных частях границы которой заданы условия Дирихле или Неймана. Будем предполагать, что участки границы с условиями 1-го рода пересекают линии сетки только в узлах, а с условиями 2-го рода параллельны координатным осям. При этом условия Дирихле аппроксимируются точно, а условия Неймана - с помощью центральных или односторонних разностей. Минимальные собственные числа матрицы получаемой системы будут оцениваться через спектры "наихудших одномерных задач" на горизонтальных и вертикальных отрезках сеточных линий, ограниченных точками их пересечения с границей области. Вспомогательные одномерные разностные задачи могут быть разных типов - Дирихле, смешанные и даже Неймана. Но поскольку мы основываемся на применении неравенства (3.50) - следствия экстремальных спектральных свойств симметричных матриц (роль А и В здесь играют сеточные операторы вида А£, А\ из (4.22)), на рассматриваемые двумерные задачи приходится наложить следующее ограничение: нельзя допустить одновременное существование горизонтальной и вертикальной одномерных задач Неймана, т. е. лежащих внутри области отрезков сеточных линий, ограниченных с обоих концов точками границы с условиями 2-го рода. В такой ситуации минимальное собственное число системы мы можем оценить снизу только нулем. Во всех остальных случаях оценки погрешности разностных решений выводятся без труда и оказываются первого или второго порядка, как и для смешанной одномерной задачи. Коснемся коротко условия 3-го рода |^ + βη = 7> гДе производная понимается по внешней нормали к границе области, и рассмотрим для
166 ГЛ.4· СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ краткости только соответствующее разностное уравнение для правого конца отрезка одномерной задачи: -^~ — + β\αυΝ + (1 - a)vjv+ij = 7· Здесь 0 < a < 1 - множитель, проистекающий из интерполяции, когда граница области лежит между точками сетки χχ и χν+ι· Если с помощью последнего равенства исключить неизвестную υ^τ+ι из J\T-ro уравнения системы вида (4.19), то получаемая матрица А будет почти совпадать с ~Ть, отличаясь только величиной нижнего диагонального элемента: bN - 2 - 1+X^f!a). Очевидно, что при неотрицательных β (это как раз соответствует математически корректным краевым задачам для дифференциальных уравнений) и достаточно малых h будет выполняться условие 1 < блг < 2, из которого следует, что собственные числа матрицы системы будут промежуточными между теми, которые соответствуют условию Дирихле и условию Неймана на правой границе отрезка. Отсюда и оценки погрешности разностных решений оказываются того же вида, что и рассмотренные выше. Это утверждение относится и к двумерным смешанным краевым задачам, имеющим на части границы условия Ньютона. 4.2.3. Эффекты переменных коэффициентов и шагов сетки. Рассмотрим сначала, какова будет норма ошибки сеточного решения, если компоненты погрешности аппроксимации имеют различные порядки в отдельных узлах, Пусть, например, в точке с номером у правая часть уравнения (4.19) задана с погрешностью ф^ и, кроме того, величины граничных значений uq, ujv+i заданы с погрешностями ψο, Ψν+ι· Тогда для ошибки решения получается оценка и»<(Ц*),[(£ц)Чм^»>,^>'р Отсюда видно, например, что при ψ- = 0(h) порядок \\z\\2h будет не лучше 0(h)3//2: а если ψο — 0(ha) или Ψν+ι — 0(/ια), то оценка ошибки решения в данной норме становится порядка O(hoc~3j/2)y т. е. оценка величины \\ζ\\2η становится даже бесконечной при а < 3/2 Ввиду определения сеточной евклидовой нормы (4.25) в двумерном случае эффект отдельных дополнительных погрешностей будет другим.
§ 4·%· Оценки погрешностей в евклидовой метрике 167 Так, если в системе (4.22) значения fk,i и г*о,о заданы с погрешностями Фк ι и Vo,0) to неравенство для ЦгЦгл принимает вид \\*Ы<\\А~%Н ^M^^M^ + h.^i{,\^^ 1/2 Это уже означает, что если ψζ t — 0(h), то второй порядок ошибки решения остается, а при тро,о = 0(ha) получается \\z\\2h — 0(/ια~1). Перейдем теперь к рассмотрению одномерной задачи Дирихле для уравнения диффузии на неравномерной сетке. Разностная аппроксимация и ее погрешность ψι в данном случае описываются формулой (1.10), а границы спектра матрицы А - неравенством (3.60). Так как матрица А здесь несимметрична, но симметризуема, т. е. А — D~lA} D = diagj fc<+2fl f> A - Л', то норму матрицы Il-Α""1)^ естественно оценить через "обычные" евклидовы нормы симметричных матриц: U hh=™£\ (Βχ,χ) ) = ^1г:^гИ}^«л-1||»-1№' y = Dx- у^о {(y,y)(D x2/,2/)J Для матриц Л, D с помощью оценок собственных чисел,- аналогичных (3.60), получаем \\л-% < {Ν^/Η> №^ = к> откуда для сеточной евклидовой нормы следует результат, аналогичный предыдущему: 1№.<£^МЬ<^1#Ь. Отсюда и из вида погрешности аппроксимации ipi в (1.10) следует, что ошибка разностного решения будет порядка 0(h) на неравномерной сетке и 0(h2) на равномерной (естественно, при достаточной гладкости коэффициента диффузии). Нетрудно заключить далее, что для смешанной краевой задачи с неравномерной сеткой и переменными коэффициентами оценка может быть выведена аналогично с помощью симметризации и использования результатов для матрицы Ть с постоянными коэффициентами.
168 ГЛ.4. СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИИ И наконец, ясен переход к двумерной задаче диффузии. Матрица системы А, элементы которой определяются разностным уравнением (1.48), симметризуется после умножения на диагональную матрицу В=Ц5+Ь№}, A^D^A, A^A'. Разумеется, что аппроксимации граничных условий не должны "портить" характер системы. Так, например, допускается наличие краевых условий 1-го рода на криволинейной границе расчетной области, но при этом нужно использовать аппроксимацию Коллатца вида (1.63), а не Шортли-Уэллера (1.64), так как в последнем случае свойство сим- метризуемости будет утеряно. После симметризации нижняя граница спектра пятидиагональной матрицы А оценивается с помощью минимаксных свойств через собственные числа слагаемых трехдиагональных "одномерных" матриц, и результаты получаются аналогичными предыдущим. § 4.3. Равномерные оценки погрешностей Если объектом внимания в предыдущем параграфе были симметричные или еимметризуемые сеточные уравнения, для которых явно находятся или оцениваются собственные числа, то ниже мы будем рассматривать только монотонные системы, в которых для обратных матриц удается оценить кубические, или равномерные, нормы. Эти две разные алгебраические техники применимы одновременно, естественно, только к стилтьесовым матрицам, обладающим свойствами как монотонности, так и положительной определенности. Мы начнем анализ с простейших задач, для которых удается применить теорему 3.10 о норме матрицы, обратной к монотонной. Вопрос здесь заключается в конструктивном нахождении положительного вектора у, для которого выполняется условие Ау > ае, а > 0. 4.3-1, Одномерные краевые задачи для уравнения Пуассона. Рассмотрим одномерную разностную задачу Дирихле для уравнения Пуассона на неравномерной сетке а = xq < х\ < ... < xn+i = b: 2vi-! 2vi 2νί+ι . ΟΊ4 " ь—ΤϊΓΓτ—Τ + ΊΓϊ> h (h Mh \ = Λ' » = 1, »-, Ν, (4.31) hi-i(hi + hi-i) hihi-i Μ"» + Λ._ι) трехдиагональная матрица А которой после исключения vq, ν^ν+ι принимает вид (3.3) с элементами а* = h (лн-/и- )' ^* ~ ни- ' Ci ~ h.fh.lh.—у и погрешность аппроксимации удовлетворяет неравенству
§^.5. Равномерные оценки погрешностей 169 Μ < ^m = maxj - з~~^ + Ϊ2 4 Г В качестве "пробного" вектора берем сеточную функцию с компо нентами 4*i ~ ψ)2 (b-a) обеспечивающими выполнение условий »< = *- ,[ Л » * = 1,-,JV, (4.32) ϋί/ϋοο = 1, >ty > ае, α (Ь-а)> Отсюда из равенства ζ — А~гф и вытекающего из теоремы 3.10 неравенства ||-А||оо < {Ь — а)2/8 получаем сразу равномерную оценку погрешности для задачи (4.31): IWloo < (Ь - а)2фт (4.33) с первым порядком для неравномерной сетки и вторым для равномерной. Если в краевой задаче (4.31) заменить на правом конце отрезка граничное условие Дирихле на Неймана (vn+i —vn — hpfg), то необходимый пробный вектор также легко строится: yi = l-((^~l, i = l,...,N, с = а + 1 + у/1-2(Ъ-а), и он удовлетворяет условиям Ау > ае, а = /а^с\ъ* Отсюда для нормы ошибки получаем оценку !N!oo<(a-c)2|HU имеющую тот же характер, что и (4.33). 4.3.2. Двумерные разностные уравнения Пуассона. Остановимся теперь на двумерных разностных уравнениях Пуассона, определяемых пятиточечными аппроксимациями (1.13) на неравномерной прямоугольной сетке и (1.14) на равномерной. Будем считать, что расчетная область располагается внутри прямоугольника a<x<b, c<y<d, что граница ее может быть криволинейной, а граничные условия (предполагаются только 1-го рода) аппроксимируется или по методу Коллат- ца, или по методу Шортли-Уэллера. Матрица А рассматривается для
170 ГЛ, 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИИ систем, получаемых после исключения переменных в граничных узлах сетки. Что касается пробного вектора в данном случае, то он конструируется просто: Vi'j~1 (Ь-о)а (d-c)2 ' *' jeilh, (4.34) и для него легко проверяются условия ||y|U = l, Ау>ае, a = j^ + JJ1^- (4-35) Отсюда определяются норма обратной матрицы ЦЛ"1!^ < &~~г и равномерная оценка погрешности разностного решения [(Г^+(^Г«~· (4-эд 14- Ч \ которая выглядит внешне вполне естественно. Действительно, при использовании аппроксимации Шортли-Уэллера в околограничных узлах мы имеем Ц^Цоо — О [К) на произвольной неравномерной сетке и ошибка разностного решения будет также величиной первого порядка. Однако в случае аппроксимации Коллатца для околограничных узлов в соответствии с (1.63) погрешность φ формально есть величина 0(1), т. е. норма Ц^Цоо и, следовательно, ||ζ||οο не стремятся к нулю при h -> О (эту ситуацию мы исследуем позже с помощью более тонкого подхода). Перейдем теперь к девятиточечным уравнениям Пуассона типа "ящик" (1.42), аппроксимирующих задачу Дирихле в области, граница которой проходит по координатным линиям. Сеточная функция (4.34) в этом случае также порождает пробный вектор у, удовлетворяющий условиям (4.35). Отсюда будет справедлива и оценка (4.36) для равномерной погрешности решения. А поскольку данная разностная схема - четвертого порядка, то сразу получаем ||z||oo = 0(h4). Естественно, все эти рассуждения справедливы только при выполнении неравенств (1.44), обеспечивающих монотонность системы разностных уравнений. Если рассматривается смешанная краевая задача, то для прямоугольной области возможно по аналогии конструирование пробного вектора и построение оценок проторенным выше путем. Однако при более сложной конфигурации границы применение такой техники уже затруднительно, но здесь выручает более общий подход к исследованию.
§^.5, Равномерные оценки погрешностей 171 4.3.3. Общие теоремы о равномерной сходимости разностных решений. Если дифференциальное уравнение имеет переменные коэффициенты и (или) граница области имеет сложную конфигурацию с краевыми условиями 2-го или 3-го рода, то конструктивный вывод пробной сеточной функции может представлять значительные технические трудности. Однако их можно легко обойти, установив всего-навсего ее существование на основе априорных сведений о дифференциальной задаче и наличие аппроксймационных свойств у исследуемой разностной схемы. С помощью такого косвенного подхода формулируется следующее утверждение. Теорема 4.2. Пусть дифференциальная краевая задача Lu = / аппроксимируется системой сеточных уравнений L^u^ = Д с погрет- ностью \\фн\\оо < СЮj 7 > 0. Пусть также существует положительная ограниченная функция и, удовлетворяющая операторному уравнению Lu = 1 и обладающая гладкостью, достаточной для существования аппроксимации Lhuh — 1 + фн} \\Фк\\оо < Ch&} β > 0. Тогда для ошибки разностного решения ζ^ — Uh — vh при достаточно малых h справедлива оценка INU < C^%tfV. (4.37) Доказательство заключается всего лишь в проверке того, что для нормированного вектора ун = ш\—\\йн\\ справедливо неравенство LhVh > i7-i и е> откуда следуют оценка равномерной нормы обратной матрицы и сам конечный результат, D Все наши предыдущие рассуждения в данном параграфе основывались на равномерной оценке нормы матрицы, обратной к монотонной. Однако использование пробного вектора можно осуществить и другим путем - на основе второй теоремы сравнения 3.15. При этом следует ожидать, в принципе, усиления результатов за счет получения покомпонентных оценок для вектора ошибки. Теорема 4.3. Пусть дифференциальная краевая задача Lu — / аппроксимируется на сетке Пд системой сеточных уравнений LhUh — fh с погрешностью фн- Пусть также существует положительный вектор йн, удовлетворяющий условию Lhuh = ψκ > cte, α > 0. Тогда для компонент Zh,k ~ Uh,h — ^ь,* вектора ошибки сеточного решения справедливы неравенства pmI ^ —; uh,k- (4.38) α
172 ГЛ. 4. СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Доказательство этого утверждения является прямым следствием теоремы 3.15 и легко проверяемого неравенства \п2)\^\Фпм<Щ^^,^п1)- а Понятно, что в последнем случае можно использовать пробный вектор uh из вспомогательной дифференциальной задачи, как в теореме 4.2, и тогда достаточно положить а = 1 — \\фн\\* σ Если применить неравенства (4.38) к исследованию задачи (4.31), то уточнение результата по сравнению с оценкой (4.33) будет заключаться в том, что устанавливается "сверхмалость" компоненты ошибки разностного решения вблизи границы (значения у χ в (4.32) для первых и последних номеров суть величины порядка О (/ι2), так что соответствующие ΖΗ& в (4.38) будут 0(Л4)). Дальнейшее усиление равномерных оценок погрешности разностных уравнений, с одновременным расширением класса охватываемых систем, осуществимо с помощью теоремы 3.18 для псевдомонотонных матриц, введенных в определении 3.11. Для наглядности изложения мы проведем переформулировку описанных в § 3.3 алгебраических результатов на язык сеточных функций. Теорема 4.4. Пусть система сеточных уравнений L^uh — fh аппроксимирует на сетке Ω^ дифференциальную краевую задачу Lu ~ f и обладает следующими свойствами: а) на подмножестве узлов Ω^' компоненты погрешности аппроксимации (fh — {φη,π} удовлетворяют неравенствам Ьц*| <W, ken£0); б) на подмножестве Ω^ = Ω^/Ω^ сеточные уравнения имеют строгое относительное преобладание δ и оценку погрешности аппроксимации, отнесенной к диагональному коэффициенту, |¥>М < Ci/Λ Тогда для ошибки сеточного решения справедливо неравенство max{|zM|} < № max {йм}Ь° + ΟχίΑ Ιδ. (4.39)
§^.^. Равномерные оценки погрешностей 173 Для проверки данного утверждения достаточно сопоставить обозначения решений для различных типов аппроксимаций, рассмотренных выше, и мы их приведем в форме ряда следствий из последней теоремы. Следствие 4.1. Пусть Lu = / - операторная форма смешанной краевой задачи уравнения Пуассона в области Ω (одно-, дву- или трехмерной) с границей Г = Г0 Π Γι, где Г0 - часть границы с условиями 2-го или 3-го рода - состоит из параллельных координатным осям отрезков, α Γι - часть границы с условиями Дирихле - может быть криволинейной. Пусть LhUh = fh ~ система сеточных уравнений, аппроксимирующих краевую задачу на равномерной прямоугольной сетке Ω^ = Ω£ηΓ£ηΓ?, гдеГ£ - совокупность околограничных узлов вблизи Γχ, Γβ - совокупность граничных или околограничных узлов, в которых сеточные уравнения строятся с учетом условий Неймана или Ньютона, a ilj - подмножество остальных внутренних узлов сетки, в которых формируются (2Д + 1)-точечные разностные уравнения Пуассона (R - размерность области). Тогда ошибка сеточного решения ^, при достаточной гладкости решения дифференциальной задачи, обладает следующими свойствами: а) ΙΙ^λΙΙοο — О (Л2), если сетка равномерная, а аппроксимации граничных условий, содержащих производные, проводятся с помощью центральных разностей и имеют второй порядок погрешности; б) Н^аЦоо = 0(h)^ если сетка неравномерная и/или аппроксимации условий на Го проводятся с погрешностью первого порядка. Очевидно, что для подтверждения этих результатов надо к Ω§ в обозначениях теоремы 4.4 отнести совокупность узлов из Ω£ ПГ£, а к Ω^ - узлы из Г£. Величина строгого относительного преобладания δ для последних будет не меньше величин |, ^ и | соответственно при размерностях 12 = 1,2,3, независимо от того, используется ли аппроксимация Коллатца или Шортли-Уэллера. Поскольку в разностных уравнениях Пуассона для диагональных коэффициентов всегда справедливо o>k,k = 0(/ι~2), то "относительная" погрешность аппроксимации "**■ будет иметь порядок /3 = 2 или β = 3 - соответственно в первом или втором случае. Отсюда результат а) в следствии 4.1 выводится из того, что "внутренняя погрешность аппроксимации" в Ω& имеет порядок α = 2, а "мажорирующая функция" й может быть взята в виде (4.32) для одномерной задачи, (4.34) для двумерной и в аналогичной форме для трехмерной.
174 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Утверждение б) теперь тоже очевидно, так как порядок погрешно- стив Од будет а — 1 при нарушении хотя бы одного из условий: равномерности сетки или использования односторонних разностей для аппроксимации производных на границе (в узлах из Г§ нет "запаса" за счет строгого диагонального преобладания). Отметим, что ошибка сеточного решения останется первого порядка даже в том случае, если аппроксимация условия Дирихле делается с помощью интерполяции нулевого порядка ("простой снос", см. п. 1.3.1). При этом после подстановки соотношения вида у\тг = и\гг + 0(h) в разностное уравнение мы имеем формально ф^к = 0(Л""Х), но за счет строгого диагонального преобладания получаем β = 1 в (4.39). Следствие 4.2. Пусть Lu — f~ задача Дирихле в области, граница которой проходит через узлы равномерной сетки (R — 2 или R = 3), где Ω£ - множество околограничных узлов, а П§ ~ совокупность внутренних регулярных узлов, у которых все ближайшие восемь (восемнадцать - в трехмерном случае) соседних узлов - внутренние. Пусть LhUh = / - система разностных уравнений, которые в Oj имеют (2Я 4-1)-точечный шаблон и погрешность аппроксимации 0(h2), α β Oq имеют вид (1,43) для двумерного случая и (1*54) ~ для трехмерного. Тогда при достаточной гладкости решения исходной задачи (и £ Сб(П)) и выполнении условий положительности типа (1.44) (с аналогичными дополнительными неравенствами л/3 < |* < 4-, λ/З < jf- < А? для трехмерных задач) для погрешности разностного решения справедливо Ц^Цоо — 0(h4). Сделанное утверждение вытекает из (4.39) очевидным образом: в Ω£ будет δ > 2^, откуда а = β — 4 ("мажорирующая" функция й может использоваться прежняя). Рассмотренные разностные схемы можно назвать условно сходящимися (в равномерной норме), так как ошибка разностного решения при h ~~> О стремится к нулю только при выполнении необходимых условий на шаги сетки. Отметим, что рассмотренная система неоднородных сеточных уравнений является несимметричной и для нее затруднительно провести анализ в евклидовой норме. Замечание 4.3. Если расчетная область имеет более простую конфигурацию (граница состоит из прямых или плоскостей, параллельных координатным линиям, и пересекает их только в узлах), то во всех внутренних точках могут быть построены одинаковые уравнения с четвертым порядком погрешности, и тор да оценки ошибки упрощаются
§4-3- Равномерные оценки погрешностей 175 как в равномерной норме, так и в евклидовой (в последнем случае - без ограничений на соотношения шагов сетки для обеспечения монотонности). Замечание 4.4. Если задача Дирихле для уравнения Пуассона рассматривается, наоборот, в более сложной области с криволинейной границей, то использование сеточных уравнений повышенного порядка аппроксимации во внутренних регулярных узлах также может быть оправдано. Очевидно, что при использовании аппроксимации Шортли- Уэллера первого порядка в околограничных узлах будем иметь β = 3 и норму ошибки ||ζλ||οο — 0(/i3). Следствие 4.3. Пусть Lu — / - смешанная краевая задача для диффузионно-конвективного уравнения вида (1.28) в одномерном случае и его очевидных обобщений - β многомерных задачах с типами граничных условий, описанных в следствии 4Л. Пусть LhUh = / - система сеточных уравнений, аналогичная рассмотренной в следствии 4*1, с учетом необходимых особенностей, обусловленных аппроксимацией конвективных членов: отдельно анализируется замена первых производных односторонними, направленными и центральными разностями в соответствии с формулами (1.30), (1.35) и (1.36) для одномерного случая. Пусть также существует гладкая функция й, для достаточно малых h удовлетворяющая условию L^uh > ае, а > 0. Тогда при достаточной гладкости решения и исходной дифференциальной задачи ошибка разностного решения z^ обладает следующими свойствами: а) Ц^лЦоо = 0(h2), если сетка равномерная, производные в дифференциальном уравнении и граничных условиях аппроксимируются центральными разностями, а также выполняются условия монотонности типа (1.37); б) H^hlloo = 0(h), если сетка неравномерная и/или аппроксимация производных осуществляется с помощью направленных или односторонних разностей (в последнем случае при несогласовании направления разности со знаком конвективного коэффициента необходимо дополнительно выполнение условия положительности типа (1.34))* Рассмотренные схемы в п. 1.2.3 подразделялись на абсолютно и условно монотонные. Однако последние нельзя назвать условно сходящимися, так как при h —> 0 условия монотонности обязаны выполняться и ошибка сеточного решения, естественно, будет стремиться к нулю. Тем не менее условно монотонные схемы могут обладать тем
176 ГЛ. 4* СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ недостатком, что при выводе количественной оценки ошибки условия монотонности потребуют неоправданного измельчения шага. 4.3.4. О монотонности компактных схем сеточных уравнении. Рассматриваемые в данном параграфе равномерные оценки погрешностей являются очень сильным средством анализа сеточных уравнений, но он применим, как можно было видеть из приведенных теорем, только к монотонным алгебраическим системам. Отсюда возникает важный вопрос о том, насколько широк класс монотонных сеточных аппроксимаций. До сих пор конструктивные условия монотонности фактически ограничивались только матрицами положительного типа. Однако даже девятиточечная схема Микеладзе (1.42) для уравнения Пуассона на равномерной сетке является схемой положительного типа только при жестком ограничении на соотношение шагов ~ < ^f < 5. Естественно, хотелось бы иметь сеточные методы, которые на дискретном уровне наследовали бы свойство монотонности и принцип максимума исходных дифференциальных задач, если таковые имеют место. Отсюда, в частности, возникает вопрос: остается ли схема Микеладзе монотонной, даже когда она не является схемой положительного типа? Мы покажем сейчас, что ответ здесь оказывается положительным. Более того, монотонность матриц при любых соотношениях шагов сетки удается даже показать для компактных схем вида (1.79), аппроксимирующих диффузионно-конвективное уравнение (1.70) с переменными коэффициентами. Нашей целью будет показать (с помощью теоремы 3.14) монотоность матрицы А с единичной главной диагональю, полученной в результате масштабирования матрицы L\ из системы уравнений (1.80), при достаточной гладкости коэффициентов исходного дифференциального уравнения: 8 (Au)itj =щ-Т] ckxijuk, cM(U = -^. (4.40) Легко видеть, что при положительности всех αο,ί(ί (напомним, что это имеет место при условиях (1.83) или леммы 1.1)) матрицы А и Li являются монотонными (или немонотонными) только одновременно. Вводя обозначения а^ = |££, fiij = |^-, для достаточно малых h мы можем из (1.80), (1.81) получить с*,гj = - - £*,»·,,·, к = 1,3; с* = - + ektij, к = 2,4;
§^.3. Равномерные оценки погрешностей 177 с*= h ~Sk'ij' k = 5'6>7>8· (4·41) _ 3(ft,j - (Xij) t-1044 £к™ - wictij+Aj) + *1<'i' ~1г 'л' ' где величины ifc,«,j имеют порядок 0(/ι). В частности, при постоянных диффузионных коэффициентах р,ди отсутствии конвективных членов все Sk,ij равны нулю. Предположим для определенности, что fiij > a»tJ, т. е. "плохие" знаки среди элементов А могут иметь только С1,*^,с3^·. Более того, с учетом определения €k,ij будем считать 1 3 5 <ε*·'Λ < i5 + ijM,i' (4*42) когда А не является матрицей положительного типа. В соответствии с теоремой 3.14 попытаемся построить регулярное разложение матрицы А — Μ—Д, М-1 > О, R > О, Μ_1 Αν > О при г; > 0. Будем искать монотонную матрицу Μ в виде произведения нижней и верхней треугольных (при естественной упорядоченности узлов сетки) матриц, определяемых соотношениями (Afiw)y =%jWitj - Д-jWij+i - aijWi-i.j'+i, (M2v)ij = 7i,i^,j - fiijvij-i - aijVi+tj-u (4.43) (Mv)ij = (AfiAf2v)i,j = dij/ii-ij+iVi-ij -%j$ijVij-i Очевидно, что если все aci,j,/3i,j,7»,j> GiJiPijilij B (4.43) положительны, то треугольные матрицы Μι,Μ2 и, следовательно, Μ будут монотонными. В соответствии с теоремой 3.14 для монотонности матрицы А из (4.40) нужна также неотрицательность матрицы R = Μ - А. Условия неотрицательности ее элементов приводят к неравенствам ^ г χ $i,j%j+i < - +e4,t,j, Oijai_ij+i +fiij$itj+i +7i,j7i,j > 1- Ύ ft. 7i,. i.J^i j < 55 - *.< J«i,j+1 > £3,i,j - Ai < - +^2,i,j,
178 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Если положить Aj" ^τ U+*<**)' Aj - %; [ι+ε™)' то неравенства (4.44) будут удовлетворяться при выполнении следующих условий (ниже введено обозначение 7i,j — 7i,j ' 7i,j): 7i-i,j+i < (g +e2,i-ij+ij ^20 ~ 5M,iJ/ (ει,υ ~ 5J = ^> (4·46) ... _(ao-V«j) 1 (F+£4,i,j)(|+£2,i,j+i) 7<-lJ+l 7i,j+l Отметим, что в силу сделанных выше определений и предположений величины ai^,aij, $i,j,$i,j в (4.45) неотрицательные. Чтобы показать существование положительных jij (и следователь- ηοϊ 7i,jj7*,i)j удовлетворяющих условиям (4.46), выразим, например, 7*j из первого неравенства в (4.46) (заменив его на равенство) и подставим его в выражение для w^: гу = _\ >L^ ^L + 20 In > SO ~*7,*,i+l £3,i,j-l - 5 J Q + e2)z,^ Q + 64,^) (ii,,· + tt. j) + Su, (4.47) где ^=ow и tiJ = v^::i;;ji^· А поскольку из (4.41), (4.42) следует ε*.,^* < ^ + 0(h), то для достаточно малых h имеем Wij > 1. Это неравенство также следует, если в (4.47) величину Wij оценивать с помощью второго неравенства из (4.46).
§4·3· Равномерные оценки погрешностей 179 Очевидно также, что аналогичные результаты мы можем получить при 0ij < aitj, заменяя условия (4.42) на -^ 4- Sk,ij > Cktij > -|, Sktitj - О(Л). Таким образом, мы можем сформулировать следующее утверждение. Теорема 4.5. Пусть элементы матрицы L^, определяемой соотношениями (1.80)-(1.81), удовлетворяют условиям (1.83), (4*46)'. То- гда матрица L^ является монотонной. В частности, она является монотонной при любых соотношениях hx,hy, если коэффициенты исходного дифференциального уравнения достаточно гладкие, а шаги сетки достаточно малые. Доказательство следует из теоремы 3.14 в силу построенных нами монотонной и неотрицательной матриц М, R. Остается еще указать положительный вектор и, удовлетворяющий условию Μ~ι Αν > 0. Для этого можно найти достаточно гладкую положительную функцию ν (ж, у), обладающую свойством Lv > Sq > 0, и определить вектор ν — {vij ~ v(x,i , ад)}. Пример такой "мажорирующей" функции приведен выше. Из доказательства теоремы 4.5 следует тот важный факт, что при нулевых конвективных членах (а = Ь ~ 0) и постоянных (положительных) диффузионных коэффициентах р, q девятиточечная схема (1.80) является монотонной при любых соотношениях р, g, hx,hy. 4.3.5. Оценки погрешности для блочно-трех диагональных систем уравнений положительного типа. В данном пункте мы рассмотрим фактически приложение оценок решений (а также их отдельных компонент) для систем алгебраических уравнений, исследованных в п. 3.3.3. При этом в алгебраической системе (3.76) правую часть полагаем равной вектору погрешности аппроксимации фи тогда ее решением будет ошибка приближенного решения ζ. Аналогично (3.87) представим полную погрешность аппроксимации φ = {ф{\ В ВИДе СУММЫ φ = Ф1 + Ф2 + ». + ΨΝ, Φί = Щ — 6ij1pi}t где каждое слагаемое имеет только одну ненулевую компоненту. Соответственно полный вектор ошибки записывается как ζ = {zj} ^ζχ+ζ2 + ... + ζΝ, Αζ{ = ψ\ ζ{ = {ή}. (4.48) Если теперь каждую парциальную ошибку ζ% оценивать с помощью неравенств (3.96), то компоненты zj полной ошибки могут быть оценены аналогично (3.99):
180 ГЛ. 4. СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ N ΙΜΙ»<ΣΐΙ*}ΙΙαο· (4-49) При этом надо учитывать тот факт, что в неравенствах (3.80) предполагается нормировка алгебраической системы, в которой коэффициенты уравнений имеют порядок 0(1) при h —> О, То есть если в "обычной" нормировке из гл. 1 погрешность аппроксимации есть φ = 0(/ι7), то в формулах (4.48) надо полагать фг - 0(/ι7+2). Мы рассмотрим несколько следствий из данного подхода для смешанных краевых задач в параллелепипеде. Задача 4.5. Пусть LhUh — fh - система сеточных уравнений Пуассона положительного типа с граничными условиями Дирихле в прямоугольной расчетной области. Рассмотрим прямоугольную кусочно-равномерную сетку с одной только сменой шагов: Щ = h\ при г < го и h* — /12 при г > г'о {Щ — hy). Тогда мы можем положить в (4.48) φίο = 0(h3) и ф{ = 0(/t7+2), где 7 ~ 2 при использовании пятиточечных аппроксимаций и 7 — 4 для схемы Микеладзе. В этом случае из оценок (3.97) мы получаем zt0 — 0(h2) и ζ1 — 0(/ι7+1) при г φ го. Таким образом, полная ошибка решения есть 0(h2) вследствие суммирования (4.49) как для j = 2, так и для 7 — 4. Аналогичный результат может быть показан и для любого конечного числа смены шагов сетки (в том числе по разным направлениям) при h —> 0. Задача 4.6. Рассматривается задача 4.5 с одним только отличием: на правой стороне границы расчетной области аппроксимируется условие Неймана. Различие в свойствах матрицы в этом случае будет также только одно: в (3.80) для г = N вместо d^ > 2 имеем d^ = 1, что означает отсутствие строгого диагонального преобладания в соответствующих приграничных узлах. Данный факт может быть отнесен как к пятиточечным аппроксимациям (см. п. 1.3.3), так и к компактным схемам повышенной точности, описанным в п. 1.4.4. Вследствие указанного отличия алгебраической системы вместо оценки (3.81) будем иметь неравенства НОГ1!!.» < т^г, i=l JV-1; |Κ?γΊ|οο < N. (4.50) г + 1 Но поскольку оценки (3.86) для HG^E/jHoo пРи * = 1, ---, JV - 1 остаются в силе, то для оценки всей погрешности можно привлечь соотношения (3.77) или (3.96) с г = N:
§4-4- Сходимость сеточных решений квазилинейных уравнений 181 Здесь надо также учесть свои особенности масштабирования алгебраической системы. При нормировке djv — 1 в (4.48) надо положить <ψΝ — 0(/ι7+1), где 7 ~ порядок аппроксимации краевого условия 2-го или 3-го рода (7 = 4 для компактной схемы, у — 2 или 1 для пятиточечной схемы в зависимости от использования центральных или односторонних разностей соответственно). С учетом (4.50) во всех рассматриваемых случаях соответствующая ошибка сеточного решения будет того же порядка у, что и погрешность аппроксимации граничного условия. § 4.4. Сходимость сеточных решений квазилинейных уравнении При исследовании методов построения сеточных уравнений возможная нелинейность исходного дифференциального уравнения практически не играет никакой роли, так как оценка локальной погрешности аппроксимации выражается только через величины производных решения и коэффициентов по независимым координатам. Если же дифференциальная задача и, следовательно, получаемая система сеточных уравнений являются нелинейными, то теорема эквивалентности ("аппроксимация -f устойчивость =Ф сходимость") уже не выполняется и техника оценок ошибок сеточных решений становится, естественно, более сложной. Более тонкого анализа требует и вопрос о существовании и единственности нелинейных уравнений. Ограничимся кратким изложением основ исследования приближенного решения нелинейных краевых задач, иллюстрируя их характерными для приложений квазилинейными дифференциальными уравнениями, в которых коэффициенты не зависят от производных старших порядков искомого решения. 4.4.1. Некоторые общие вопросы решения нелинейных уравнений. Дифференциальная краевая задача в общем случае может быть записана в виде нелинейного уравнения А(и) = 0, (4.51) где А - оператор, определенный на замкнутом множестве μ из некоторого полного метрического пространства %, в котором определено расстояние р(и> υ) для любых и} ν Ε 7t. После дискретизации задачи (4.51) на некоторой сетке Ω^ = {ζ*., к — 1,..., Ν} получаем систему нелинейных уравнений
182 ГЛ. I СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Ah(vh) = 0, (4.52) где vh — {щ} есть вектор значений приближеного решения в узлах #&, a Ah(vh) — {Α%(νη)} есть вектор-функция. При исследовании решений нелинейных уравнений первоочередными являются вопросы о существовании решений исходной и приближенной задач, а также о единственности этих решений на некоторых множествах. Для их рассмотрения перейдем от метрического пространства к нормированному (p(u,v) = ||u — v||), а от операторного уравнения 1-го рода - к уравнению 2-го рода и = Р(и) (4.53) (переход от (4.51) к (4.53) всегда можно сделать с помощью определения оператора Ρ (и) ~ и - А(и)). Определение 4.5. Пусть оператор Ρ определен на некотором множестве μ банахова пространства В и удовлетворяет условию Липшица \\Р(и) - P(v)\\ < q\\u - V||, и, ν € μ. (4.54) Если q < 1, то Р называется сжимающим оператором, a q - коэффициентом сжатия. Теорема 4.6 (принцип сжатых отображений). Пусть сжимающий оператор Р, определенный на замкнутом множестве μ, преобразует это множество в себя, т. е. Ρ μ С μ. Тогда оператор Ρ имеет в μ единственную неподвижную точку и*. Иначе говоря, уравнение (4-53) имеет в μ единственное решение и*. Для доказательства рассмотрим итерационную последовательность tin = P(«n"1)l n -1,2,.., (4.55) с некоторым производным начальным приближением и0 € μ. Из соотношений (4.54), (4.55) легко устанавливаются неравенства ||wn+1 - ип\\ = \\Р(ип) - iV*-1)!! < q\\un - и71'1]] < ... < qn\\ul - и% Далее для любого целого ρ > η имеем \\ир - ип\\<\\ир - иР~х\\ + Ни*"1 - ир~2\\ + ... + \\ип+1 - ип\\ <(qp~l + qp~2 + -. + qn)\\ul-u°\\ < ~£L-\\ul-u0\\ -> 0 . (4.56) 1 — α η-4οο
%4·4· Сходимость сеточных решений квазилинейных уравнений 183 Данное неравенство показывает, что последовательность ип фундаментальна, а в силу полноты банахового пространства В она сходится к некоторому элементу и* £ В. Но ип е μ, следовательно, в силу замкнутости μ, ω* £ μ и оператор Р(и*) имеет смысл. Отсюда получаем соотношения ||«·-Ρ(«*)|| < ||«·-«1 + ||«η-Ρ(«·)|| < Х_||„1_щоц+ ||tt-i_ul< 2£\|tti_tt0|| _^ 1 — g ι — q n->oo которые и доказывают, что и* является решением уравнения (4.53). Единственность его следует из того, что если бы w ^ и было бы вторым решением, то в силу неравенства \\и — w\\ = \\Р(и) — Р(^)|| < q\\u — ги|| из условия q < 1 мы пришли бы к противоречивому утверждению и = w. D Следствие 4.4. Из неравенства (4-56) из предела ρ —> оо получаем самостоятельный важный результат \\и-ип\\<^-\\иг^ч% (4.57) l-q представляющий собой оценку погрешности п-го приближения в итерационном процессе (4-55). Применение принципа сжатых отображений к конкретному виду операторного уравнения (4.53) может вызвать затруднения в следующем вопросе: как определить замкнутое множество μ, которое оператором Ρ отображается на себя и на котором Ρ есть оператор сжатия. Чаще всего рассматриваются сжимающие операторы, определенные на всем пространстве В или на некотором шаре 5(^ο, г) = {и: ||u—uo|| < г}, определяемом своим центром щ и радиусом г. В последнем случае теорему 4.6 удобно сформулировать в следующем виде. Теорема 4.7. Пусть Ρ является сжимающим оператором на замкнутом шаре 5(^0,г) банахова пространства В и пусть ||«о-Р(«о)||<(1-«)г. (4.58) Тогда оператор Ρ имеет в этом шаре единственную неподвижную точку. Для доказательства достаточно проверить включение ΡS С S, Оно очевидно: если ||и—«о|| < г, то из условия Липшица (4.54) и из (4.58) следует неравенство
184 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ \\щ - P(u)|| < ||P(u) - P(uo)|| + IK - P(uo)|| < q\\u - u0\\ + (1 - q)r < r, т. е. элемент P(u) находится в шаре S(uo,r). □ Более того, из (4.56) при ρ -» оо следует, с учетом обозначения и1 — Ρ (и0), что если в интерационном процессе (4.55) взять начальное приближение и0 € S(uo,r), TO справедлива оценка погрешности \\и-ип\\ <qnr. (4.59) В следующем важном вопросе - оценке коэффициента сжатия q в условии Липшица (4.54) - фундаментальную роль играет понятие производной оператора. Определение 4.6. Пусть нелинейный оператор Ρ определен на множестве μ С В. Оператор Ρ называется дифференцируемым (по Фрегие) в точке щ € μ, если найдется линейный ограниченный оператор В такой, что при tto -f h Ε μ шп ll^o^)-^o)-^H=0, (4.60) ЦА1И0 \\h\\ Оператор В называется производной (Фреше) оператора Ρ в точке Uq и обозначается через P'(tto). Оператор Ρ называется дифференцируемым на μ, если он дифференцируем в каждой точке множества μ. Допустим, что множество μ, на котором задан оператор Р, выпукло, т. е. it 4- в(и ~ ν) Ε μ при любых 0 < θ < 1 и u,v Ε μ. Пусть 9o=sup||P»||. (4.61) Тогда справедливо неравенство \\Р(и) - Ρ(ν)\\ < \\Р'(й)\\ · ||ii - V|| < q0\\u - t,||, u = u + 0(t;-u), O<0< 1, устанавливающее, что оценкой коэффициента сжатия в условии Липшица (4.54) может служить любая оценка норм производной оператора. Отметим, что здесь мы использовали теорему о среднем, которая для дифференцируемого функционала /(и), переводящего выпуклое множество μ £ В в множество вещественных чисел Д, выглядит "обычным" образом: для любых точек и, ν Ε μ найдется такое θ Ε [0,1], что
§ 4-4· Сходимость сеточных решений квазилинейных уравнений 185 f{u) - f{v) = f{u){u -v), й = и + в{ь~ и). (4.62) Если же отображение f(u) есть вектор-функция с компонентами /fe(w), то для каждой из них в теореме о среднем присутствует свое значение 6k- Отсюда прямое операторное обобщение равенства (4.62) не имеет места и можно сформулировать только следующее утверждение. Теорема 4.8 (о среднем). Пусть оператор Ρ является дифференцируемым па выпуклом множестве μ С В. Тогда для любых и, ν Ε μ \\Р(и) - Ρ(ν)\\ < sup ||Ρ> + 0(«-«))||·||«-»||. 0<0<ι 4.4.2. Уравнения с нелинейной правой частью. Рассмотрим краевую задачу в форме (4.1), когда от искомого решения зависят только правые части уравнений, не зависящие от производных решения: Lu = f{u), ж Ε Ω, lu^g{u), χ е Γ, (4.63) где операторы L и Ζ являются линейными, а функции / и g - дифференцируемыми. Не конкретизируя их свойств, будем предполагать, что они обеспечивают существование единственного решения задачи (4.63). После дискретизации исходной задачи получаемую систему сеточных уравнений можно записать в виде Lhvh = Fh(vh), xeilh, lhvh=Gh(vh), x£Th, (4.64) или в форме одного операторного уравнения Ahvh = Dh(vh), (4.65) где Dh{vh) = {dk{vk)} представляет собой диагональную матрицу (за исключением случаев, на которых мы остановимся ниже), каждый элемент которой зависит только от соответствующей неизвестной компоненты. Очевидно, что вектор uh — {uk} с компонентами, представляющими собой значения точного (гладкого!) решения в узлах сетки, удовлетворяет операторному уравнению (4.65) лишь приближенно: Ahuh = Dh{uh)+il>h, (4.66) где погрешность аппроксимации имеет какую-то оценку ||^Л|| < Ch1. После почленного вычитания уравнений (4.66) и (4.65) получаем линейное уравнение для вектора погрешности zh = uh — vh
186 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ [Ah - D'h(wh)]zh = ψΗ. (4.67) Здесь Dfh(wh) есть обозначение диагональной матрицы D'h(wh) - di&g{d'k{ek = uk + 6k{vk - «*))}, (4.68) которое, строго говоря, не подходит под определение 4.6 производной оператора D^, так как в (4.68) разным строкам (или узлам) соответствуют разные значения 0*. Предположим, что матрица D!h содержит только неположительные диагональные элементы, что обеспечивается условиями |г* =<*«*.*, cfc<0. (4.69) ащ Теорема 4.9. Пусть в системе сеточных уравнений (4*65) Ah есть матрица положительного типа и имеет оценку обратной матрицы ЦЛ^Цоо < Сг- Тогда при выполнении условий (4-69) система (4-65) имеет единственное решение и для его погрешности справедлива оценка \\zh\\oo < Ci\\i/>h\\<x>· Данное утверждение является непосредственным следствием теоремы 3.8, устанавливающей в данном случае, что для матрицы положительного типа А^ — D'h выполняется неравенство \\(Аь — .D^)-1!^ < Теорема 4.9 показывает, что для всех систем сеточных уравнений положительного типа "хорошая" нелинейность правой части, в смысле неположительности ее производной по и, сохраняет все свойства равномерной сходимости и оценок погрешности, доказанные выше в § 4.3. Справедливы, в частности, следствия 4.1, 4.2, 4.3 о порядках оценок 0(h) или 0(h2) для конкретных аппроксимаций широкого класса краевых задач. Однако в случае компактных конечно-разностных аппроксимаций или в методах конечных объемов, когда нелинейность правой части дифференциального уравнения приводит не к диагональному сеточному оператору Dh, теорема 4.9 неприменима и для получения равномерных оценок погрешности требуются дополнительные, более тонкие исследования. Отметим также, что для доказательства равномерной сходимости условия (4.69) не могут быть ослаблены в общем случае (за исключением наличия строгого диагонального преобладания в матрице Ah). Теорема 4.10. Пусть в системе уравнений (4-65) Ah есть симметричная положительно-определенная матрица с оценкой обратной
§4·4· Сходимость сеточных решений квазилинейных уравнений 187 матрицы ЦА^Цг < Сг- Тогда при выполнении условий Ц-69) система Ц.6В) имеет единственное решение и для его погрешности справедлива оценка \\zhW2 < СзН^лНг- Доказательство этой теоремы тривиально следует из спектральных свойств матриц: Х(Ан — Dlh) > \{Л^) > 0. □ Отсюда получаем, что при условии (4.69) все результаты § 4.2 относительно оценок погрешностей О(h) или О(h2) остаются в силе и для нелинейных правых частей. Условие (4.69) можно также ослабить, т. е. величины С& могут быть положительны, но не превосходить по модулю минимального собственного числа матрицы Ан (Х(Ан) — max{cfc} > Cq > 0, где Со не зависит от К). Аналогич- X ные результаты имеют место и для компактных или конечно- объемных схем с недиагональной матрицей JD^, если последняя является положительно-полуопределенной, а матрица Ан - симметричной и положительно-определенной. 4.4.3. Уравнения с нелинейными коэффициентами. Рассмотрим для простоты одномерное уравнение диффузии с независящей от и правой частью и однородными условиями Дирихле. Не конкретизируя пока способ аппроксимации задачи (4.70), запишем систему сеточных уравнений в виде Lh(vh)i = Pi+1/2{VH) (Vi - Vi+χ) - &-ΐ/2(υΛ) {Vi ~ Vi-i) = /i, % = 1,2,...,JV; vQ ^ Vjv-i = 0. Что касается существования и единственности решения этой нелинейной СИСТеМЫ, ТО При ПОЛОЖИТеЛЬНОСТИ коэффициентов ^+1/2? Pi-l/2 эти вопросы решаются однозначно, а данные свойства, как правило, нетрудно обеспечить в рассмотренных в гл. 1 и 2 аппроксимациях при положительности коэффициентов диффузии. Точное решение uh = {щ} удовлетворяет этой системе приближенно: Lh{uh)i = Рг+1/2{ин)(щ ~ щ+χ) - р^1/2{ин)(щ ~ «ί-i) - fi + фи (4.72) где погрешность аппроксимации удовлетворяет некоторой оценке Halloo < Ch1. После почленного вычитания равенств (4.72), (4.71) и простейших преобразований мы получаем соотношение
188 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ (L'hZh)i = Pi+i/2(vh)(Zi -Zi+l) +Pi-l/2(vH)(Zi -Zi_i) +CjZi =Фи °i ~ Pi+l/2(^+l/2)Ы - «i+l) +Ρί-1/2(ώ<-1/2)(χ*< ~ U*-l)' (4*73) г = 1,2, ...,iV; z0 = zjv+i =0. Здесь члены tyi+1/2i *&ί~ι/2 в выражении для с» обусловлены применением теоремы о среднем для функционалов. Их конкретное представление зависит от характера функциональной зависимости коэффициентов р(и), a(u), a также от способа вывода сеточных уравнений (4.71). Для анализа сходимости в нелинейных задачах такого типа надо получить оценку решений нелинейных уравнений вида (4.73), что в общем случае без дополнительных предположений и исследований сделать затруднительно. На частных примерах мы останавливаться не будем и ограничимся только перечислением основных предпосылок к получению возможных результатов по данной проблеме. Естественно, что если оператор Vh монотонный, то из (4.73) можно получить оценку погрешности zh = {щ — V{ = Z{} в равномерной векторной норме || ■ ||оо- Для обеспечения этого достаточны неотрицательность С{ и положительность величин Pj+i/2i Pi~\j%. Если конвективный коэффициент а(и) в (4.70) нулевой и система уравнений (4.73) симметрична, то анализ устойчивости и сходимости можно провести в евклидовой норме || ■ ||г в соответствии с подходами в § 4.2. Отметим, что техника исследований и результаты определяются главным образом типом нелинейной зависимости коэффициентов в исходном уравнении (4.70) и имеют схожие ситуации как для двумерных краевых задач, так и для трехмерных. § 4.5. Равномерная сходимость по малому параметру для сингулярно возмущенных краевых задач Все рассмотренные выше способы аппроксимации краевых задач основываются на достаточной гладкости искомых решений, и сходимость приближенного решения к точному при h —> 0 предполагает ограниченность производных решения. Однако существует практически важный класс так называемых сингулярно возмущенных задач, в которых дифференциальные уравнения содержат малый коэффициент е при старших производных и их производные в некоторых подобластях неограниченно растут при ε —► 0. Как правило, происходит это в окрестности границы расчетной области (погранслой), что объясняется вырождением дифференциального уравнения: при переходе от конечного
§^.5. Равномерная сходимость по малому параметру 189 к нулевому значению параметра ε оно меняет тип и для его решения некоторые граничные условия становятся "лишними". В таких случаях обычные сеточные аппроксимации обеспечивают сходимость ошибки приближенного решения только при ε ^ h, что налагает слишком жесткие (зачастую нереальные) требования на число узлов сетки для получения приемлемой точности. При этом возникает проблема построения аппроксимаций, обладающих свойством равномерной сходимости по малому параметру ε, когда ошибка численного решения оценивается некоторой величиной C/i7, Ί > 0, где постоянная С не зависит ни от /г, ни от ε. Построение таких схем возможно только с учетом особенностей искомых решений. 4.5.1. Особенности решений сингулярно возмущенных задач. Мы проиллюстрируем возникающие ситуации несколькими характерными примерами, первый из которых представляет задачу Дирихле для диффузионно-конвективного уравнения -ей" - и' = 0, 0 < χ < 1, и(0) = 0, и(1) = 1, (4.74) точное решение которой имеет вид 1 - ехр(—х/е) ίΑ „еЛ ПЛХ) = 1-еХр(-1/еУ (475) Предельная форма и(х) из (4.75) при ε —> О представляет собой разрывную при χ = 0 функцию щ (х) = \imu£(x) - < V ' ε->0 eV ' \ 1, Ж>0. Если же в уравнении (4.74) положить ε — 0 и убрать граничное условие при χ — 0, то получаемая редуцированная задача «' = 0, 0<я!<1, «(1) = 1 (4.76) имеет единственное решение й{х) — 1, которое сильно отличается от предельной функции щ(х) в окрестности левой границы χ = 0. Величина δ€ = ίη(δε) = i[«0(0) + «(0)] - ε (in2 - InΓΐ + ехр(-^Ш (4.77) называется шириной пограничного слоя, как видно, она пропорциональна параметру ε. В качестве второго примера рассмотрим задачу
190 ГЛ. 4· СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИИ -еи" + и = 0, 0<ж<1, ti(0)=u(l) = l, (4.78) в которой уравнение типа "диффузия-реакция" не содержит первой производной. Ее решением является функция ие(х) = ехр{-х/у/е) + ехр(-(1 - х)/у/е), (4.79) предельное значение которой при ε ~~> 0 есть разрывная функция -С . _ при χ = 0,1, «о(ж) = < ft (4.80) в противном случае. При малых конечных ε решение щ(х) почти всюду близко к нулю и имеет только около концов расчетного отрезка области резкого роста пограничные слои. Если в краевой задаче (4.78) положить ε = 0 и отбросить ненужные при этом граничные условия, то редуцированная задача и ее решение становятся тривиальными: й(х) =0, 0 < χ < 1. (4.81) Как видно из сравнения (4.79) и (4.81), функции щ(х) и й(х) в данном примере отличаются в двух концевых точках, что и определяет в задаче (4.78) наличие двух пограничных слоев. Ширина каждого слоя определяется по аналогии с (4.77): «ί0> = {«(*ί0)) = |[«о(0) +«(0)]}, (4.82) и в обоих случаях имеет порядок у/ё. Рассмотрим еще один пример сингулярно возмущенной задачи, в которой коэффициент при первой производной в дифференциальном уравнении меняет знак: -еи"{х) - 2хи' = 0, -К χ < 1, tx(-l) = -1, и(1) = 2. (4.83) Ее решение не выражается через элементарные функции и может быть записано в виде
§^.5. Равномерная сходимость по малому параметру 191 X f exp{-t2/e)dt и(х) = 3^ 1. (4.84) / exp(-t2/e)dt -ι Такая задача при малых ε имеет внутренний пограничный слой: в окрестности нуля решение резко меняется от ~1 до 2, а в остальной расчетной области является практически постоянным. 4.5.2. Самосопряженная квазилинейная задача. Рассмотрим одномерную задачу Дирихле для квазилинейного уравнения типа "диффузия-реакция" : Lu = ей" + f(x,u) — 0, xq < χ < acjv+i, ( л (Л (4·85) U{Xq) - Uq, W(X^+i) = «ΛΗ-1) в котором предполагается f(x,и) £ C2([zo,xn+i] *R), |~ >β > 0, (4.86) где R означает всю вещественную ось. Для построения искомой аппроксимации на сетке Пд = {Ω* = (χΐ,Ζί+ι)}, Xi+ι — Xi + hi, i = ОД,..., ЛГ, введем вспомогательную линейную краевую задачу с кусочно-линейными коэффициентами -εν" -f f(x,v) = 0, xq < χ < жлг+i, v(xq) = «о, v(xn+i) = «лг+i, (4.87) ΐ+1/2 /(X,ti) = Ι Л+1/2(ж^) = Л+1/2 + (ϊ - Xi+l/2)^ / Vi + Vi+1 \ 0/1 ,_ 0 1 4"—HsL,- *£4 lt+1/2 Уравнение (4.87) на интервале Ωί при заданных условиях ν(χ{) = ν», v(a;i+i) = Ui_j_i имеет точное решение. Чтобы его найти, оставим в левой части дифференциального уравнения только члены с постоянными коэффициентами и запишем 1*Ц-1/2Щ+1/2 Ξ ~CTi+l/2 + /i+l/2^'-fl/2 = &+1/2(е), ж € Ω;, 1 (4.88) 9i+l/2(x) = ^/т/г^ + ^+l) " /ΐ+1/2 + (« - Xi+l/2)f?+l/2- Общее решение дифференциального уравнения (4.88) с учетом того, что характеристические корни линейного оператора Li+i/2 = ~£^ ~Ь /н-1/2 Различные и имеют вид
192 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ А1>2 = ±ψ?+ί/21ε, (4.89) выражается через линейную комбинацию фундаментальных решений однородного уравнения и частного решения неоднородного уравнения следующим образом: fi+l/20«0 = 4<+1/2«ρ(λι(ίΕ-:Ρ<+1/2)) +Я*+1/2 ехр(А2(ж - ж<+1/2)) + wi+1/2(x), Щ+1/2(х) = λι - А2 5λι(*-χί+1/3) /" 5(χ')ελι(^-^+ι/2)^' (4.90) χ „βλ2(χ-*ί+1/3) / 5(х')еМ*'-*ч-1/2)^'1 «i + l/2 Здесь -Aj+1/2 Bi+i/2 - постоянные, выражаемые из краевых условий на интервале Ω, через величины v^ — v(ajj), г>г+1 = ν(χί+ι): fo+i - w<-n/a(gi+i)]egp(-A2fct/2) - [ы - wi+i/2(si)]ea:p(A2/ij/2) еяр((Ах - Х2)Ы/2) - exp(-(Ai - Аа)/ц/2) Βί+ι/2 - (4-91) [v<+1 - ^i+i/2(a;i+i)]^P(-^ifti/2) ~ fri - wi^1/2(xi)]exp(Xihi/2) exp((\2 ~ Ai)ft4/2) - ежр(-(А2 - Хх)Ы/2) Далее из условия непрерывности первых производных ^|._1/2(ж») — ν[+ι,2{χί)ι г — 1,2, ...,iV, получаем систему трехточечных (нелинейных) сеточных уравнений вида -fW-i + *<ν< - tiV<+i = //\ t = 1,2,..., #,. (4.92) при заданных значениях vq, ujv+i· He выписывая достаточно громоздкие формулы для коэффициентов и правых частей, отметим, что система (4.92) при условии (4.86) имеет единственное решение, которое в совокупности с формулами (4.90) дает точное решение дифференциальной краевой задачи (4.85). Вычитая почленно уравнения (4.85), (4.87) и обозначая z(x) — и(х) - г;(ж), получаем с помощью теоремы о среднем уравнение
§^.5. Равномерная сходимость по малому параметру 193 -εζ" + f'u(x,u*)z = у»(х), u* (z) € [«(as),v(z)], φ(χ) = /(ж, ν) - /(х, υ), z(a?0) = ^(^iv+i) = 0. Из определения кусочно-линейной функции /(ж, ν) для s € [as^asi+i] следует неравенство М*)| < CI*? + С2|«(х) - Р<+2Д{+1|а, (4-94) где постоянные С\^ не зависят от his. ε. Для решения краевой задачи (4.93) при условии (4.86) справедлива оценка, легко получаемая с помощью принципа максимума: \\*\\с < \\ψ\\α/β. (4.95) Поэтому если дифференциальное уравнение линейно (Сг = 0 в (4.94)), то из (4.95) имеем \\z\\c — 0(h2) равномерно по ε на любой квазиравномерной сетке (max{/ii}/min{/ii} = 0(1) при h -> 0). Однако в общем случае величина φ{χ) зависит от производной решения ν'(ж), которая экспоненциально растет в погранслоях при ε —> 0. Чтобы обеспечить при этом равномерную по ε сходимость, на краях расчетной области введем сгущающуюся к границам сетку Г -А"Чп -λ"4η[1 - (1 - А^М-Ч], г = 1,2,..., М, /n[l-(l-A)~1M-1(i\T-i)], » = JV-Af,...,tf, [ * } где предполагается А = y/β/ε <^С 1, хм — хо — #jv+i — χν~μ = |λ"1ίηλ| и для простоты полагается жо ~ 0, Sjv+i = 1, iV > ЗМ. Если вне пограничных слоев используется квазиравномерная сетка с максимальным шагом /i, то из вида функции ν (χ) с учетом (4.96) получаем < ί c3h2, -\ с4м-\ . . Vi + Vi+i.^ \ C3h2, χ е [χμ,χν-μ], Отсюда следует \φ(χ)\ < C$(h2 + М~2), а это с учетом (4.95) и независимости Μ от ε означает, что рассмотренная схема (4.92) имеет равномерную сходимость второго порядка. 4.5.3. Диффузионно-конвективное уравнение. Рассмотрим теперь задачу, в которой дифференциальное уравнение является линейным, но содержит в отличие от (4.85) член с первой производной:
194 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Lu(x) == -ей"(χ) + а(х)и'(х) + Ь{х)и{х) - /(ж), 0 < χ < 1, u(0) = с, u(l) = d, а{х) > а > О, Ь(ж) > О. Уравнение (4.97) можно, в принципе, свести к самосопряженному виду, если использовать неопределенный интеграл р(х) = J α(χ')άχ'ι ~ε(βχρ[ε~1ρ(χ)]η')' + b(x)exp[e~lp(x)]u — f(x)exp[e~1p{x)]. В таком случае можно для построения разностных уравнений использовать методику предыдущего пункта. Однако мы предпочитаем рассмотреть три схемы с равномерной сходимостью по е, аппроксимирующие непосредственно уравнение (4.97) на равномерной сетке с шагом h — 1/N и являющиеся в определенном смысле классическими. Первая из этих схем основана на непосредственной замене производных конечными разностями, в том числе с использованием левой односторонней разности для первой производной (с учетом а(х) > О, для обеспечения абсолютной монотонности, см. п. 1.2.3): L^vj - -εΔΛι>ί + β*ν^ιιί + b{vj - Д, i = 1,2, ...,JV - 1; v0 - c, vN = d, где Δλ и V^ - описанные в п. 1.1.1 стандартные конечные разности второго и первого порядков. Погрешность данной аппроксимации первого порядка и имеет вид ^] = ^«ί4)-^«Γ + 0(Λ»). (4.99) Вторая схема - А. А. Самарского - также является абсолютно монотонной, но имеет на гладких решениях (и конечных ε) второй порядок аппроксимации: L* >в? = l + hpi/2eAhV< + aiV*V* + *** = Я (4Л00) Построение этого уравнения можно интерпретировать как улучшение предыдущей аппроксимации {L\ *щ ~ Ьщ -f щ ), если в выражении для погрешности щ из (4.99) величину и" исключить с помощью исходного дифференциального уравнения и соответствующим образом скорректировать разностную схему. Третья схема имеет вид
§^.5. Равномерная сходимость по малому параметру 195 43Ч3 = - ^cth^Ahvf 4- aiVhvf + btf = fu (4.101) где Vh есть оператор центральной разности. Она предлагалась независимо различными авторами, но носит имя A.M. Ильина, так как именно он впервые обосновал, на примере данного уравнения, равномерную по ε сходимость (первого порядка по h) разностного решения. На достаточно гладких решениях, соответствующих конечным ε, аппроксимация (4.101) имеет погрешность О(h2). Более того, эта схема дает точное решение дифференциального уравнения (4.97), если последнее имеет постоянные коэффициенты a, b и /. В полном объеме обоснование равномерной по ε сходимости разностных схем (4.98), (4.100), (4.101) достаточно трудоемко, и мы ограничимся изложением основных идей доказательств и сводкой результатов, следуя подходу Б. Келлога (см. обзор литературы в [47]). Отметим, что при положительности о(х) сингулярно возмущенная краевая задача (4.97) редуцируется при ε -» 0 к задаче Коши av' + bv = /, ν(0) = с. (4.102) Потеря краевого условия в редуцированной задаче при χ = 1 приводит к появлению пограничного слоя в решении и(х) при малых е. Краевая задача (4.97) обладает принципом максимума: при условиях Lu > 0, и(0) > 0, и(1) > 0 решение и(х) является неотрицательным. С помощью принципа максимума устанавливаются существование и единственность решения краевой задачи (4.97), а также доказываются оценки производных и^ (х). Лемма 4.1. Если функция f(x) удовлетворяет условиям |/W(a!,e)|<C71{l + e-^1ea:p[-ae-1(l-x)]}, ρ = 0,1,-, 9, (4.103) то для производных решения задачи Ц.9Ч) справедливы неравенства \и{р)(х)\ < С2{1 + е-рехр[-ае~х(1 - ж)]}, ρ = 0,1,..., q - 1. (4.104) Кроме того, решение и(х) может быть представлено в виде и(х) = (736χρ[-α(1)ε~1(1 - χ)] + й(х), (4.105) где для производных функций й(х) выполняются оценки |«(р)(яе)| < С4{1 4- е-р+гехр[-ае-х(1 - х)}}. (4.106)
196 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИИ Здесь и далее в этом пункте С к обозначают не зависящие от ε,/ι постоянные. Отметим, в частности, что неравенство (4.104) при ρ = 0 означает ограниченность решения и(х). (к\ Для погрешностей аппроксимаций фк — {Фк,г = (Lu)i — Lh щ}, к — 1,2,3, рассматриваемых разностных схем с помощью тейлоровских разложений выводятся следующие оценки: NM < C5b(efc|«(4)(ii)l +1«(2)(6)1), к =1,3, l*2.i| < Сбг^-(е2к(4)(6)1 +Ф(3)«4)| + |и(2)(&)|), (4-107) \Ф*А < CVh2[e|«(4)«e)l + |ι*(8)(ίτ)Ι + № + ε)~ V2)(&)l], & G [x»_i,X£+i]. Поскольку все три исследуемые схемы являются абсолютно монотонными, то для оценки векторов ошибок разностных решений Zk — {zk,i = щ - г;*}, удовлетворяющих уравнениям L^Zk = Фк, вводятся вспомогательные мажорантные, или барьерные, векторы Wk = {wjfe,i — rk~N}' к — 1)2,3, где т^ суть следующие положительные числа: П = 1 + α/ιε \ т2 = τϊ + -a2/i2e"2, r3 = expiate'1). (4.108) Векторы w* имеют ограниченные компоненты и удовлетворяют неравенствам Ь(*Ч > %~TWk- (4.109) тах(л, е) Далее с помощью представлений фь,% из (4.107) и оценок производных из леммы 4.1 выводятся неравенства между компонентами соответствующих векторов фк и Wk-, позволяющие на основе теоремы сравнения для монотонных матриц (см. п. 3.3.2) установить главный результат. Теорема 4.11. В условиях леммы 4-1 для ошибок разностных ре- тений схем (4-97)7 (4-100), (4Λ01) справедливы следующие оценки: 79 h{l -f e"1exp[-ae~l(l — Xi)]}7 h < ε, ~" 7д{/1 + ехр[—а(1 — Xi)/(ah + ε)]}, h<£, А < | С9Л{1 + е хехр[-ае 1(1 — ас*)]}, Л < е, μ2,ί| - * C9{h + exp[-a(l - Xi)/(ah + ε)}}, h<e, ( ' '
§ ^.5. Равномерны сходимость по малому параметру 197 {ft2 ft2 —-- + —ежр[-а£_1(1 - ж,·)]}, λι + ε £ где α G (0, а) есть постоянная, зависящая только от а. Неравенства (4.110) означают, что при конечном значении ε вторая и третья схемы имеют ошибки разностных решений О (ft2). Однако при ε —> 0 все три схемы имеют только первый порядок точности. Важно подчеркнуть, что такая потеря порядка сходимости при переходе к ε — 0 (при этом фактически мы говорим о точности решения редуцированной задачи (4.102)) оказывается неизбежной для всех трехточечных монотонных схем. Чтобы это показать, достаточно рассмотреть разностный оператор с постоянными коэффициентами (Lhu)i = -rtii-i +■ 8Щ - tai+i, (4.111) где г, 5, t являются непрерывными функциями параметров ft > 0 и 0 < ε< 1. Теорема 4.12. Пусть для любой гладкой функции погрешность аппроксимации фг — (Lu)i — Ьнщ удовлетворяет для всех г неравенствам |-0i(x, Л,е)| < Ch1', где η > 1, операторы L и Lh определяются из (4-97) и (4-111), а постоянная С не зависит от ж, ft и е. Тогда разностный оператор Lh не является монотонным для всех достаточно малых h и ε. Доказательство. Заметим, что для монотонности трехдиаго- нальной матрицы вида (4.111) необходимым условием является неотрицательность величин г, t (см. ниже п. 6.8.3). Таким образом, нам достаточно показать, что если η > 1, то один из коэффициентов г, t при каких-нибудь Λ, ε становится отрицательным, т. е. матрица £д не является матрицей положительного типа. Если предположить, что и(х) есть квадратичный полином, вычислить невязку и сопоставить коэффициенты при различных степенях, мы приходим к системе уравнений -r-f-5 — ί = 6 + μ(χ, ft, ε), ft(i-r) = a+-A(s,ft,£), (4.112) ft2 (r+ ί) = 2ε + η(χ,/ι,ε), где |μ|,|λ|,|ΐ7| < (7ft7 равномерно по ж, ft, ε. Из решения этой системы получаем '<*■■>-£-έ-*+&- <4-ш)
198 ГЛ. 4- СХОДИМОСТЬ ПРИБЛИЖЕННЫХ РЕШЕНИЙ Отсюда следует r(/i, 0) — — —^ + 0(/ι7-1), τ. е. для достаточно малых h коэффициент г становится отрицательным. Из (4.113) видно, что величина г (Л-, ε) будет положительной только при выполнении неравенства ε>ψ. Π Таким образом, теорема 4.12 устанавливает, что не существует трехточечной монотонной разностной схемы, равномерно по ε сходящейся к решению уравнения (4.97) с порядком j > 1. В частности, не существует монотонной аппроксимации редуцированного уравнения (4.102) с порядком точности выше первого. Последний результат перекликается с теоремой С. К. Годунова о том, что не существует монотонной схемы, аппроксимирующей дифференциальное уравнение первого порядка со вторым порядком точности.
ГЛАВА 5 ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Данная и следующая главы относятся к специальным разделам численных методов линейной алгебры, посвященным решению системы уравнений с разреженными матрицами, а еще более конкретно - с ленточными матрицами, имеющими конечное число ненулевых элементов в каждой строке. Основное внимание мы уделим блочно- трехдиагональным матрицам, возникающим в двумерных краевых задачах, так как трехдиагональные матрицы "слишком просты" (хотя они представляют собой уникальный объект для глубокого изучения, см. [19]), а системы, проистекающие из трехмерных задач, решаются, в принципе, по аналогичным алгоритмам, но отягощенным серьезными техническими сложностями. § 5.1. Методы решения систем уравнений с трехдиагональными матрицами Простейшая из рассматриваемых нами систем имеет вид (3.3), и мы перепишем ее в покомпонентной форме (Av)i ~ -CLiVi-χ + biVi - CiVi+ι = /j, αχ = cN = 0, i = l,...,JV. (5.1) Для решения системы (5.1) рассмотрим несколько различных алгоритмов не столько в силу их практической значимости, сколько в методических целях, так как заложенные в них принципы переносятся и на более сложные задачи. Практически все рассматриваемые в данном параграфе методы базируются на описанных в п. 3.1.3 факторизациях матриц, однако для простоты изложения зачастую удобно привлекать их описание в покомпонентном представлении. -
200 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ 5.1.1. Простейший метод прогонок. Мы начнем с простейшего, или стандартного, алгоритма прогонок, для которого в методическом плане полезно дать следующий краткий вывод формул. Решение системы (5.1) ищем в виде рекуррентной последовательности Vi - j9ivi+i + zif i-Ν,Ν-Ι,..., 1, (5.2) где βΐ и Zi - пока неизвестные величины. Выражая с помощью (5,2) величину Vi-χ из (5.1), приходим к соотношению (Ьг* — αιβ{^ι)νι — c»Vt+i + fi + aiZi-χ. Поделив обе его части на скобку и приравнивая однотипные члены в получаемом равенстве и (5.2), мы можем утверждать, что решение в форме выписанной рекурсии действительно будет удовлетворять исходной системе, если л» = ь \ -, WT?-1' ί = 1-2.···^· (5·3) bi - aiPi-ι bi - aiPi-i Формулы (5.2), (5.3) и определяют знаменитый метод прогонки, причем последние составляют первый этап (прямой ход), а предыдущие - второй этап (обратный ход). Выписанные рекурсии "стартуют" автоматически, так как в силу особенностей коэффициентов системы фактически для г = 1, N формулы имеют вид βι — cx/bi, z\ — /ι/&ι, ν ν = %ν· Для трехдиагональных систем уравнений общего вида метод прогонки является самым экономичным алгоритмом и требует выполнения SN арифметических действий. При многократном решении систем с одинаковыми матрицами и разными правыми частями общий объем операций можно сократить путем запоминания вспомогательных величин. При этом один раз рассчитываются значения βί = Cidu di = {bi - αΐβ-ι)"1, г = l,...,iV, (5.4) а затем для каждой правой части прямой ход состоит только в вычислении ^ = di{fi + aiZi-ι), t = 1, ...,iV. (5.5) Формулы (5.2) и (5.5), как легко подсчитать, требуют выполнения только 5JV действий. Нетрудно убедиться, что если система уравнений (5.1) обладает свойством диагонального преобладания (|Ь<| > \а,{\ Н- |с{|, причем хотя бы для одного г — го неравенство строгое), то метод прогонки корректен в том" смысле, что вычисления реализуемы (проходят без деления на нуль). Действительно, в этом случае по индукции легко показываются неравенства |Д| < 1 (для г = 1 это очевидно) и \ά^λ\ > |с*|, причем
§ 5.1. Уравнений с трехдиагональными матрицами 201 при г > го неравенства строгие. Необходимо отметить, что сделанное утверждение справедливо только при абсолютно точной арифметике. Чтобы в этом убедиться, достаточно рассмотреть симметричную матрицу с элементами Ь{ = 2, а = 1 для г = 1,..., Ν— 1 и 6# = Q>n — 1. При вычислениях на машине со сколь угодно малой, но конечной, погрешностью округлений найдутся такие достаточно большие iV, что величина 0n-i будет с точностью до всех разрядов равна единице, что приведет при расчете zn к авосту (делению на нуль). Если равенства (5.2) и (5.5) переписать в виде gi = df1, υ,- - 0iVi+x = ^ti 9%%% —α>%ζ%~\ = Л> то очевидно, что они реализуют решение систем с треугольными матрицами L и U: Lz = /, Uv = 2, (5.6) которые L = имеют вид " 01 —а.2 0 -O/V 0 ' 9n _ , и = ' 1 0 -A 1 0 ~/3τν-ι 1 и представляют собой треугольные множители факторизации А = LC/. Замечание 5.1. Если ввести некоторую диагональную матрицу G = diag{<7j}, то разложение можно записать в виде соотношений А = LGU, L = LG~l, U = U, которые в случае симметричности А дают L' ~ U, При этом для положительных d{ можно определить G1//2 = diag{<^' } и ввести новую факторизацию А = LL', L = LG1/2 — (G1//2t/)' = (ЕЛ), являющуюся разложением Холесского. Применение его к решению систем уравнений с трехдиагональной матрицей приводит к подсистемам Lw = /, Uv = ги, которые в покомпонентной форме реализуются с помощью рекуррентных соотношений 01 = Ъ\/2, * = (Ь-а?/*?)1/а, wi = ΛΜ, «i = (Λ + Oigi-iWi-i)/9i, * = 2,...,ΛΓ, ujv = wn/9n, Vi = (w< +fim+x)lgu » = N - !,...,!. (5.7) Отсюда видно, что метод Холесского не дает по числу операций преимущества в сравнении с алгоритмом прогонок, хотя последний не использует свойство симметрии матрицы.
202 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ 5.1.2. Метод встречных прогонок. Совершенно очевидно, что вместо рассмотренных формул прогонки (5.2), (5.5) можно взять альтернативный к ним вариант, основанный на противоположном направлении вычислений в прямом и обратном ходе. Такой метод определяется как βι = <ii· di, Zi — di{fi + CiZi+i), dt - {bi - Cift+x)"1, i - Ν, Ν - 1,..., 1, (5.8) Щ = β№~\ + *i, i^ 1, 2,..., N. Это совершенно эквивалентный алгоритм, не хуже и не лучше предыдущего. Основанием к выбору одного из них может быть повышение устойчивости численного решения к погрешности машинных округлений или другие соображения, но мы на этих вопросах не останавливаемся. В отличие от (5.6) его реализация сводится к другой последовательности систем с треугольными матрицами: Uz = /, Lv — ζ, где первой решается верхняя треугольная. Отсюда видно, что такая прогонка базируется на новой факторизации, в которой левый множитель есть правая треугольная матрица, а правый левая треугольная A = UL, 1 0 1 0 -βΝ 1 J На основе двух различных прогонок может быть построен третий алгоритм - так называемый метод встречных прогонок (на самом деле это семейство, отличающееся "местом встречи" альтернативных рекурсий). Сущность подхода заключается в следующем. Пусть задано некоторое целое 1 < io < N (его значение - свободный параметр семейства алгоритмов). Выполним прямой ход для 1 < г < го - 1 по формулам (5.4) и для г'о 4-1 < г < N по формулам (5.8). Далее с помощью выражений U = d- -ci -cjv-i d^1 исключим из io-ro уравнения неизвестные и,*0+ь Vi0+\ и вычислим
§ 5.1. Уравнений с трехдиагональными матрицами 6ίο - aio/3io - ct-0/3io+i 203 (5.9) После этого значения Vi для 1 < г < г0 находятся по формулам обратного хода (5.2), а для го < г < N - по формулам (5.8). Здесь на первых шагах рекурсий формально можно положить βίο-г = А'о+1 — 0 и откорректировать величины Ζί0~ι и έϊ0+ι, пересчитав их новые значения по формулам Zio~l ~ ^<о-1 ~ ^io-l(/io-l + β*ο-1υ*ο + a*o-l^io-2)> ^to + 1 = vi0 + l = rfio + l(/t0 + l -b aio + \Vio + Ci0 + iii0+2). При этом мы фактически переходим к решению сеточных подзадач, у которых в точке го уже задано условие 1-го рода и его требуется учесть в правых частях уравнений для прилегающих узлов. Сформулированный таким образом метод встречных прогонок практически не уступает по числу операций обычному алгоритму (требуется только на 6 арифметических действий больше для расчета г?1о). Целесообразность его применения может быть оправдана как повышением численной устойчивости (за счет сокращения длины рекурсии или особых свойств разностных коэффициентов), так и потенциальной возможностью распараллеливания вычислений, которые при наличии двух процессоров могут выполняться одновременно в подобластях слева и справа от точки го- С методической точки зрения интересно представить матричную интерпретацию алгоритма встречных прогонок. Для этого перенумеруем последовательно компоненты векторов ν, / в следующем порядке: сначала от 1-й до (го — 1)~й, далее - от (г'о + 1)-й до iV-й и последнюю с номером г"0 (здесь указываются их "старые" номера). Затем векторы представим в блочной форме ν = (ναι уь, ΰ0), / = (/α, /ь, /о)> где подвек- торы va, fa имеют размерность г0 — 1, г>& и Д — размерности (iV — го), а ΰ0 - о ϊ /ο = /ίο ~ фактически скаляры. При этом система приводится к виду Аа 0 -La 0 Аь -Lb -и* " -иь Ао ' va Щ . v° . — 'fa fb /о (5.10) в котором Аа, Аь - квадратные трехдиагональные подматрицы порядка г0 - 1 и N — го, La — (0, ...,0,α*ο) и Lb = (с*0,0, ...,0) - строки тех же размерностей, Ua = (0, ...,0,c^o_.i)' и Ub = (α;ο+ι,0, ...,0)' - вектор- столбцы и Αο = bi0 ~ "матрица первого порядка".
204 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Для системы (5.10) проведем еще дальнейшее "укрупнение", объединив подвекторы να, Уь в один вектор ν = {va,Vb) порядка N — 1 и соответственно определив / = (/о,/ь)· После этого получим новое блочное представление: А -L -ЕМ Г ν 40 J L vq f /о (5.11) где L — (La,Lb) и U = {U^UD' - вектор-строка и вектор-столбец размерности N — 1, а Л - блочно-диагональная матрица с блоками Ла, Аь на диагонали. Применим к матрице блочного второго порядка из (5.11) разложение (3.38) на блочно-треугольные множители: (5.12) A U ' L А0 I = [ К οι 1 L -L °o J G0 = А0 - LA- Г Ε [ 0 ■ιϋ, -Α~ιυ Eq где Ε, Εο - единичные матрицы соответствующих порядков, этого исходную систему разобьем на подсистемы После А -L 0 Go Ζ rr ./о . ) £ -A~XU О Е0 -Ί-ί-1- Как отсюда видно, для нахождения подвектора ζ =■ {ζ^,ζ^)' в силу блочно-диагональной структуры А необходимо решить подсистемы уравнений с матрицами Аа и Аь· Для первой из них применим разложение вида (5.6), а для второй - факторизацию с правой треугольной матрицей в качестве первого множителя и левой треугольной - в качестве второго: LUza - /«, ULzb = fi,. (5.13) Введенные двухдиагональные матрицы L = {—a,i,d~1}, U = {dj , —с,·,} имеют порядоки го — 1, iV — го и содержат диагональные элементы dj-1, г = 1, ...,г"о — 1 и d^-1, г = г"о + 1, ...,iV, вычисляемые с помощью формул (5.4) и (5.8) соответственно. Вводя теперь в (5.13) векторы ζ — Uza и£ = Lzb, легко обнаруживаем, что их компоненты Ζχ для г = 1,..., г"о —1 и £г* для г = го+1,..., ^\Г также вычисляются по формулам прямых этапов прогонок - соответственно (5.4) и (5.8). Далее несложный анализ векторных равенств (5.13) показывает, что величина νο равна zq и в силу структуры строки L удовлетворяет соотношению
§ 5.1. Уравнений с тпрехдиагональными матрицами 205 GqVq = /о + LaZa + LbZb- (5.14) Теперь надо вспомнить, что строки La и Lb содержат только по одному ненулевому элементу, так что правая часть (5.14) равна числителю дроби в (5.9). Для вычисления vq = Vi0 надо еще учесть структуру вектор-столбца Z7, содержащего только два ненулевых элемента, а также блочно- диагональный характер матрицы А и равенство А$ = Ь{0. Отсюда, используя факторизованные представления обратных матриц А~1 = U~xL~lz А^х — t/~1L~1, можно установить, что в формуле для Go из (5.12) последний член представляет собой сумму двух слагаемых LA~XU = α»0/3ϊ0_ι -hc»0/3i04-i, причем множитель Д0_ι есть правый нижний элемент обратной матрицы Л"1, a A0+i - левый верхний элемент матрицы А^г (это действительно так, поскольку диагональные элементы матриц jj и U~l равны соответственно βχ/ci и Д-/а», а матрицы U ~1 и £-1 имеют на главных диагоналях единицы). Таким образом, формулы (5.14) и (5.9) являются эквивалентными, т. е. прямой ход метода встречных прогонок описывается векторно-матричной формой (5.13). После этого надо выполнить обратный ход метода, алгебраическая интерпретация которого состоит в нахождении подвектора ν из (5.13): ν - ζ + Α-ψνο - A~l{f + ΰϋ0). Подробнее это можно представить в виде Аащ = Λ + voUai Abvb = Д + v0Ub, (5.15) откуда с учетом треугольных разложений матриц Аа и Аь нетрудно усмотреть, что оставшиеся вычисления действительно реализуются формулами обратного хода "обычных" прогонок, с предварительной корректировкой значений Z{0 и ζ»0+ι, т&к как именно для этих значений индексов векторы ν$υα и vollb имеют единственные ненулевые компоненты. Аддитивные представления правых частей в (5.15) позволяют дать следующую интерпретацию решений подсистем на языке разностных краевых задач для I < г < io is. io + I < i < N: каждое из них есть сумма двух слагаемых va = Va 4- vi , Vb — Щ *"*" vb > где инДекс 1 означает решения с правыми частями Д и однородными (ненулевыми) граничными условиями Дирихле в г-й точке, а индекс 2 относится к решениям с нулевыми правыми частями и значением vq = ViQ в точке раздела исходного расчетного отрезка.
206 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Такой взгляд дает право считать рассмотренный алгоритм простейшим из методов декомпозиции области на подобласти, составляющим актуальное направление в численном решении многомерных краевых задач. А на алгебраическом языке метод встречных прогонок можно назвать методом редукции, означающим сведение решения исходной системы уравнений к решению меньших подсистем. 5.1.3. Методы редукции трех диагональных систем. Совершенно естественно напрашивается обобщение метода встречных прогонок путем перехода к редукции исходной системы уравнений не на две, а на произвольное число т < N подсистем. Пусть заданы номера 1 < г1 < ... < гт < N т точек, разделяющих сеточную область Ω^ на подобласти Ω&, к = 1, ...,га + 1, каждая из которых содержит узлы с номерами от г^-х до ύ — 1 (полагаем io — 1 и гт+1 — N). Обозначим через щ подвектор ттг-ro порядка со значениями, соответствующими узлам-разделителям, и через Vk, к — 1, ...,т + 1, -- подвекторы с размерностями Nu = Η — 1 — Η~ι и компонентами из ilk- Вводя еще "объединенный" вектор ν — (ϋχ, ...,vm±x) размерности TV ~ N—m, систему уравнений (5.1) опять можно представить в блочном виде (5.11), но теперь б лочно-диагональная матрица А — diag{^fc} будет иметь блочный порядок га +1, a Aq = diag{i>i0} представляет собой диагональную матрицу m-го порядка. Далее, L является уже "блочной" строкой, т. е. совокупность т строк длины iV, каждая из которых имеет по два ненулевых элемента. Разбивая эти строки нат + 1 частей в соответствии с порядком матриц Д запишем (аналогично поступаем и с блочным столбцом U) £ = (Ь15...,ЬТО), U = Каждая прямоугольная матрица Lu содержит только два ненулевых элемента, причем в fc-й строке она имеет правый ненулевой элемент а,{к, а в (к Н- 1)-й строке - левый ненулевой элемент C{h. Прямоугольные матрицы Uk содержат столько же ненулевых элементов, расположенных симметрично относительно ненулевых элементов L^· Разложение матрицы системы на блочно-треугольные множители и в данном случае имеет вид (5.12), где теперь матрица m-го порядка Go является трехдиагональной, что следует из выражения иг ип
§ 5.1. Уравнений с трехдиагональными матрицами 207 Μ Ga=Ao~Y,LkA-lUk. (5.16) Как и в методе встречных прогонок, элементы Go будут выражаться через коэффициенты исходных уравнений и угловые элементы обратных матриц А^1, а разделительный вектор щ = zq (cm. (5.13)) находится из решения подсистемы Govo^fo + Lz- (5.17) Предварительно блочные компоненты вектора ζ = (z[t ...,ζ^+1)' определяются как решение вспомогательных подзадач Ajtzjt = Д, а искомые решения в подобластях вычисляются на последнем этапе (обратный ход) по формуле vk=A-l(Ukv0 + fk). (5.18) Более наглядно вычислительный процесс можно описать в терминах прогоночных коэффициентов для решения подсистем в сформированных подобластях. Рассмотрим совокупность уравнений (5.1) на отрезке £1к для г = г*._1+1,...,г*. — 1, предполагая известными значениями решения ν,·Λ_ λ, Vih в его концевых точках. В силу линейности подсистемы ее решение vk можно представить как сумму трех слагаемых vk = щ + vifctfA + vih^vk. (5.19) Первое из них - решение уравнений с заданными правыми частями и нулевыми граничными условиями 1-го рода в г*._1-й и гк-й точках, & #fc, vk - решения той же подсистемы с нулевыми правыми частями и следующими граничными условиями: для vk решение равно единице на левом конце и нулю - на правом, для vk - наоборот. Естественно, что их значения находятся очень легко: ν,-,,-ι = cih-xJ \bih„x -a<b_i -ftfc-2j» щ =/3ji)<+ll * -г* -2, --.jift-i -h 1; v,· = 0iV{-u i = **-i + 2, ...,ifc - 1, где Д /3» определяются формулами (5.4), (5.8), но только для подсистемы с матрицей Ак.
208 ГЛ. 5, ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Выписывая аналогичное аддитивное представление подвектора решения Vk+i, подставим его вместе с Vk в г^-е уравнение в точке на стыке подобластей Ω* и Ω&+ι- В итоге получаем равенство -о>кЩ^г + bkVik - ckvh+1 = fk (5.20) такого же трехчленного вида, как и в исходной системе, но связывающее на этот раз значения решения в соседних разделительных точках. Коэффициенты и правые части новой редуцированной подсистемы имеют вид Ьк - bik - aikvik~i - cihvik^i, ak = aihVih-i, Ck ·= CihViH+u fk = fik +aibt5ib_i +cihVih+i. Детальный анализ элементов матрицы Go и правой части уравнения (5.17) подтверждает идентичность последнего с системой (5.20). После нахождения вектора vq с помощью аддитивного представления (5.19) можно вычислить остальные искомые компоненты решения, формально не прибегая к выполнению обратного хода с помощью выражения (5.18). Однако фактически обратный ход все равно делается при расчете векторов как ν*, так и Vk, υ*. Хотя в основе описанного метода редукции лежит все тот же алгоритм прогонки, общее количество операций в данном случае увеличивается хотя бы из-за необходимости вычисления в подобластях Ω* дополнительных прогоночных коэффициентов, а также реализации аддитивного представления решения (5.19) (исключение составляет случай m = 1, но это как раз рассмотренный выше метод встречных прогонок). Изложенный метод редукции, или декомпозиции области, может оказаться полезным при необходимости вычисления решения только в отдельных точках, а особенно - при многократном повторении этой процедуры с какими-то изменениями исходных данных. Алгоритм может применяться также для повышения устойчивости вычислений в задачах при наличии подобластей с резко меняющимися свойствами и специальными особенностями решений. И конечно, главное потенциальное качество метода - возможность гибкого распараллеливания на вычислительных системах с различным числом процессоров. За все эти качества, как мы видели, приходится платить дополнительной сложностью, и вопросы реального повышения эффективности требуют более углубленного изучения.
§5.i. Уравнений с трехдиагопальными матрицами 209 5Л.4. Метод циклической редукции. При осмысливании методов редукции может возникнуть интерес ко второму крайнему случаю (кроме т ~ 1), когда система разбивается на максимально возможное число подсистем. Такой случай один, и реализуется он при исключении каждой второй неизвестной. Пусть для простоты в исходной системе (5.1) число уравнений N ■= 2к — 1, где к - целое число. Выражая неизвестные для нечетных г с помощью соотношений Щ = (/г + ttiVi-1 + CiVi+i)/bi, (5-21) после их исключения получим подсистемы порядка Νχ = 2k~l ~ 1 для четных неизвестных -a^Vi-2 +Ь^ -c\%i+2 = f\x\ i = 2,4,...,N-1, в которой новые коэффициенты выражаются формулами В этой подсистеме исключим опять каждую вторую неизвестную, получая новую редуцированную подсистему порядка Ν2 = 2к~2 — 1. Продолжая этот процесс далее, на каждом j-м этапе редукции будем иметь систему из Nj — 2k~i — 1 уравнений -a^Vii.2i + &!f Vij - c\fvii+ai = flf,ij = 2\ ..., Nj, (5.22) коэффициенты которой выражаются рекуррентно по j через коэффициенты предыдущего этапа редукции: -0-1) a(i-i) 7,0) _ 1,0-1) _ 0-1)4-2*-' _ Q-l)"b+2i-' % ~% αύ ,0-1) % ·0-ι) ' a0) = e0-U ^|zlf CW = ^> $±£1 (5.23) /i,- - J%i + % (y_i) -1-е»,- Jij~2>-1 uij+2>~1
210 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ На последнем этапе редукции получим одно уравнение относительно неизвестной с номером (N + 1)/2. После его вычисления начинается обратный ход редукции с поэтапным определением остальных неизвестных по аналогичным (5.21) формулам, полученным из уравнений (5.22): «<i = (ft1}+«g4-*+«ίΝ+»θ/*ίί)- <5·24) В блочной интерпретации метод циклической редукции также представляется формулами (5.11), (5.12). В данном случае подвектор ν состоит из нечетных компонент вектора ν, а г>о - из четных. Матрицы А и Aq - диагональные, a U и L содержат максимум по два ненулевых элемента в каждой строке. Матрица Go оказывается трехдиагональной порядка JVi, для решения системы (5.14) аналогично предыдущему проводится разбиение вектора щ на подвекторы с четными и нечетными компонентами, и далее процесс редукции продолжается "в глубину". Простой подсчет числа арифметических операций в формулах (5.23), (5.24) показывает, что данный вычислительный процесс значительно проигрывает методу прогонки. С точки зрения распараллеливания этот алгоритм также обладает существенным недостатком: если имеется в наличии, например, Νχ процессоров, то на первом этапе редукции они могут быть эффективно использованы для пересчета коэффициентов вида (5.23), однако на последующих этапах остается все меньше и меньше уравнений и значительное количество процессоров будет простаивать. Для устранения этого эффекта можно предложить метод циклической редукции без обратного хода, который заключается в следующем. На первом этапе поочередно исключаются четные и нечетные неизвестные, в результате чего получаются две независимые подсистемы. На втором каждая из них, в свою очередь, редуцируется аналогичным образом, что приводит к четырем независимым подсистемам. На к-ы этапе такого процесса формируется N уравнений с одним неизвестным, и на их вычислениях алгоритм заканчивается. В таком методе при наличии N процессоров на каждом этапе все они будут задействованы, а данная задача служит примером того, как с точки зрения быстрейшего ее решения на многопроцессорной вычислительной системе может оказаться целесообразным выбирать алгоритм, увеличивающий общее число арифметических действий.
§ 5.2. Блочно-трехдиагоналъные системы 211 § 5.2. Методы факторизации для блочно-трехдиагональных систем Предметом изучения в данном параграфе будет обобщение системы (5.1), которую в блочно-компонентной форме запишем как (Av)k = -LkVk-.! + Dkvk - Ukvk+i = Д, (5.25) L^Un^O, fc = l,...,tf. V Здесь υ^ и Д суть подвекторы в общем случае различных порядков Nk, а блочно-трехдиагональная матрица А имеет вид (3.25). Хотя система (5.25) описывает формально достаточно большое многообразие разностных задач, в том числе и трехмерных, мы главное внимание уделяем пятиточечным уравнениям для двумерных областей. В этом случае (мы предполагаем естественную нумерацию узлов по координатным линиям) матрицы Dk - трехдиагональные, a Lk и Uk содержат в каждой строке не более одного ненулевого элемента. 5.2.1, Методы матричных прогонок* Для единообразия будем "принципиально" следовать изложению материала в п. 5.1.1, стараясь вносить минимум изменений, связанных с переходом со скалярного на матричный уровень. Ищем решение системы (5.25) в виде рекуррентной последовательности vk = Bfcvfc+i + zk, k^N,N-l7..., 1, (5.26) где Вкжгк- пока неизвестные матрицы и векторы. Выражая с помощью (5.26) вектор vk-\ из (5.25), приходим к соотношению (Dk - LhBk-i)vk = Ukvk+1 + Д + Ljfe2*+i. Умножив обе его части слева на матрицу (Вк — LkBk~i)~l, в предположении ее невырожденности, и приравнивая однотипные члены в полученном выражении и (5.26), приходим к формулам Bl = D^lUi, Zl=D^fu Вк = (Dk - LkBk^yxVk, (5.27) zk = (Dk -L*B*_i)-l(/* + L»z*-i), к = 2,...,N. Полученный таким образом метод и называется матричной прогонкой, причем рекуррентные соотношения (5.27) составляют прямой ход алгоритма, а (5.26) - обратный. Чтобы оценить объем необходимых для
212 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ его реализации вычислительных ресурсов, предположим для простоты, что все матрицы Dk и, следовательно, Bk имеют одинаковый порядок Nk -Μ. Наиболее трудоемкой процедурой является вычисление матриц Вк-> являющихся плотными, несмотря на разреженность Ζ)*, Lk и t/fc, так как здесь присутствует операция обращения. Поскольку последняя при больших Μ требует выполнения 0(М3) арифметических операций и наличия оперативной памяти объемом 0(М2), в итоге необходимые объемы вычислений и памяти имеют вид Ρ - 0(NMZ), Q = 0(ΝΜ2). Если в двумерных задачах Ν ^ Μ — 0(h~x) это составляет приемлемые величины для компьютеров и задач среднего класса, то для трехмерных сеток N - О^"1), Μ = 0(/Г2), Ρ = 0(/Г7), Q = 0(/Г5), и, например, при числе узлов в одном измерении N = Μ — 100 получаем Ρ ж 1014, Q « 1010, что представляет серьезную задачу даже для современных суперкомпьютеров. Спасительным может быть наличие сильной вытянутости области в одном направлении (Ν ^> М) - именно вдоль координаты с большим числом узлов надо организовывать матричные прогонки. Это означает, при необходимости, т. е. если изначально дано Μ > Ν} перенумерацию узлов сетки и переопределение подвекторов V{ (меняются ролями строки и столбцы сетки), что приводит к новой блочной структуре матрицы А (см. (3.28)-(3.31)). Другой вариант метода матричных прогонок можно рассмотреть на базе разложения (3.38) блочно-трехдиагональных матриц на блочно- треугольные множители: <?1 A = (G-L)G-1(G-U) = О 1 Г <?ι 0 —ί-Λτ Gn Gx -Ui 'Ν -Un-i Gn (5.28)
§ 5.2. Блочно-трехдиагональные системы 213 Сг = Du Gk = (Dk - LhGk^rlUk^ к - 2, ...,Ν. Если ввести обозначение G~1(G — U)v — ζ — {zk}, то с помощью (5.28) процесс решения разбивается на два этапа: (G - L)z = /, (G - D> - Gz. (5.29) Легко видеть, что в (5.28) и (5.27) матричные прогоночные коэффициенты связаны простым соотношением Вк = G^Uh (5.30) и что предыдущий метод (5.26)-(5.27) в "крупноблочном" варианте записывается как (G - L)z = /, (Ε- Β)υ = ζ, τ. е. вспомогательный вектор ζ в обоих случаях один и тот же. Вопрос обоснования корректности метода матричных прогонок однозначно связан с невырожденностью матриц Gk и самим существованием Вк. В значительной степени здесь проясняет ситуацию следующее утверждение. Теорема 5.1. Пусть матрицы Вк определяются рекуррентными соотношениями (5.27), и пусть выполняются условия \\О^Щ < lk, \\D^Uk\\ < uk, ί*«*_ι < -. (5.31) Тогда справедливы неравенства ||В*||<2«»^-, fc-1,2,... (5.32) Доказательство следует из легко проверяемых соотношений \\ВЫ\\ = \\(Е - DlLbBb^D^UuH < t.J^u и применения обычной математической индукции (в том числе для доказательства необходимого при выводе условия lk\\Bk-i \\ < 1). При этом попутно устанавливается невырожденность матриц D^xGk = Ε — D^1LkBk-i, а следовательно, и Gk. В предыдущем параграфе мы говорили о диагональном преобладании как о достаточном условии корректности прогонки. Теорема 5.1
214 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ устанавливает более сильный результат, и он действителен, естественно, для скалярной прогонки как частного случая. Для матричных прогонок, как и для скалярных, можно легко построить альтернативный к (5.26), (5.27) алгоритм с противоположными направлениями счета в прямом и обратном ходе по аналогии с (5.8), а на основе комбинирования двух процессов сформулировать метод встречных матричных прогонок и его обобщение - метод редукции блочно-трехдиагональных систем. Мы на этих вариантах останавливаться не будем, так как принципиально нового качества они не привносят, в отличие от алгоритмов, которые мы рассматриваем в следующем параграфе. § 5.3. Методы вложенных сечений В предыдущем параграфе мы уже отмечали на примере методов матричной прогонки, что изменение упорядоченности узлов сетки может привести к качественной перемене блочной структуры матрицы и объема вычислительных ресурсов для системы уравнений. В том конкретном случае выбор алгоритма обуславливается уменьшением полуширины ленточной матрицы. 5.3.1. Метод бисекций. Рассмотрим оригинальную идею, восходящую к А. Джоржу (см. [13] и приведенную там обширную библиографию), позволяющую сократить вычисления и требуемую память для решения систем пятиточечных уравнений на прямоугольной сетке. Интересно, что достигаемая экономия не связана с уменьшением полуширины ленты исходной матрицы. Алгоритм представляет собой обычное разложение матрицы на треугольные множители, но только при специальной упорядоченности узлов и соответствующих векторных компонент. В симметричном случае при этом реализуется разложение Холесского. Способ нумерации основан на последовательности иерархической бисекций (разделение пополам) сеточных множеств. Рассмотрим для простоты сеточную квадратную область с числом узлов в одном направлении N = 2т — 1. Из множества всех узлов Ω выделим подмножество Ω* узлов, лежащих на средней вертикальной линии (столбце) сетки с номером %k — 2fcml. Затем в множестве оставшихся узлов Ω*. = Ω/Ω* (распадающемся на два независимых подмножества, в смысле связей узлов на пятиточечном шаблоне) определим подмножество Ω*~ι узлов, лежащих
§ 5.3. Методы вложенных сечений 215 на средней горизонтальной линии (строке) сетки с номером jk — 2fe_1, после чего множество оставшихся узлов Qk-i = ^к/^k-x состоит уже из четырех распадающихся подмножеств. Далее продолжаем процесс деления пополам поочередно разделяющими вертикальными и горизонтальными сеточными линиями. В итоге все узлы оказываются разнесены по подмножествам Ωχ, Ω2, -.., Ω2*_χ, пример формирования которых для к = 3 изображен на рис. 10. 21 4 -J 21 21 Рис. 10. Упорядочение узлов в методе бисекций, к — 3 Нумерацию узлов проводим следующим образом: сначала все узлы из Ωι, затем - из Ω2 и т. д. Внутри каждого подмножества Ω{, распадающегося на несвязанные подгруппы, естественно проводить упорядоченность последовательно внутри одной, потом внутри следующей и т. д. Идея алгоритма заключается в результирующей структуре матриц, формирующейся в ходе переупорядочения узлов сетки. На рис. 11 фрагмент динамики такого процесса. Слева представлена структура матрицы Ak после первого шага бисекций: Dk представляет трехдиагональ- ную матрицу порядка Nk = 2fe~~1, соответствующую множеству узлов сетки Ω& на первой разделительной вертикальной линии, А\_х и Α\_χ суть пятидиагональные матрицы, соответствующие независимым подсистемам уравнений для узлов Ω^_1 и Ω^_χ, составляющих подмножество Ω^·— Ω/Ω*., Lk и Uk - блочная строка и блочный столбец с очень
216 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ малым числом ненулевых элементов: в каждой строке из L* их только два, а структура расположения ненулевых элементов £/* симметрична. Здесь пока предполагается, что сначала пронумерованы все узлы из Qj^ij, затем - из Щ1г и в конце - из Ω*. После этого производится перенумерация в соответствии со вторым шагом бисекции, т. е. разделение множеств щ!г и П^Д горизонтальными разделяющими линиями, совокупность узлов на которых обозначается через Qk-i· Эти узлы получают номера "с конца", перед номерами из Ω*. Оставшиеся узлы из Ω^_χ = Ω^/Ω*_ι распадаются уже на четыре несвязанных подмножества Ω^_χ,..., щ_г и нумеруются последовательно по своим группам. При такой нумерации мы получаем матрицу Аь-1, изображенную справа на рис. 11. Здесь диагональный блок Dfc_i = diag{Ofc_i)-Dfc_i} имеет порядок 2Л~1 — 2 и представляет собой блочно-диагональную матрицу второго порядка, каждый из подблоков которой - трехдиагональная матрица. Подматрицы А£_2 являются пятидиагональными, а их порядки более чем вдвое уменьшились по сравнению с А%^г. Прямоугольная матрица £^_ι, как и Lk, имеет только по два ненулевых элемента в каждой строке. А(" Λ к-1 о 0 А<2> \ л к-i ; ; L„ Щ Dh => \л(,) \Лк-2 А0 Лк-1 Лк-2 А(4> Лк-2 ι*, vkl ^ι к °А = А к-1 Рис. 11. Матричные структуры в методе бисекции Далее процесс продолжается аналогично. Каждая из подобластей Щ1_2 делится пополам, разделительные узлы нумеруются последними, и блочно-диагональные матрицы вида Dfc„2 на каждом этапе удваивают свои блочные порядки. Количество блоков типа А^_2 с каждым разом удваивается, а их порядки уменьшаются более чем вдвое, пока не станут равными единице. Пример структуры матрицы для к — 3 приведен на рис. 12. В соответствии с порядками подмножеств узлов Ω* на рис. 10 размерности диагональных блоков Dk равны: 16 для к = 1, 8, для к = 2,
§ 5.3. Методы вложенных сечений 217 12, для к — 3, 6 для, к = 4, 7, для А; = 5. При этом матрицы Ζ>ι и D$ - блочно диагональные (второго и четвертого блочных порядков). °' L' ν, D, L' υ, D, L' u4 D< L> u,\ I>, Рис. 12. Итоговая структура матрицы в методе вложенных сечении Чтобы оценить трудоемкость разложения матрицы в таком вычислительном процессе, рассмотрим процедуру факторизации подробнее. Пусть L = V>i,j},U ~ {uij} - нижняя и верхняя треугольные матрицы, удовлетворяющие равенству LU ~ А, которое при его поэлементном расписывании порождает N2 в общем случае алгебраических уравнений для искомых lij, Uiyj. Эта система оказывается легко разрешимой, если зафиксировать диагональные элементы U (например, положить U{ti — 1) или в случае симметричности матрицы А рассматривать разложение Холесского, определяемое условием L — U* и lij — Uj^ (при этом получается N(N -f- l)/2 уравнений относительно такого же количества неизвестных). Действительно, поскольку каждый элемент матрицы LU есть скалярное произведение i-й строки нижней и j-ro столбца верхней треугольных матриц, то для элементов первого столбца имеем Zi(1 = а^д/г^д, г — 1, 2,..., N. Здесь полагается или и\у\ = 1, или (при разложении Холесского) ^1д = ^1д, что для диагонального элемента фактически дает h,i ~ \/αι,ι· После этого сразу находится.первая строка (если это необходимо): U\j — a\j/liti, j — 2,..., Ν. Далее составляются уравнения для второго столбца L: U^ui^ 4- ^1,2^2,2 = «{,2^ = 2, ...,J\T, в каждом из которых неизвестно только ^ (112,2 опять же приравнивается U^ или единице). После их вычисления формируются уравнения для второй строки U: h^iUij + Z2,2^2,7* = o>2j, j — 3,..., ΛΓ, с неизвестными Аналогично последовательно составляются уравнения для третьего столбца L (сначала вычисляется его диагональный элемент), третьей строки {7, четвертого столбца Хит. д. В каждом случае в соотношении оказывается по одному неизвестному и все дело сводится к явным рекуррентным вычислениям.
218 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ Формула для вычисления каждого элемента г-го столбца Lij требует в общем случае выполнения 1 + 2(j — 1) арифметических действий: При несимметричном разложении аналогично выглядит и соотношение для нахождения элементов г-й строки матрицы U: Очень важной характеристикой такого метода является количество ненулевых элементов в матрице L при разложении разреженной матрицы А. Разобраться в ней можно с помощью следующего анализа вышеприведенных формул. Пусть ji - номер столбца, в котором расположен первый слева ненулевой элемент а^ г-й строки матрицы А. Тогда в этой строке элементы l{j при j < ji будут нулевые, а при j > ji могут быть отличны от нуля вплоть до главной диагонали. В последней группе нулевыми будут элементы Uj с такими номерами, для которых а^- — О и г < ij, где ij есть номер строки, в которой находится первый сверху ненулевой элемент j-ro столбца матрицы А Исходя из этих принципов и структуры матрицы при используемой упорядоченности, непосредственный подсчет необходимой памяти Ρ для хранения возникающих ненулевых элементов и количества арифметических действий Q при N » 1 дает величины P=^N2log2N + 0(h2), Q = ^N3 + 0(N2log2N). (5.35) Принципиальный результат в данной оценке - сокращение на порядок объема вычислений. 5.3.2. Метод квадросечений. Другой возможный вариант метода вложенных сечений - это разбиение исходной области за один шаг не на две части, а на четыре. В этом случае разделяющим множеством является не сеточная линия (строка или столбец), а крестообразная фигура. Такое разбиение может показаться более сложным, но зато на каждом шаге оно является единообразным. Схема упорядочения узлов на сетке 15 х 15 в таком алгоритме, который естественно назвать методом квадросечений, изображена на рис. 13. Если сеточная область представляет собой квадрат с длиной
§ 5.3. Методы вложенных сечений 219 стороны N = 2к — 1, то все множество узлов Ω разбивается на к подмножеств Ωχ,..., Ω*. Последнее из них - самый большой крест - содержит 2Ν — 1 узлов, Ω*_ι представляет уже совокупность из четырех несоприкасающихся крестов, с числом 2Νχ - 1 узлов в каждом (Νχ = (Ν -1)/2), Ω^_2 - это уже 16 крестов и т. д. Структура исходной матрицы А при такой группировке узлов (как и ранее, сначала нумеруются последовательно все узлы из Ωι, затем из Ω2 и т. д.) имеет блочный вид, аналогичный предыдущему и изображенный на рис. 12. Блочный порядок матриц Dk теперь при движении "снизу-вверх" учетверяется. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 1 2 3 4 5 о 7 8 9 11 12 13 14 15 1 • 1 . 2 · 1 1 ... 1 • 1 ' 2 · 1 • 1 3 1 • 1 • 1 • 1 1 • 1 . 2 · 1 • 1 | . . . 1 * 1 | · 2 · 1 • 1 1 • 1 • 1 • 1 • 2 2 2 2 • 1 • 1 - 1 • 1 4 1 • 1 • ΐ • 1 • 1 • ΐ • 1 | · 1 • 2 2 2 2 • 1 • ΐ • ΐ • 1 • ΐ • 1 • ΐ • 1 3 3 ΐ • 1 • 1 • ί • 1 • ΐ • 1 • 1 • 1 2 - | 1 • · 1 2 · 1 • · 1 2 - Ι 1 ' " 1 2 - • 1 Рис. 13. Упорядочение узлов в методе хвадросечений Анализ характера расположения исходных элементов и появление новых в процессе L[/-разложения требует достаточно кропотливой работы. Мы ограничиваемся только формулировкой итогового результата: как и в методе бисекций, общий объем вычислений при факторизации матрицы равен по порядку 0(ΝΖ). Дополнительная экономия может быть осуществлена, если исходная краевая задача "простая" - постоянные коэффициенты,
220 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ равномерная сетка и т. п. Это приводит к появлению одинаковых матричных блоков, если в каждом из квадрантов вычисления проводить однотипным образом. С другой стороны, возможны рассмотрения и в сторону усложнения задач - непрямоугольные области, нерегулярные сетки. Главная идея иерархического разбиения области на несвязанные подобласти остается в силе, но логическая сложность реализации алгоритмов в таких случаях существенно повышается и поэтому эта область исследований пока остается открытой. § 5.4. Метод циклической редукции Бунемана Данный алгоритм предназначен для решения очень частного вида двумерных сеточных краевых задач: постоянные коэффициенты, прямоугольная область с однотипными граничными условиями на сторонах, пятиточечная аппроксимация на равномерной сетке. Главное значение этого метода заключается в том, что он является рекордным по экономичности для уравнений данного класса. Рассматриваемая система алгебраических уравнений записывается в форме Dvx -v2 = /ι, -ν,_ι + Dvj - vHl = fj} j = 2,..., N, (5.36) -vjv-i + DvN - fN. Здесь Vj и fj - векторы одинакового порядка М (конкретнее, Vj — {vij} - совокупность значений функции в узлах на j-й горизонтальной линии сетки), D - квадратная матрица того же порядка. То есть мы рассматриваем частный вид матрицы А из (3.25) при Dj = D, Lj — Uj = Ε. Это означает, что граничные условия на сторонах прямоугольника уо и Vn+i ~ 1-го рода, а шаг hy - постоянный (сетка по χ может быть неравномерной, а трехдиагональная матрица D — {—<Xi,bi, — Ci} может иметь переменные коэффициенты). Идея алгоритма, как и у описанного в п. 5.1.4 скалярного метода циклической редукции, заключается в последовательном исключении нечетных неизвестных. Для простоты будем полагать N = 2fc+1 — 1, где к ~ целое число. Выпишем три уравнения системы (5.36) для соседних значений j: -Uj_2 + DVj-χ -* Vj = fj-U
§ 5,4- Метод циклической редукции Бунемана 221 -Vj-x + Dvj - vj+i = fjy Умножая второе из них на матрицу D и складывая потом все три уравнения, получаем -t>,-2 + (Я2 - 2JS)Vi - vj+2 = /i-i + £>/f + /i+i. (5.37) Аналогичные уравнения можно выписать для всех четных j от 2 до N — 2, полагая г/о — ί>λγ+ι — 0. Заметим, что правая часть уравнения (5.37) может быть переписана в виде /- ' — D^D~~l fj -f fj-г + fj+i + 2JD"~1/j, где обозначено D^ = Z>2 - 21?. Если мы положим pj.1' = D~lfj, qy' = /j_i + /j+1 + 2pJl\ то формула для новой правой части записывается в форме /j - I^1^· + q] . Если в системе уравнений (5.37) опять исключить половину неизвестных, т. е. второй раз применить редукцию, то получим аналогичную систему относительно неизвестных Vj~4, ν7·, U/+4· Продолжая этот процесс далее, после r-кратного применения редукции придем к уравнениям -vi-v + D^vj - vj+2, = /jr\ (5.38) где вновь введенные величины определяются рекуррентным образом: D(r) = (£,(г-1))2 _ 2£;5 f(r) = D{r)p{r) + Q(r) ^щ Чтобы найти соотношения для вычисления вспомогательных векторов pj , q\T , подставим выражения (5.39) в обе части очевидного равенства fj ' — /j-2r "*~ fj+2* + D^fj , откуда после приравнивания членов с одинаковыми степенями £^Γ) получаем j = i2p+1, i = 1,2,...,2fc-p -1; Ρο = · · · = %+ι = ад = · · · = ^2*·+ι = о. Реализация формул (5.40), составляющих прямой ход процесса редукции, в качестве основной вычислительной процедуры включает решение вспомогательных систем
222 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Из определения матрицы D^ следует, что она представляет собой произведение трехдиагональных матриц 0" = ([(о + 2Со*Щ^-Е), (5.41) легко обращаемых с помощью простых прогонок, на чем и зиждется высокая экономичность рассматриваемого алгоритма. Весьма существенным фактором является и то, что каждый матричный множитель в правой части (5.41) обладает свойством строгого диагонального преобладания, что обеспечивает корректность метода прогонок. После к-го шага прямого хода редукции уравнение (5.38) приобретает вид Ζ)<%2> =£><*>$>+#. (5.42) Отсюда на срединной линии сетки, при вычисленных векторах р2и , д£ь , неизвестный вектор у2ь находится с помощью 2к прогонок, необходимых с учетом факторизованного представления (5.41) для решения вспомогательной системы: Реализация последних формул является началом обратного хода редукции, заключающегося в непосредственном вычислении искомых под- векторов на сеточных линиях. Для этого опять же используется соотношение (5.38). Предполагая величины Vj±2* известными и подставляя выражение для /(г) из (5.39), для вспомогательных векторов z^ — Vj —pf* получаем уравнения U(-)ZW = ,(') _ Vj_ir _ ^+2„, r = к - 1,..., 1, j=i2r, г = 1,2,...,2*+1-г; v0=v2„+i. Отсюда окончательный результат находится из формулы (5.43) Vj=pf+Zf) (5.44) Таким образом, рассмотренный метод циклической редукции заключается в следующем:
§ 5.5. Методы преобразования Фурье 223 а. По формулам (5.40)-(5.41) вычисляется последовательность век- торов р{;\ д<г\г = 1,...,к, при pf\ J = 0,1,..., 2*+х и д<0) = /,, для j = 1,2,..., 2Λ+1 — 1; на первом шаге требуется найти iVi = (Ν — 1)/2 пар таких векторов, для каждой из которых нужно выполнить по "две прогонки"; на втором шаге - найти N2 = (Νχ —1)/2 пар с решением уже четырех трехдиагональных систем и т. д.; это означает, что каждый этап прямого хода редукции требует выполнения Ο(ΜΝ) арифметических действий, а так как всего этапов к = log2(iV-f 1), то общая трудоемкость прямого хода составляет Q = 0(MN log2 N). б. По формулам (5.42)-(5.44) вычисляются последовательно искомые (г) (г) векторы Vj в порядке, обратном к вычислению ρ- , q\ '; на каждом г-ы этапе определение одного вектора ζ}?* требует решения 2Г трехдиагональных систем, а их количество равно 2fc+1~p; таким образом, выполнение всех шагов обратного хода редукции требует по порядку такого же объема вычислений, как и в пункте "а", т. е. в итоге мы имеем оценку Q = 0(MNlog2N). (5.45) Отсюда видно, что редукцию целесообразно проводить в направлении, содержащем меньшее число узлов сетки. Рассмотренный алгоритм имеет существенное ограничение в представлении числа неизвестных N = 2*+1 — 1. Только в этом случае матрица D^ = P2*{D) представляет собой многочлен Чебышева 2-го рода с известными корнями, что позволяет выписать факторизацию (5.41) и построить единообразный вычислительный процесс. Имеются модификации метода циклической редукции и для задач более общего вида, сохраняющие по порядку оценку трудоемкости (5.45), однако они требуют более специального рассмотрения. § 5.5. Методы преобразования Фурье Данная группа алгоритмов также применяется для системы разностных уравнений вида (5.36), однако основана на более детальной информации о матрице Z), а именно - на явном представлении ее собственных чисел и векторов.
224 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ 5.5.1. Простое преобразование Фурье. Пусть \q, q = 1,..., Μ, собственные числа матрицы D, ά zq = {^g,i} - соответствующие собственные векторы. Обозначая через Л = diag{Ag} диагональную матрицу и через Ζ - матрицу М-го порядка, у которой столбец с номером q является zg, для матрицы D выпишем спектральное разложение (см. (3.40)): D = ΖΛΖ', Z1 = Ζ"1, из которого непосредственно следует Ζ'ΡΖ - Л. (5.46) Умножим каждое из уравнений (5.36) слева на матрицу Ζ' и введем замену векторных переменных Vj = Ζν3·. (5.47) Здесь вектор м vj = Ζ'υ, = |vff j = 5^ zgii · <ui(i} (5.48) *=i можно назвать конечномерным преобразованием Фурье неизвестного вектора Vj. После применения соотношений (5.46), (5.47) из исходной системы (5.36) получаем Μ неизвестных систем уравнений -*ff,j-i + Ae*g,j - *«,j+i = Λj. J = 2,..., JV", (5.49) -««.JV-l + ^qVqtN = /ff,JV, tf = 1, . . . , M. Здесь величины /fljj по аналогии с (5.48) определяются из преобразования Фурье вектора правой части м fj — % fj ~ \fqj — 2^ Ζ4****ιί)· Каждая из Μ трехточечных систем уравнений (5.49) может быть экономично решена методом прогонки с затратой 8Ν арифметических операций (нетрудно проверить, что при аппроксимации уравнения Пуассона, например, для всех q имеется строгое диагональное преобладание). После этого с помощью обратного преобразования Фурье (5.47) находим компоненты искомого решения
§5.5. Методы преобразования Фурье 225 м υ3 = {VhJ = Σ Z*№,j } > j = 1, - · · , ^· Так как каждое из преобразований Фурье только одного вектора размерности Μ - прямое и обратное - требует выполнения 2М2 арифметических действий, то общий объем вычислений на реализацию рассмотренного алгоритма при известных собственных числах и векторах матрицы D определяется выражением Q = Ш2 + 8ΜΝ. (5.50) Как видно, в данном случае трудоемкость значительно ниже по сравнению с методом матричной прогонки, но существенно выше, чем в методе циклической редукции. 5.5.2. Быстрое преобразование Фурье (БПФ). Беглый взгляд на оценку (5.50) показывает, что наиболее дорогая операция в рассмотренном алгоритме - это само преобразование Фурье, заключающееся в многократном умножении векторов на матрицы Ζ или Ζ*'. Оказывается, что во многих представляющих практический интерес случаях в силу специфики собственных векторов удается существенно сократить число операций. Основой такого подхода является ставшее знаменитым за последние десятилетия быстрое преобразование Фурье, также актуальное во многих других приложениях. Мы изложим его идею на примере решения разностной задачи Дирихле для уравнения Пуассона (3.17) на равномерной прямоугольной сетке, когда матрица D в системе (5,36) принимает вид D = 2Е + df-TQ, а собственные числа и векторы матрицы Та определены ранее в (3.52). Пусть требуется вычислить ρ сумм произведений м wp = Y^ v3 sin -&rlj> p = 1,..., Μ, (5.51) j-i при известных значениях Vk иМ = 2* — 1. Метод применим и для других значений Μ таких, чтобы Μ + 1 не было простым числом, но именно в рассматриваемом случае алгоритм наиболее экономичен и прост логически. Очевидно, что формула (5.51) эквивалентна нахождению вектора w ~ Ζν (столбцы матрицы Ζ суть собственные векторы матрицы Та), а ее реализация "в лоб" требует при известных значениях синусов выполнения Μ(2Μ — 1) арифметических действий.
226 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ Для описания алгоритма удобно выразить тригонометрические функции через экспоненциальные и переписать задачу в виде wp - w{p) = - |ώ(ρ) -f w(p)j, vk = v{k), Μ Μ w{p) = ]Γ«(*)5(Μ), ώ(ρ) - 5^v(fc)z(fc,p), (5.52) *=1 fc=:l f(fc,P) = exp(i*p^), *(**)=«ф(-Лр^-), z(fc где Mo = 2s, а г означает мнимую единицу. Совокупность всевозможных значений fc, ρ представима с помощью четырех вспомогательных индексов k = Ji + 2fcb h =0,l;*i = l,...,Mi -1; Мг = M0/2 = 25~\ p = miAfi+Pi, mi =0,1; Pi = 1,... ,Μι - 1. В этих обозначениях можно записать fcp = hp + fcimiMo + 2feiP!, *> = fC1*) ехр [хкгрх^А = z^*4^\ tfb*) = *<!.*) exp ( _ ifclPl^-), = f C**)2(*i J'i)> после чего выражение для w(p) представляется в виде двойной суммы 1 Μι-1 ώ(ρ) =ώ(τηι,ρι) - ^i(/l'p)[ Σ v(,1»*l)i<*1',,l)]. /1=r0 fex = l Вводя теперь вспомогательные величины Μχ-l vi(tuPi)= Σ «(,1'fcl)*(fcl'Pl), (5.53) выражение для ώ(ρ) представляем как сумму двух слагаемых ι tS(p) = ^v^^'zC1^. (5.54) Ii=0 Так как ίι(ίι,ρι) при каждом значении своего параметра 1\ имеет форму, одинаковую с выражением для υ)(ρ), мы можем провести следующие преобразования, аналогичные предыдущим:
§ 5.5. Методы преобразования Фурье 227 fc1=/2 + 2fe2, J2 = 0,l;fc2 = l,...,Ma-l; M2 = 2s"2, pi =m2M2+p2, m2 = О,1; р2 = 1, · · · ,М2 - 1, 1 υι(Ζι,Ρι) = t)i(ii,m2,P2) = X] v2(h,^Рг)^'2*1*, ίο=0 M2-l β2(ίΐ,ί2,Ρ2)= Σ ^(il,i2,fc3)4*2,P2). Теперь величины тЬСь^Рг) с параметрами /χ,/г можно преобразовать по аналогии с ίι(ίι,Ρι). Продолжая этот процесс, на r-м шаге получим fcr_! = lr + 2&r, Zr = 0,1; kr = 1,..., Μτ - 1; Мг = 2s"r, ρΓ„ι ~ mrMr + pr, rar = 0,l; pr — 1,... ,Mr - 1, (5.55) ir-i(*,-i,I>,-i) = ii':f"l)«cP (ife-^) = z<l'-^-»)z^), 1 vP-i(*i, · ·* Л-ъРг-ι) = Σ vP(Zi,.. . Л»^)^!^"1*, vr(lu...,lr,Pr)= 5Z ν{Ιι,...,Ιν,Κ)ζ^κ^\ На последнем шаге процедуры, при г = 5 — 1, будем иметь «s-i(li,..-,is-i,Ps-i) = «(ί1,...,ί5_ι,0)ζ]?ο*β-ι) + «(Z1,...,ZS-i,l)zi,1*1e-l). (5.56) В правой части этого выражения находятся уже только заданные величины, и на вычислении ϋ$~ι происходит переход от прямого хода к обратному ходу быстрого преобразования Фурье. Последний заключается в последовательном нахождении всевозможных значений vs-2, ■ ■ ■ > ν±, ν и w. Для каждого г необходимо вычислять Μ компонент vr при различных сочетаниях параметров li,... ,/г,рг. Аналогично вышеизложенному рассчитываются величины w{jp) из (5.52) - в формулах (5.53)-(5.56) надо символ "Л" поменять на "V".
228 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Поскольку S — log2 Μ, общий объем вычислений для нахождения всех wv из (5.50) в такой процедуре оказывается равным U(Mlog2 M). Так как быстрое преобразование Фурье необходимо сделать с каждым из N векторов правой части системы (5.36), а затем надо столько же обратных преобразований (5.47), то в целом трудоемкость алгоритма оценивается по порядку величиной Q = 0(MN log2 M) + 0(MN), где последнее слагаемое относится к решению Μ независимых трехдиаго- нальных систем уравнений (5.49). Так как все величины νΤ) г)г, ζΓ, ζτ - комплексные, то при реализации рассмотренных формул естественно выделять и отдельно вычислять их действительные и мнимые части. Можно также из предыдущего вывести и непосредственно выписать рекуррентные формулы только для вещественных членов. Это, например, подробно сделано в книге [32] для рассмотренных и некоторых других видов тригонометрических функций, соответствующих собственным векторам различных краевых задач. Эффективным приемом повышения экономичности численного решения является комбинирование методов циклической редукции и быстрого преобразования Фурье. Такой подход заключается в том, что на первом этапе исходная система (5.36) редуцируется к виду (5.37), а уже к последней применяется преобразование Фурье, Очевидно, что система (5.37) сводится к форме (5.36) при переобозначениях индексов, а также замене порядка N на N = 2s~х — 1 и матрицы D - на!)*1) = D2 — 2E. Так как собственные векторы у D и D^ одинаковые, то в формулах метода Фурье меняются только преобразуемые векторы. Порядок объема вычислений при этом остается неизменным, но коэффициент в оценке удается уменьшить. На предварительном этапе можно сделать не один, а несколько шагов редукции системы, но проведение больше двух редукций уже оказывается нецелесообразным. § 5.6. Метод диагональных переносов (TS-алгоритм) для решения пятиточечных уравнений В данном параграфе мы рассмотрим оригинальный метод решения систем пятиточечных сеточных уравнений, основанный на специальных преобразованиях, не приводящих к заполнению разреженных промежуточных матриц, что дает ему значительные преимущества по сравнению с традиционными методами исключения. Идея этого алгоритма происходит от известных в электротехнике
§5.5- Метод диагональных переносов (TS-алгоритм) 229 эквивалентных преобразований электрических цепей типа "треугольник-звезда" и "звезда-треугольник", что дает повод называть его "электротехническим методом". Матричному графу системы сеточных уравнений можно придать "электротехническую" интерпретацию, в которой каждому k-му узлу соответствуют значения потенциала Uk и источника тока Д, а каждой связи между узлами к и &' - проводимость α&(ν. В свое время это привело к широкому применению аналогового моделирования полей с помощью электрических цепей. Несмотря на огромные заманчивые преимущества такого подхода, заключающиеся в "мгновенном" (со скоростью света) установлении поля в цепи после задания ее внешних параметров, такое направление не выдержало конкуренции с цифровыми компьютерами в силу значительных трудностей автоматической установки исходных данных и измерений с высокой точностью. Описываемый метод, который мы будем называть ΤS-алгоритмом, впервые использовался для инженерных расчетов полей Б. В. Сестрорец- ким. Он применим для широкого класса симметризуемых пятиточечных систем уравнений и, по-видимому, может быть обобщен на решение более сложных сеточных систем. По своей вычислительной сложности он сравним с рекордным методом вложенных сечений, рассмотренным в § 5. Τ5-алгоритм является также перспективным с точки зрения распараллеливания вычислений и особенно эффективен для решения многовариантных частичных решений сеточных краевых задач, когда требуется найти много решений систем с одинаковыми матрицами, но разными краевыми частями, отличными от нуля только в относительно малом числе узлов. 5.6.1. Описание TS-алгоритма. Мы рассматриваем систему линейных алгебраических уравнений в виде {Au)ij = -dijUi^ij - bijuifj-i - CijUi+ij - dijUij+г + eitjUij = AjS=(/)u, i = l,...,L; ,' = 1,...,M. (5.57) Здесь u,f- векторы порядка LM, a A - квадратная матрица положительного типа, т. е. неразложимая, имеющая положительные диагональные элементы и неположительные внедиагональные и обладающая свойством диагонального преобладания aj > ctij + bij + aj + dt'j, причем хотя бы одно из этих неравенств является строгим. Система уравнений (5.57) предполагается полученной из аппроксимации двумерной краевой задачи на прямоугольной сетке, причем ее коэффициенты определены с учетом граничных условий и, в частности,
230 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ Q>ij — &ι\ι — clj ~ di7M = 0. Расчетная область может быть не прямоугольной, а вложенной в сеточный прямоугольник χχ < χ < ж/,, у\ < У < 2/м> при этом порядок системы будет меньше LM, что формально можно представить "занулением" коэффициентов в (5.56), соответствующих внешним узлам сетки. з| « к >■ -< > < ι < I i ι i h 1 1 1 1 \ ι ο τΙ s 1 < 1 < 1 I < ( I ( ι Ο ι h~ < I ( s4 - -4 3 ' 4 2 , 11 α б Рис. 14. Схема переноса диагональных связей 2 3 β Для наглядного описания рассматриваемого нами метода решения системы (2) мы приводим на рис. 14 изображение прямоугольной сетки, которую можно интерпретировать как граф матрицы А} в котором вершины (узлы сетки) соответствуют значениям сеточной функции щ^, т. е. компонентам неизвестного вектора, а ребра - связям между ними, т. е. коэффициентам решаемых уравнений. Поскольку в общем случае алгебраическая система может быть несимметричной, то и граф надо рассматривать как направленный, в котором связи между двумя соседними узлами в прямом и обратном направлениях отличаются. Если следовать электротехнической интерпретации такой сети, то это есть электрическая цепь с "полупроводниковыми" сопротивлениями, имеющими различные проводимости в одну и другую стороны (например, между узлами-клеммами с потенциалами Uij, щ+ij и источниками тока fiji Λ+lj ПРОВОДИМОСТИ СуТЬ CiJ φ Ο,ί+lj)- Поскольку ахд = &хд — 0, то из системы (5.57) очень легко исключить "угловую" неизвестную ^хд, что приведет к появлению в оставшихся уравнениях только двух дополнительных ненулевых коэффициентов, связывающих пгд и ult2 (в симметричном случае эти коэффициенты равны). На графическом языке такая операция соответствует обрыву связей узла (1,1) с соседними и появлению "диагональной" связи между узлами (2,1) и (1,2), что зафиксировано на рис. 14, а, б. Рассмотрим теперь полученную подсистему уравнений пятого порядка относительно неизвестных U2,2> ^χ(2, Пгд, из ,2, ^2,з, которые для удобства переобозначим щ, и\, иг,"из, и±:
§ 5,6. Метод диагональных переносов (ТS-алгоритм) Г «0,0^0 - S0)lUi - S0,2^2 ~ «0,3^3 ~ *0,4^4 = £о> $XylUx - SXyoUo — Sly2U2 — 9\, \ *2,2^2 - S2,QU0 - S2jlUX = £2, «3,3^3 ~ *3,0^0 = 03, ^ 54>4^4 — 34,0^0 = 94· Здесь используются также очевидные обозначения: 231 (5.58) *0,0 - е2,2, *0,2 = &2,2, $1,1 = <2ΐ,2 — &1,2 е1Д СМ <*1Д «1,2 = ©1,2 ι *2,1 = Л2,1 > «2,0 = «2,1 j *0,1 - а2,2, «1,0 = Ci,2, (5.59) и т. д., а связи рассматриваемых неизвестных 'упрятаны в правые части gk, т. е. фактически 9о - /2,2» 9х = Л,2 + di,2W1>3 + di.i/u/en, 52 - /2Д + С2,1«ЗД + Cl,l/l,l/ei,l, #3 = /з,2 + С3,2^4,2 + ^3,2^3,3, 94 = /2,3 4" С2,3^3,3 + d2y3U2j4- Нашей ближайшей целью будет исключение "диагональной" связи из подсистемы (5.58), другими словами, приведение ее к виду с нулевыми коэффициентами sxy2 и s2,i- Для этого введем новую неизвестную по формуле и{01) = ащ + βηχ + 7^2, (5.60) в которой коэффициенты α,β,Ύ пока не определены. Выражая отсюда величину щ (в предположении а ф 0) ν>ο = ~-(uqX) - βηχ - ηη2) a (5.61) и подставляя ее в (5-58), при выполнении условий as2,x = /3s2,o, αβ1|2 = 7*ι,ο, «1,2*0,1*2,0 = *2,ι*ο,2*ι,ο (5.62) получаем уравнения
232 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ 41опо " *од**1 " 8о1и* ~ «о(з^з - s0(4^4 = 0о, (1) (1) (1) (ι) (ι) (1) 52,2^2 - «2(0U0 = 02, «3.3^3 *3,0™0 s3,4 4 — ^3 ' (5.63) , (ι) (ι) (ι) Ι, *1,4**4 ~ «4,0«0 - «4,3^3 ^ Новые коэффициенты и правые части системы (5.63) выражаются через коэффициенты исходной подсистемы (5.58) с помощью следующих формул: «0 0 = , «о { - S0,l + S0(0 -, 50 2 = S0,2 + $0,0 , Ot ' 32(0 «1,0 (1) . «2,1 (1) «1,0 , «2,1«3,0 «ι ι = «U + ei,o » «ι о = » *i = : > $2,0 ' α $0,1$2,0 + «0,0$2,1 (1) . «1,2 (1) «2,0 , $2,1«4,0 «2 2 = «2,2 + «2,0 , Si 0 = > *2 = 7 , «1,0 Of «0,1«2,0 + «0,0«2,1 (1) . (1) «ОД «2,0, (1) , «3 3- «3,3 - «0,3*1, «3,0 = —*1» «3,4 = «0,4*1» αβ2,ι (1) + (1) «0,1*2,0. (1) , «4 4 = «4,4 - «0,4*2, «4 0 = *2ι «4 3 ~ «0,3*2, (1) , j. (!) 03 =03+00*2, 04 (5.64) 04 +00*1. Сравнение уравнений (5.58) с системой (5.63) показывает, что в последней исчезла одна "диагональная связь" (равны нулю коэффициенты 8^2 и *2д)' н0 зат0 появилась новая - ненулевые коэффициенты $3,1 и 54 д. Поэтому операцию преобразования системы (5.58) к виду (5.63) будем называть переносом диагональной связи, которая схематически изображена на рис. 14, Отметим, что в терминах полной системы (5.57) операция переноса диагональной связи означает замену переменной только для одной компоненты неизвестного вектора (в данном случае «2,2) и локальное изменение коэффициентов только в связанных с ней уравнениях. Остановимся теперь на втором из условий (5.62), необходимом для реализуемости данного алгоритма. Для наглядности используем его
§5.0. Метод диагональных переносов (TS-алгоритм) 233 графическую интерпретацию (рис. 15). Левая и правая части второго равенства в (5.62) представляют собой произведения коэффициентов системы, ассоциированных с направленными ребрами контура- треугольника 0-1-2 — при его обходе соответственно против часовой стрелки и по часовой стрелке. Если величины з^^ и 52,ъ появившиеся при исключении из системы узла 5 на рис. 15, а, выразить через коэффициенты исходной системы, то условие (5.62) переходит в равенство 30,131,5^5,232,0 — 31,030,232,535,1, (5.65) имеющее аналогичную графическую интерпретацию: равенство произведений коэффициентов, ассоциированных с направленными ребрами контура - в данном случае прямоугольника 0-1-5-2 — при его обходе против и по часовой стрелке. 4. .6 lidbJL. C*-l,j + l I Oj+ij+l О §оз 3l3 dj_i Jlbi-i^+i b»,i+i]||d»,.7 &i+i,i+iln ■CU+1. i + i г - 1 ci-i,j 4> Tti a b Рис. 15. Графическая иллюстрация свойства внутренней цикличности Определение 5.1. Элементарный контур (не содержащий внутри себя ребер графа) системы сеточных уравнений, для которого выполняются условия на коэффициенты вида (5.62) или (5.65)убудем называть обладающим свойством внутренней цикличности. Рассмотрим теперь пару смежных прямоугольных элементарных контуров, изображенных на рис. 2, б, с вершинами (i,j), (i,j + 1), (i-l,j + l), (»-l,j) и (i,j),(i + l,j), (i + lj + l), (м+1), каждый из которых обладает свойством внутренней цикличности, которые в обозначениях системы (5.56) имеют вид Cij · d,-+i,j · Oi+i^+i ■ bij+i = Q>i+ij - dij · Cij+x ■ ί>ΐ+ι^+1. Непосредственно из этих равенств следует, что образуемый данными элементарными контурами более крупный контур (t-1, j), (t, j), (i+1, j),
234 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ (г +1, j +1), (г, j +1), (г -1, j +1) также обладает свойством внутренней цикличности, записываемым в виде Ci-ijCijdi+itjai+itj+iaifj+ibi-itj+i = aijdi-ijCi-ij+iCij+xbi+ij+iai+ij. Определение 5.2. Система сеточных уравнений обладает свойством внутренней цикличности, если каждый элементарный контур ее графа также обладает этим свойством. Из проведенных выше рассуждений нетрудно сформулировать следующее утверждение. Теорема 5.2. Если граф системы сеточных уравнений обладает свойством внутренней цикличности, то этим свойством также обладает любой из замкнутых его подконтуров. Очевидно, что в некотором смысле свойство внутренней цикличности системы уравнений является обобщением свойства симметричности, по крайней мере множество систем со свойством внутренней цикличности включает в себя симметричные системы. Отметим, что любой замкнутый n-гранник (контур с η ребрами) графа системы сеточных уравнений порождает циклическую матрицу η-го порядка якобиева типа (трехдиагональная матрица, у которой не равны нулю также левый нижний и правый верхний угловые элементы). В [9] показано, что если у такой матрицы произведение над- диагональных элементов на левый нижний равно произведению поддиа- гональных элементов на правый верхний, то она диагонально подобна симметричной матрице той же структуры и, следовательно, имеет вещественный спектр. Легко проверить, что равенство этих произведений в точности соответствует свойству внутренней цикличности, которое в силу этого имеет смысл локальной симметризуемости. Отметим, что данное свойство циклической якобиевой матрицы имеет широкое обобщение, которое мы сформулируем, не вдаваясь в детали строгого изложения понятий матричных графов. А именно если матричный граф произвольной квадратной вещественной матрицы может быть представлен совокупностью замкнутых циклов, то свойство внутренней цикличности является необходимым и достаточным условием диагональной симметризуемости матрицы. На основе последовательного использования рассмотренной "элементарной" операции переноса диагональной связи строится прямой алгоритм решения системы пятиточечных уравнений (5.56). После ее первого применения получается система, граф которой изображен на рис. 14, е. Аналогично предыдущему к ней также может быть применена операция переноса диагональной связи (при этом диагональ,
§ 5.6. Метод диагональных переносов (TS-алгоритм) 235 обозначенная на рисунке жирной линией, исчезает, а тонкая диагональ переходит в жирную). Непременным условием возможности продолжения такого процесса является выполнение свойства внутренней цикличности в треугольном контуре, возникающем при сдвиге диагонали, В примере на рис. 15, а такой новый треугольник - это 3-4-6, для которого необходимо проверить справедливость равенства SZA ' 54,6 * $6,3 = 54^3 ' *3,6 ' $6,4' (5.66) Используя формулы (5.63) для величин 41и4!) отсюда получаем равенство зо(з'«з,6*^6,4-^4,0 = ^о-^о'^б'^З) которое означает свойство внутренней цикличности для исходного прямоугольного элементарного контура 0-3-6-4, Отметим теперь тот факт, что новая диагональная связь не возникает ($з 4 — 54 з ~ 0)) если "текущий" узел (в примере на рис. 15, а - с номером 0) является в сетке граничным справа и/или сверху («о,з = зго = 0 и/или 5о,4 = $4,о = 0). Поэтому если операции переноса диагоналей продолжить последовательно до конца, т. е. до выхода на верхнюю и/или правую границу сеточной области, то в итоге мы получим систему пятиточечных сеточных уравнений, отличающуюся от исходной на единицу меньшей размерностью, - отсутствует первая исключенная неизвестная. При этом сеточной диагонали, определяемой первым исключенным узлом, соответствуют новые неизвестные (в рассмотренном выше примере - щ^ Щ^ - ■ - > ик 1> · · ■» ^ ~ 2,,,., N — min{L, M}). Уравнения отличаются коэффициентами и правыми частями в узлах, примыкающих к этой диагонали. Отметим, что если полученная система (LM — 1)-го порядка будет каким-то образом решена, то исходные искомые величины щ^^ I = 1,..., fc, могут быть вычислены по формулам вида (5.61) при обратном движении вдоль сеточной диагонали c/ = iV, N — 1,...,2. Рассмотренные две вычислительные процедуры будем называть прямой и обратной диагональными прогонками. После проведения (1,1)-й прямой диагональной прогонки (двухин- дексный номер определяем первым исключаемым узлом) аналогичным образом можно исключить из оставшихся уравнений неизвестные, соответствующие узлам (1,2),...,(1,j),..., (1, Μ) и (2,1),..., (г, 1),.,., (L, 1) В полученной подсистеме (L — 1)(М — 1)-го порядка будут уже только новые неизвестные и\ J, г = 2,..,, L; j — 2,..., Μ. Описанные выше процедуры можно назвать первым этапом прямого хода рассматриваемого алгоритма, состоящим в исключений из исходной системы неизвестных,
236 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ соответствующих "первому слою" сеточных узлов (левые и нижние узлы, у которых г — 1 или j — 1). Отметим, что если результирующая подсистема относительно новых неизвестных и\ ■ как-то решена, то искомые величины U{j могут быть вычислены с помощью обратных диагональных прогонок, осуществляемых в последовательности, обратной выполнению прямых прогонок. После завершения первого этапа прямого хода аналогично выполняется второй этап, на котором исключаются неизвестные, соответствующие узлам второго слоя с индексами (2,2),..., (2, М), (3, 2),..., (L, 2), и формируется новая подсистема пятиточечных уравнений порядка (L — 2)(М — 2) относительно неизвестных и\ j, г — 3,..., L; j = 3,..., Μ. Далее прямой ход метода переноса диагональных связей может быть продолжен до своего логического конца, когда после последнего этапа с номером К — max{L — 1,М — 1} неисключенным остается только неизвестное в правом верхнем узле с индексами (L,M). Его вычисление и завершает прямой ход алгоритма, а более точно, начинает обратный ход метода, заключающегося в последовательном вычислении К — 1 (2) (1) вспомогательных неизвестных п£ · ,,.., и] ·, и] < и искомых значении Для реализации обратных диагональных прогонок рассмотрим вместо (5.60) другие соотношения, получаемые при выполнении условий (5.62) путем исключения (с помощью выражения (5.60)) из первого уравнения системы (5.58) величин wi, «г: α(1) - β0,ι*//3, /?(1) - 50,зае, а? = —, (5.67) 53,0 7(1) = s0,4a3, д{01] = д0ае. Для определения здесь величины β потребуем выполнения условия диагонального преобладания в уравнении (5.67): а(1)+/3(1)+7(1) -1, (5.68) которое очевидным образом связано с устойчивостью к погрешностям округлений рекуррентных вычислений в обратных диагональных прогонках. Из равенства (5.68) и соотношений (5.67) следует ^(l + f^ + fM)-1, (5.69) ^ $0,1 52Д/ что, в свою очередь, дает формулу для неопределенного пока а:
§5.5. Метод диагональных переносов (TS-алгоритм) 237 а=(1 + £Ь£ + ^Г\ (5.70) Отсюда можно вывести следующий важный результат. Теорема 5.3. Если система пятиточечных сеточных уравнений имеет матрицу положительного типа и обладает свойством внутренней цикличности, то определяемая соотношениями (5.64), (5.70) процедура последовательного переноса диагоналей является корректной и сохраняет указанные свойства и для промежуточных систем уравнений. Доказательство вытекает, во-первых, из равенства (5.66) и из проверки сохранения условий внутренней цикличности для контуров 0-1- 7-4 и 0-2-8-3 на рис. 15, а: (1) (1) С1) (1) S2,0 * 50,3 * *3,8 * *8,2 = S3,0 * 50,2 ' S2,8 ' θ8,3, (ι) (ι) (ι) (ι) sl,0 " β0,4 * 54,7 ' «7,1 = «4,0 * θ0,1 * *1,7 * *7,4, (5.71) которые проверяются непосредственно с помощью формул (5.64) и с учетом аналогичных равенств для исходных коэффициентов (получаемых из (5.71), если убрать верхние индексы в s"kl). Во-вторых, надо убедиться в положительности всех новых коэффициентов sk\ ив сохранении свойства диагонального преобладания во всех сеточных уравнениях, затрагиваемых операцией переноса диагональной связи. Последнее осуществляется путем непосредственной проверки неравенств вида (1) (1) (1) . . S0,0 - S0,l ~ S0,2 > S0,0 - «0,1 - «0,2 > $0,3 + 5<M> 5i!i - 4*i > *i,i - so,i - «1,5 > 5ii7, (5.72) 4!з - 5з!о - sz]l > (5з,з - яз,о) > 0. Отметим при этом, что если для какого-то узла исходное сеточное уравнение имеет строгое диагональное преобладание, то это свойство сохраняется и в соответствующем преобразованном уравнении. Под корректностью мы понимаем отсутствие деления на нуль при реализации алгоритма. Его выполнение в рассматриваемом методе при установленных свойствах коэффициентов является очевидным. Нетрудно также убедиться, что при симметричности исходной системы уравнений справедливо следующее утверждение. Теорема 5.4. Если система пятиточечных сеточных уравнений удовлетворяет условиям теоремы 2 и является стилтьесовой, то
238 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ процедура последовательного переноса диагональных связей сохраняет это свойство и для промежуточных систем уравнений. 5.6.2. Алгебраические свойства метода. Для рассмотрения алгебраических свойств описанного алгоритма приведем более формальное описание метода переноса диагональных связей, ограничиваясь для простоты случаем квадратной сеточной области с L ~ М. Пусть к означает номер этапа прямого хода алгоритма, заключающегося в переходе от системы уравнений порядка (L -f- 1 — к)2 для неизвестных и\ ~ , г,j — к,... ,L, к системе меньшего порядка L\ — (L — к)2 для величин u\L· г, j = к -+- 1,..., L. Реализация fc-ro этапа включает выполнение rift — 2Lfc — 3 диагональных прогонок, каждая из которых определяется двухиндексным номером (i,j)k,u ' — 1>· -,^Λ) своего первого узла и состоит в исключении соответствующей сеточной переменной с последующими rrikj переносами диагональных связей. Номера первых диагональных узлов на fc-м этапе - это (fc, L - 1),. -., (fc, к + 1), (fc, fc), (к + 1, fc),..., (L - 1, fc), а порядок их исключения - от центра данного списка к их краям. Проводимые на fc-м этапе прямые прогонки включают следующие соответствующие количества шагов с переносами диагоналей: 1,.., ,L — fc — 1, L — fc, L — fc — 1,...,1. Для наглядного представления последовательности выполнения алгоритма двухиндексная нумерация первых исключаемых в диагональных прогонках узлов приведена на рис. 16. Выполнение прямого хода завершается вычислением значения uL ΐ ' для правого верхнего узла сетки. Схема выполнения обратного хода с помощью формул вида (5.68) (в направлении уменьшения сначала второго индекса /, а затем к) также может быть понятна из этого рисунка. Если (i,j) - индексы текущего узла переноса диагональной связи от пары узлов (г — 1, j) — (г, j — 1) к паре (г + 1,^*) — (г, j + 1) на fc-м этапе прямого хода, то выписанные ранее для частного случая формулы надо заменить на более общие. Систему уравнений (5.58) записываем в форме (fc-l) (fc-l) __ (fc-l) (fc-l) _ , (fc-l) (fc-l) _ (fc-l) (fc-l) ei,j ui,j ai,j ui-l,j °ij ui,j~i ci,j ui+iJ ai,j "i,j+l — JiJ ' (fc-l) (fc-l) _ (fc~l) (fc-l) _ Jk-1) (fc-l) _ (fc-l)
§ 5.6. Метод диагональных переносов (ТS-алгоритм) 239 (fc-1) (fc-l) _ .(fc-1) (fe-1) _ (fc-1) (fc-1) „ (fc-l) ί5 ?3Ч (fc-i) (fc-i) _ (fc- i)M(*-i) __ J*-i) (fc-l) (fc-l) ,(fc-l) (fc-l) _ (fc-l) где правые части в общем случае имеют вид (fc-1) _ ,(fc-l) _ (fc-1) (fc-1) _ ,<fc-l) (fc-l) _ ,(fc-l) (fc-1) (к -ι) _ f(fc-i) _ (fc-i) (fc-i) _ , (fc-i) (fc-i) __ (fc-i) (fc-i) f5 74v ffc-1) _ ,<fc-l) ,(fc-l) ifc-1) (fc-1) (fc-1) ,(fc-l) (fc-l) Уг+lj — ^i+l,J °t+lju*+l,j-l ci+l,j "z+2,j az+l,ji "z+lj+1 > (fc-i) _ /(fc-i) (fc~i) (fc-i) (k-l) ifc-1) (fc-l) (fc-l) 0»,j+l — Jij'+l ai,i+l ni-l,j+l ЧЯ-l ui+l,j + l tti,j+l ui,j+2 ' 1,9 2,7 3,3 4,2 5,1 о о о о о 1,8 2,6 3,2 4,1 4,2 о о о о о 1,7 2,5 3,1 3,2 3,3 о о о о о 1,6 2,1 2,2 2,3 2,4 о о о о о 1,1 1,2 1,3 1,4 1,5 Рис. 16. Номера (fc,i) исключаемых узлов (неизвестных): к - номер этапа, I - номер диагональной прогонки На локальном шаге переноса диагональной связи новая неизвестная вводится по формуле с помощью которой вместо (5.67) выводятся (при условиях типа (5.62)) уравнения
240 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ е{к)и{к) - aWu{h~1] - Ъ{к)и{к~Х) - с{к'Х) и{к"1} ei,JUiJ ai,3Ui-U °i,3UiJ'l CU Ui+l,J Jk-1) (k-1) _ ,(fc-l) (fc) (fc-1) _ (fc) (fc) _ (fc-1) f5 7g, et,i-lUi,j-l ai,j-lUi,j - iJij-l ' (A) (fc-1) __ (fc) (fc) _ (fc) (fc-1) _ (fc) ei+l,jUi+l,j ai4-l,iUt,j 9i+l,jai,j+l — »t+l,jJ (fc) u(*-i)_b(*) tti*)_eDW „(*-*) -J*) ei,j+lui,j+l °i,j+lUi,j Pt,j+lui+l,j _»i,j4-l> где новые величины определяются соотношениями Jk) _ J*-i) 1а[Ь) Ah) _ (fc-i) , (fc-iK(fc-i) fcW-fci*"1) 4- Jfc-D£izlbL „ife) - Л*"1) + Jfc-D/ffc-i) D»\i -°<,i + ei,i (fc-i) > et-i,j - ei-i j + W-i ,j 4j > c<-i,i (fc-i) Jfc) _J*-1)/Л(*) f(fe) _ %3'l ci-lJ - ct-l,i /ai,j ' ct,j - ,(fc-l) ' (fc-1) J*) _ .(fc-i) . d(*-i) ft-ij d(fc) _ >(*-!) /a(fc) /5 77) Ci-lJ (fc-1) (fc-1) „(fc)_ gj,i-i°H-i.j J*) _ Jfc-i) _ Jfc-i),/fc) v<,i - (fc-i) (fc-i) (fc-i) (fc-i)> ei+i,i - eH-i J 4j vi,i > ai,i ai,i-i ~*~еЧ7 *i,j-i (fc-i) (fc) (fc-i) (fc) „(fc) -a'''J V''J „(fe) - Л*-1),/*) Л<*> - a*'J w''·* a«+ij- „(*),(*) ' 9*+i.i~a«.i %i' °*.i+i - „(*),(*) ' e(fc) _e(fc~i) _ sk~vwm Jk) _ Jb-^vW (fc-lK(fc-l) w(fc)= gi,j-l4i+l л(Л) __ „(fc-1) ^_ ,(*-!)„,(*) ' (fc-1) ,(fc-1) (fc-1) (fc-1) > ft+l.i"ft+l,j + 'i,j ™47' a*,j ai,i-i "1"eU **j-i (fc-1) (fc-1) „(fc) _„(fc) . f(k~l)inW „(*) -fi. P*"ltJ 4- ^ЫЛ ftv+i-^-i+i + Λ,,- ^ij . ai,i - ^ + IfcTI)" + "(fc^iyj ■ c*-i,i ai,i-i Для реализации обратных диагональных прогонок используются следующие соотношения, получаемые из (5.67): „(Ь-1) _ &(h) (h) + 5(fc)tt(fc-D ^(fc) (fc-1) f(fc)
§5.6. Метод диагональных переносов (TS-алгоритм) 241 ^ГЧ>Й\ ^УЧГЧУ. $> = <4ГЧ?.(5.78) ж J*-i) *t,j-l (Л) __ #(fc-l) J*) (fc-l) (fc-l) ,(fc-l) (fc-l) > '<.J ~ •'i.J *<.J > i,j ft,j-l + aiJ-l ai,j 43 = ( (fc-l) = 1 + *E .(*-ΐ) + +- *.J x«.j-i \ 0(*-1)У -1 Перейдем теперь от покомпонентной записи осуществляемых преобразований к матричному представлению алгоритма. Для этого перепишем систему уравнений (5.58) в виде Su~ «0,0 -5ι,ο -«2,0 —«3,0 -«4,0 —«од «1Д -«2,1 0 0 —«0,2 -«1,2 «2,2 0 0 -«о,з 0 0 «3,3 0 -«0,4 0 0 0 «4,4 п0 «1 и2 из щ = 50 91 92 9з _ 94 = 9, (5.79) где 5, и, g ~ квадратная матрица и векторы пятого порядка. Замену переменной (5.60) и обратное преобразование (5.61) можно изобразить следующими матричными соотношениями (штрих означает транспонирование): й^ Ru, и (1) («0 ,«1,«2,«3,«4)', U = Ц*и 4.W Д= α β η 0 0 0 10 0 0 0 0 10 0 0 0 0 10 0 0 0 0 1 , А"1: 1/α -β/α 0 1 о о о о о о -η/α 0 0 0 0 0 1 0 .0 0 1 0 0 0 1 . (5.80) Полученная после выполнения процедуры локального переноса диагональной связи система уравнений (5.63) представляется в форме SWfiW Л1) в0,0 *1,0 а2,0 Я3,0 «4,0 Л1) ~βΟ,1 0 0 0 „(1) sO,2 0 s2,2 0 -0 -«0,3 0 0 s(1) «3,3 s4.3 -30,4 0 0 *3,4 «4,4 u{1) «1 u2 из Щ
242 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ 9о 91 92 Ξ9<4 (5.81) где новые матрица и вектор S^\g^ выражаются с помощью матричных преобразований S^=QSR-\g^=QS,Q = 1 0 0 «1 t» 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 (5.82) Для "глобального" описания алгоритма необходимо перейти к матрицам и векторам полной размерности, равной порядку L2 исходной системы уравнений (5.57), а также дать алгебраическую интерпретацию всей совокупности этапов и шагов диагональных прогонок, представляемых, в частности, формулами (5.73)-(5.75). Пусть (г, j) - индексы текущего, или центрального, узла локальной операции переноса диагональной связи на fc-м этапе алгоритма. При этом диагональ "перескакивает" через данный узел, что связывается (Jfe-l) (к) с заменой переменной в ассоциированной компоненте с и) · на и\ J. Обозначим через п^»*"1) и u^,J,fe^ соответствующие векторы порядка L2, отличающиеся только одной компонентой. При этом предполагается, что все компоненты n^,J',fc), обладающие "сквозным" номером, соответствующим последовательности локальных операции, меньшим чем у (г, j)-ro узла,имеют верхний индекс fc, а остальные компоненты - к — 1. Тогда "локальные" системы уравнений (5.72), (5.75) записываются в виде Л(*-1)и(«,;,*-1) = /«,,■.*-!) j AWU№) = /«.Μ), (5.83) где введенные матрицы и векторы связаны соотношениями ?(*) №\и(ЧР(Ч q\*) _ (рУ*)\1 л\х)р\х) (5.84) >(*) а Р>у - ортогональная матрица проектирования из L2-мерного пространства в 5-мерное. Здесь также B\J· заменяет матрицу S^ из (5.81),
§ 5.6. Метод диагональных переносов (ТS-алгоритм) 243 соответствующую переносу диагональной связи на к-м этапе через (*,Я"Й Узел· Аналогично можно ввести матрицы полного порядка и для преобразований (5.80)-(5.82), реализующих диагональные переносы: /)(*) - (pWynWpW pW _ /p(*)vp(fc)p(fc) Хотя матрицы i4j ■ , J^ · однозначно определяются своими индексами и значениями коэффициентов исходной системы, для более тесной привязки обозначений к последовательности выполнения шагов и этапов рассматриваемого алгоритма введем следующие обозначения: I - номер сеточной диагонали, а>*. - совокупность номеров тех диагоналей, которые участвуют в к-м этапе вычислительного процесса, т. е. пересекают сеточную подобласть Ω*, τη - номер узла диагонали в исходной сетке По (отсчет начинается с левого нижнего конца диагонали), ω^^ - совокупность номеров rrikj тех узлов, которые участвуют в переносе связей на £-й сеточной диагонали при выполнении fc-го этапа. Очевидно, что подиагональная нумерация узлов однозначно определяет соответствия матриц /ί(*0 _ п. Р^ — Ρ А^ - Δ После проведения fc-ro этапа прямого хода мы приходим к системе уравнений порядка А(к)и(Ю =f(k)m (5e85j Для описания перехода от (к — 1)-го этапа к fc-му необходимо использовать матрицы Pfe,i(mi Qkti,mi реализующие проведение всех диагональных прогонок до конца. Напомним, что каждая из них начинается с исключения из системы левого нижнего узла, что фактически представляет собой один шаг метода Гаусса и определяет матричный левый треугольный множитель Т^, реализующий понижение порядка на единицу: ^(М-1) - у(М> 4*'° 0 4кЛ = f(Ki)A Μ»ο· Здесь А\ , А2 - верхняя треугольная и некоторая прямоугольная матрицы, а -Α^,/,ο) ~ квадратная подматрица порядка Nkj — ^,ζ-ι — 1, полученная после начального шага диагональной прогонки, т. е. исключения узла из подсетки Ω&,/_ι и появления первой диагональной связи. Завершение ί-й диагональной прогонки порождает преобразования
244 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ А^= Π Qw,m(T(»·'))-1^*·'-1) Π Rkj^Q^A^'-VRW, (5 /(W)= Π Q*.i.-.(r(*,,))_1/(fc',-1)=0(fc',)/(w-1), определяющие промежуточную систему уравнений получаемую после завершения 1-й диагональной прогонки на fc-м этапе. Аналогично между матрицами и векторами, описывающими системы уравнений, можно ввести соотношения, получаемые после завершения каждого этапа прямого хода алгоритма: AW = jj Q(kti)A(k-i) jj Л(*Л =д(«л(«лЖ1 /е*ь i=W|t (5.87) /<*) =Q(*)/(*-i). В формулах (5.86), (5.87) предполагается в силу неперестановочности матриц, что множители Qfc,i,m, Q^k,i^ и Rk,iym, R^1^ в произведениях следуют справа направо в направлении убывания индексов т или I соответственно. 5.6.3. Вычислительные аспекты алгоритма. Проведем оценку вычислительных ресурсов, необходимых для реализации всего алгоритма при L = Μ ^> 1. При выполнении fc-ro этапа прямого хода для рассмотренной в п. 5.6.2 процедуры требуется выполнить общее количество локальных диагональных переносов, равное Nk=L~K + 2[(L - Jb - 1) + (L - fc - 2) + ... + 1] = (L - k)2. В целом же реализация всего прямого хода требует О о диагональных переносов. Как нетрудно проверить, столько же раз требуется проводить вычисления по формулам (5.67) на обратном ходе алгоритма. Непосредственный подсчет числа мультипликативных операций в формулах (5.64), (5.67), (5.69), (5.70) показывает (30 - в прямом ходе и 3 - в обратном, в расчете на один узел сетки), что общее количество действий
§ 5.6. Метод диагональных переносов (TS-алгоритм) 245 Q = 10L8 + 0{L2). (5.88) Объем необходимой памяти определяется количеством чисел, которые надо запоминать для реализации обратного хода: P^\lz + 0{L2). (5.89) Сравнение этих данных с формулами (5.57) показывает, что TS- алгоритм требует для реализации практически столько же вычислений, что и метод вложенных сечений, но проигрывает последнему при больших L (L > Щ log2 L) по объему необходимой памяти. Величины (JhPb (5.88), (5.89) для некоторых случаев удается сократить. Так, при Ь>Мих порядок равен 0(LM2). Остановимся теперь на вопросе устойчивости TS-алгоритма к погрешностям округлений при машинных вычислениях. Отметим, прежде всего, нежелательность использования формулы (5.61), с помощью которой был выведен алгоритм, для вычисления искомого решения на обратном ходе, так как в ней α < 0 и сумма модулей коэффициентов правой части больше единицы, что свидетельствует о возможном значительном накоплении погрешности при многократном рекуррентном использовании данной формулы. Этот факт подтверждается также и проведенными численными экспериментами. Проведем прямой анализ накопления погрешностей округления при выполнении обратного хода TS-алгоритма по формулам (5.67) с условием (5.68) (см. также (5.78)). Для этого мы введем подиагональную упорядоченность узлов и обозначим через щ ' = {u\j', г -f j; — 1 = /} подвекторы переменных порядков, компоненты которых суть значения функции на 1-й диагонали, соответствующие fc-му этапу восстановления решения. Тогда обратный ход можно записать в виде ™L-l - ^t~l UL-l + nL-l uL-l+X + *L-l ' (L-*+l) _ r(L-h) -№-*+!) , fib-h) UL~k — °L-fc UL-k+X + JL-k ' fc = l,2,...,L-l; 1 = 1,2,...,fc-l, где A^LZi - диагональные матрицы с элементами вида a^j из (5.78), bl~\ - {A*,ji7*j} ~ двухдиагональные матрицы, /^j** = {ЩУ ~ векторы, (5.90)
246 ГЛ. Б. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИИ a C^Sk - двухдиагональные матрицы, реализующие элементарный обратный ход исключения Гаусса в конце каждого fc-ro этапа восстановления. Формулы (5.90) можно переписать в виде одного рекуррентного соотношения в котором анализ ошибок округления проведем аналогично исследованию метода прогонки в [10]. Будем предполагать, что для каждых fc,Z машинная реализация формулы (5.91), при заданных матрицах Α^^ι , ^1„7 , С^~к и век- 7{L~k) торах jL_i , осуществляется с привнесением аддитивной погрешности e^lfj в результате чего вычисляются возмущенные величицы u"LZi = ~{L~k) , c(L~fc) uL_l -l· vL_t , определяемые равенством й(^-*) - 4(Ь-*)Г(Ь-*+1)л(Ь-к+1) , R(L-fc) -.(£-*) jrfL-fc) Отсюда, вычитая почленно равенства (5.92), (5.91), получаем рекуррентные соотношения для ошибок °L-I - AL~l °I,-fc °L-l+l + ^L-I °L-/+1 + ε£-Ι ' (5.93) fc = 1,2,...,L-1; ί = 1,2, ...,* — 1. Поскольку из условия (5.68) и стилтьесовости пятиточечных, уравнений на всех этапах прямого хода мы имеем 1|с£-к*+1)|и < ι, \\A[L-k) + 4X_74IU = ι, то с использованием обозначения ε = max{||e£_j ||<х>} из (5.92) получа- .(Ь-*)| ем рекуррентные неравенства где || ■ || означает векторную равномерную (кубическую) норму или подчиненную ей матричную норму. Непосредственно отсюда уже следует утверждение.
§ 5.6. Метод диагональных переносов (ГS-алгоритм) 247 Теорема 5.5. Для погрешностей округления на обратном ходе ΤS-алгоритма, выполняемом по формулам (5.67), (5.78) с условием (5.68), при L — Μ справедливы оценки \\δ^Ζ\ ||<х> < (к + 1)ε < 2Le. Таким образом, погрешность округления с ростом L растет, но только линейно, что можно считать хорошим показателем устойчивости. Для полного обоснования устойчивости TS-алгоритма необходимо проанализировать накопление ошибок при реализации формул (5.64), (5.69), (5.70) прямого хода в процессе переноса диагоналей. Однако в силу своей очевидной сложности эта интересная тема заслуживает быть предметом специального исследования. Сделаем еще замечание о возможности распараллеливания TS- алгоритма. Естественно, в начале прямого и обратного ходов могут быть задействованы только несколько процессоров. Однако после завершения первого этапа вычисления могут быть организованы "волнообразно" с параллельной реализацией диагональных переносов для различных узлов и этапов. Поэтому, например, при использовании числа процессоров порядка ρ = O(L) коэффициент ускорения, очевидно, легко сделать близким к L. Более того, для ρ — 0(L2) можно добиться значительно большего ускорения, но при некотором снижении эффективности использования всех процессоров. 5.6.4. Некоторые выводы. Рассмотренный TS-алгоритм представляет собой новый тип алгебраических преобразований, основанный на трансформации матричных графов, и, по-видимому, может быть развит для других типов систем уравнений. С методической и практической же точек зрения требуется аргументировать эффективность TS- алгоритма для решения пятиточечных систем уравнений в сравнении с методом вложенных сечений, имеющим рекордные показатели по объему вычислений и требуемой памяти. а. Эффективность TS-алгоритма существенно повышается для областей с относительно короткими сеточными диагоналями. Так, для прямоугольника с числом узлов LM% 1 <С Μ < L, количество операции и объем памяти имеют вид Q = 33£, Ρ = 4£, где t = | (L ~ М)М2 4- |М3 есть общее элементарных Т5-преобразований. В частности, при Μ < L имеем Q яа Ц-LM2, Ρ « 2LM2. б. С помощью TS-алгоритма могут экономично решаться задачи о нахождении так называемого частичного решения, зачастую встречающиеся на практике, когда результат требуется найти только для ограниченного подмножества узлов сетки. В этом случае за счет адаптивной упорядоченности узлов и
248 ГЛ. 5. ПРЯМЫЕ МЕТОДЫ РЕШЕНИЯ СЕТОЧНЫХ УРАВНЕНИЙ узлов и соответствующей последовательности вычислений можно практически избежать проведения обратного хода алгоритма, что дает экономию в числе операций и особенно - в объеме памяти. Так, если для рассмотренного в п. 5.6.2 квадрата с L — Μ требуется найти решение только для узлов на правой и верхней сторонах сеточной области (г = L или j = L), то мы имеем Q ^ 7L3, Ρ = 0(£2), что существенно лучше аналогичных показателей для метода вложенных сечений. Еще большая экономичность TS-алгоритма при вычислении многовариантных частичных решений, когда требуется рассчитать N > 1 задач, отличающихся только правой частью на одной стороне расчетной области: при этом получаем Q » 7L3 + 1>5L2N. в. Известно (см., например, [11]), что метод вложенных сечений плохо приспособлен для распараллеливания. TS-алгоритм, как уже отмечалось выше, позволяет добиться коэффициента ускорения вычислений, близкого к числу процессоров, и имеет в этом смысле значительное преимущество. г. Для отдельных частных задач возможно эффективное сочетание ΤS-алгоритма и метода вложенных сечений. Последний наиболее эффективен, когда расчетная область есть сеточный прямоугольник с числом узлов на каждой стороне L = 2Z — l,M = 2m — 1, где 17т - целые. Если же сеточная область близка к такому идеалу, но содержит относительно малое число "лишних" узлов, то они могут быть экономично исключены с помощью Т5-алгоритма.
ГЛАВА 6 ИТЕРАЦИОННЫЕ МЕТОДЫ Теория итерационных методов решения систем линейных алгебраических уравнений представляет собой достаточно самостоятельную и обширную область вычислительной алгебры. Особое внимание исследователей в последние десятилетия привлекали сеточные системы уравнений, возникающие при аппроксимации двумерных или трехмерных краевых задач. Этим вопросам посвящались многочисленные специальные конференции и монографии [1, 2, 5, 17, 18, 38, 45]. Изучение итерационных процессов имеет три основные цели: разработка и обоснование методов для новых классов уравнений; наиболее типичными и исследованными являются системы с симметричными положительно-определенными матрицами, а также с М-матрицами (не говоря уже о пересечении этих множеств - стилтьесовых матриц); потребность в расширении областей применимости алгоритмов может быть связана как с появлением новых задач математической физики, так и с "внутренними" проблемами разностных методов, обусловленными использованием специальных сложных сеток или способов аппроксимации; - повышение эффективности итерационных алгоритмов в смысле сокращения общего числа арифметических действий Q{e), необходимых для получения решения с требуемой точностью ε; эта величина оценивается произведением числа итераций на объем вычислений для реализации одной итерации (если их выполнение осуществляется по однотипным формулам); в ряде случаев может иметь значение и объем требуемой памяти для запоминания промежуточных величин, однако в итерационных алгоритмах эта характеристика, как правило, не является критичной; конструирование и выбор оптимальных методов для конкретных видов задач, выработка рекомендаций по выбору алгоритмов
250 ГЛ. 6, ИТЕРАЦИОННЫЕ МЕТОДЫ в зависимости от особенностей решаемых систем уравнений и применяемых компьютеров. Решение этих вопросов требует как теоретического анализа, так и широкого привлечения экспериментальных исследований, поскольку зачастую аналитические оценки имеют только качественный или асимптотический характер и последнее слово остается за практическими расчетами. В рамках одной главы реальная цель заключается в изложении главных принципов построения и исследования итерационных процессов, а также в описании основных типов алгоритмов, отражающих современное состояние и перспективы развития данной области. Как уже прочно сложилось в литературе, общетеоретическое исследование различных методов мы будем сопровождать сравнительным анализом критериев их эффективности на модельной системе уравнений, проистекающей из пятиточечной аппроксимации на квадратной сетке задачи Дирихле для уравнения Пуассона в квадратной области с длиной стороны π. Собственные числа матрицы такой системы описываются формулами (3.61) и при hx — hy = h — -щ-[ имеют вид 2<Ap,e = ^(sin2p^+sin2g|)<^(4-/12), p,q=l,...,N.{6.1) Несмотря на кажущуюся тривиальность, эта задача является достаточно репрезентативной, и асимптотические свойства алгоритмов при h <C 1 в главном адекватно отражают особенности численных расчетов в практических ситуациях. § 6.1. Классификация и общие свойства итерационных методов Сущность итерационных алгоритмов при решении системы уравнений Аи — / заключается в вычислении последовательности векторов где Фп - некоторое преобразование в конечномерном пространстве. Индекс η называется номером итерации, или последовательного приближения, а количество предыдущих приближений г, непосредственно участвующих при вычислении n-й итерации, называется порядком итерационного процесса.
§0.1. Классификация и общие свойства итерационных методов 251 Итерационный процесс называется сходящимся, если при произвольном векторе υ? приближения ип сходятся при η — >- оо к точному решению (что эквивалентно сходимости любой из норм |]ζη|| = ||u — ΐχη||η-->οο -> 0). Вектор ζη называется ошибкой п-го итерационного приближения. При г — 1 итерационный процесс называется линейным и может быть записан в каноническом виде ип - BnU*1'1 +gn, η = 1,2,..., (6.2) где gn и Bn - некоторые заданные векторы и матрицы (последние называются матрицами перехода, или итерационного шага). Существует и другая - вторая - каноническая форма линейного итерационного процесса, эквивалентная (6.2): Кп{ип - и*1'1) = / - Аип~\ (6.3) Матрица Кп называется предобуславливающей и имеет простую связь с матрицей перехода Вп: Вп=Е- К»1 А, Кп - А(Е - Вп)-1. Вектор гп = / — Аип называется вектором невязки и имеет легко проверяемую связь с вектором ошибки Azn = rn. Линейный итерационный процесс называется стационарным, если вектор дп в (6.2) и матрица перехода Вп (и, следовательно, предобуславливающая матрица Кп) не зависят от номера итерации п, т. е. дп ~д, Вп = В, Кп ξξ К. Итерационный процесс, представимый в виде (6.3) с невырожденными предобуславливающими матрицами Кп, уже обладает тем полезным свойством, что если последовательные приближения и" сходятся к некоторому вектору и°°} то этот предельный вектор есть искомое точное решение и. Это легко непосредственно проверяется (напомним, что мы рассматриваем только невырожденные системы алгебраческих уравнений). Вычитая из очевидного равенства Кп(и — и) — / — Аи почленно (6.3), получаем связь между векторами ошибок на соседних итерациях zn — Bnz = ... = Вп · Βη—ι · ... · Βχζ . Отсюда видно, что достаточным условием сходимости итерационного процесса является выполнение для .всех η неравенств ||Βη|| < ρ < 1.
252 ГЛ. 6. ИТЕГАЦИОННЫЕ МЕТОДЫ При этом для произвольных норм векторов ошибок имеем ||zn|| < ρ||ζη_ι|| < ρη||ζο||. Величина ρ называется коэффициентом подавления ошибки итерационного процесса. Эффективность итерационного процесса определяется объемом вычислительных ресурсов - главным образом арифметических операций и оперативной памяти ЭВМ, необходимых для получения решения с заданной точностью. Ключевых моментов здесь два: количество необходимых итераций и трудоемкость реализации каждой из них. Очевидно, что в итерационных процессах с однотипными предо- бу с лав лив ающими матрицами эффективность тем выше, чем меньше коэффициент подавления ошибки. Для более общих случаев основным критерием экономичности алгоритмов является средняя скорость сходимости итераций Лп = шах{ —1цЫ). (6.4) 2<Vo I n ||z°|| J Очевиден "физический" смысл данного понятия: это количество верных знаков "по основанию е", получаемых в среднем за одну итерацию. Кроме того, через скорость сходимости выражается такая важнейшая характеристика итерационного процесса, как число итераций η(ε), необходимое для того, чтобы начальная ошибка уменьшилась в ε"1 раз: n(e)=min{n:igli<e}. Непосредственно из определения (6.4) следует η(ε) > j^ . Если величины Rn стремятся к пределу R^ при η -> оо, то он называется асимптотической скоростью сходимости итераций: JZ«, = - lim f-lnMj. Из определения коэффициента подавления ошибки ρ устанавливается следующее простое соотношение: Rn > R — —Inρ, где величину R будем называть просто скоростью сходимости. Очевидно, что если итерационный процесс плохо сходится, т. е. ρ ~ 1 — J, £ <С 1, то выполняется приближенное равенство R ад S. Приведем без доказательства основные результаты общей теории итерационных методов, касающиеся оптимизации скорости сходимости алгоритмов. Рассмотрим сначала стационарные итерационные процессы: Вп = В, Кп = К. В этом случае вместо (6.2) мы можем записать
§ 6.1. Классификация и общие свойства итерационных методов 253 ип = Вип~х + д, η = 1,2,..., (6.5) и сформулировать следующий сильный результат. Теорема 6.1. Необходимым и достаточным условием сходимости итерационного процесса (6.5) для решения невырожденной системы уравнений является выполнение неравенства σ(Β) < 1. В силу приведенных выше соотношений между исходной и предо- буславливающей матрицами мы можем записать А = К — (7, В = К~1С. Отсюда на основе свойств слабо регулярного разложения (см. теорему Варги 3.12) несложно устанавливается следующий результат. Теорема 6.2. Пусть для решения системы с монотонной матрицей А построены два линейных стационарных итерационных процесса вида Ks(un ~ и71"1) — / — Аи*1"1, $ = 1,2, с монотонными предоб- уславливающими матрицами Ка = А + Cs, s = 1,2, такими, что выполняются условия 0 < Ci < С%. Тогда оба эти метода сходятся и справедливы соотношения i(B1) = W1-C1) = Tfg^_ < j№)=i№.CI)=ri(^J<1. При проведении любого итерационного процесса возникает вопрос о критерии окончания итераций, обеспечивающем требуемую точность. В силу имеющейся связи между вектором ошибки zn ~ u~un ж вектором невязки гп = / — Аип на каждой итерации выполняется неравенство iitt-ici^HA-i-im. Таким образом, если для обратной матрицы А"1 известна оценка евклидовой или равномерной нормы, то контроль за величиной невязки позволяет гарантировать необходимую точность итерационного решения. Однако когда величина ||^~χ|| оценивается слишком грубо или совсем неизвестна, это заставляет проводить итерации "с запасом". Можно также прекратить итерационный процесс по условию "достаточной" близости соседних приближений. Чтобы понять надежность такого критерия, рассмотрим для простоты стационарный линейный итерационный процесс (6.5), у которого норма (любая) матрицы перехода В, т. е. коэффициент подавления ошибки />, меньше единицы. В силу легко проверяемого соотношения
254 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ llti^-u-II^IIBII-llt»"-»-1!! из цепочки неравенств ||и - и"|| = ||и - ип + ип+1 - v.*1'1 + .. .ип+к - ип+к + ... || < ||un+1 - un|| + ||un+2 - «n+1|| + ... < ||ип+1||(1 + ρ + ρ2 + ·..) следует, что при выполнении условия ||un+1 - ιχη|| < ε (6.6) для ошибки итерационного процесса справедлива оценка ци_„»ц< * Последнее означает, что если итерационный алгоритм является медленно сходящимся (например, ρ « 0.999), то при использовании критерия (6.3) надо брать значение ε "с запасом". Другой вывод - данный критерий является менее универсальным, чем норма невязки, так как зависит от применяемого метода: для двух различных процессов с фиксированным значением ε реально достигнутая точность будет выше у того метода, который сходится быстрее, т. е. значение ρ меньше. Однако использование неравенства (6.7) может иметь то преимущество, что позволяет получать апостериорную оценку погрешности итерационного решения. Действительно, пусть матрица перехода В имеет базис из собственных векторов ζι,..., zjv, которым соответствуют собственные числа 1 > i Αχ Ι > I Аз I > ... > A;v (максимальное по модулю собственное число считаем простым, тогда вектор Ζχ будет ортогональным по всем остальным собственным векторам). Разлагал вектор у0 — и1 — и0 по базису у0 = ΟχΖχ + ... + cnz„, ci = (ΐΛ^ι), и предполагая сх φ 0, ввиду очевидного равенства уп — ип+1 - ип — Впу° = Χ^οχΖχ + ... + X^c^z^ будем иметь соотношение [\\nc\{zi,zi) + \lncl(z2,z2) ll/2 + .. Il»-l!|a [A^-1»cf(,b,1)+A^-1)ci(,2,z2) + ...]1/2 'λ,2 = λ! -чр- Отсюда получаем, что при сделанных предположениях рп —> 0 для η —»> оо, а если для какого-то η и достаточно малой величины δ имеем
§ 6.2. Метод простой итерации (Якоби) 255 |Ρη-ρ«-ι|<*, (6-8) то можно положить рп « ρ — λι· Апостериорное определение коэффициента подавления ошибки р, помимо оценки погрешности по формуле (6.7), имеет еще и другое важное практическое применение - повышение точности итерационного приближения. Оно основывается на разложении по базису векторов ошибок ζ° = и - ип ~ αιζι + ...·+- αηζη, zn = вп2о = ληαιΖι + _ _ _ + A^ajv^iv- Отсюда аналогично предыдущему при достаточно больших η и αϊ = (ζ°,ζι) ^ 0 справедливо представление ζη = λ>1ζ1[ΐ + θ(^|)] πλκχ^ что позволяет записать ζη+1 = λ"ζη + εη, где εη ~ некоторый вектор с нормой порядка 0 ( ^£ J. Далее из соотношений и — ип + zn, гл = un+1 + λιζη + εη после исключения вектора ζη получаем выражение η-~Ύ^χΤ + ϊ~χ;' (6·9) Таким образом, если выполняется неравенство (6.8) при некотором достаточно малом J, то последним членом в (6.9) можно пренебречь и вектор ΰη+1 = ~^— {un+x - ρητζη) (6.10) 1 - Ρη будет уточненным по сравнению с и71^1 приближением к искомому решению. При желании итерационный процесс можно продолжить, и в этом случае описанный прием фактически служит для ускорения сходимости итерационного процесса. В литературе реализация формул (6.8), (6.10) называется ускорением Люстерника. § 6.2. Метод простой итерации (Якоби) Для матрицы общего вида А — {а*,г}, но с ненулевыми диагональными элементами а*.^, простейший метод Якоби заключается в проведении итераций по формуле
256 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ v>k = (Л _ aktiv% - ... - Ofe.ft+iuJ"! - afe^+iu^ - ... - ajfe^u^"1)/^^. (6.11) Если I? — diagl^} - диагональная часть матрицы АтС — A — D — —L — С/ - внедиагональная, то векторно-матричная запись (6.11) имеет вид ип = D~l(f - Cunl) - ZT^/ + Lun л + ЕТи""1). (6.12) Отсюда каноническая форма метода Якоби определяется как D{un-un-x)^f~Aun'\ т. е. в данном случае предобуславливающая матрица равна К — D. Для сеточных пятиточечных уравнений вида (3.18) это означает пересчет значений сеточной функции в узлах по формуле <з = (Λ.ί + Οί,,-^-ίί + bUUiJ±i + ciJ<+lj + *.i<7+i)/e<Ji < = 1,...,/; jf = 1,..., J, в силу чего такой вариант называется поточечным, или явным, методом Якоби. Если же D - не диагональная, а блочно-диагональная часть матрицы АиС = A- D, то формула (6.12) определяет итерационный процесс, который называется блочным, или неявным, методом Якоби. Определяя D — diag{-Dj}, где диагональные блоки Dj суть трехдиа- гональные матрицы Dj = {... — altj, e^j, —Cxj ...}, получаем алгоритм в форме -aiju^j + bijulj - сии^ - /м + bitju?jlx + dijttjT^. (6.13) Реализация каждой итерации такого неявного алгоритма требует выполнения прогонок по горизонтальным линиям сетки. Определяя блочно-диагональную матрицу по-другому: D — diag{Z>i}, где D{ — {... - bij, eij, —dij ...}, получим аналогичный (6.13) метод, в котором необходимо проводить прогонки вдоль вертикальных линий сетки. Очевидно, что если матрица А - положительного типа, то прогонки в блочных методах Якоби будут корректны. Матрица перехода Якоби имеет вид В = —D~XC — Ε ~ D~XA, и ее спектральные свойства определяют полностью сходимость итераций. Важное и конструктивное значение имеет следующая простая теорема, условия которой легко и непосредственно проверяются.
§ 6.2. Метод простой итерации (Якоби) 257 Теорема 6.3. Если матрица A — D + C неразложима и обладает свойством диагонального преобладания, то метод Якоби (6.12) сходится. Доказательство этого утверждения подкупает краткостью и изящностью. Пусть какое-то собственное число матрицы перехода В = —D~lC удовлетворяет неравенству |λ| > 1. Согласно определению оно должно быть корнем характеристического уравнения \D~lC+ХЕ\ = О, следствием которого является равенство \XD + С| = 0. (6.14) Однако при |λ| > 1 матрица XD + Св силу условий теоремы является неразложимой и обладает свойством диагонального преобладания. Следовательно, согласно теореме Тауски она невырожденна и равенство нулю ее определителя (6.14) не может иметь места. Отсюда остается противное - |λ| < 1, что и требуется доказать. Π Теоремой 6.3 охватывается важный для разностных методов класс систем уравнений положительного типа, не обязательно симметричных. Следующее утверждение обосновывает метод Якоби уже для другого множества матриц. Теорема 6.4. Если матрица A — D + C симметрична, а матрица D ~ симметрична и положительно определена, то для сходимости метода Якоби (6.12) необходимо и достаточно, чтобы матрицы А и 2D — А = D — С были положительно-определенными. Действительно, в этом случае спектр матрицы D~lA вещественный. Поэтому для сходимости процесса необходимо и достаточно, чтобы все собственные числа матрицы D~XA — Ε — (Ε — D~lA) заключались в интервале (0,2), т. е. чтобы собственные значения матриц D~lA и 2Е — D~lA были положительны. Но по лемме 3.7 это равносильно положительности спектра, а следовательно, и положительной определенности симметричных матриц А и 2D — A. D Обоснование сходимости метода Якоби легко проводится еще для одного класса матриц, не совпадающего с рассмотренными выше. Это монотонные матрицы такие, для которых представление вида А = D — (—С) является слабо регулярным разложением, т. е. матрица D~~XC неотрицательна (см. определение 3.10). Теорема 6.5. Если матрица А монотонная и равенство А — D - {-С) есть слабо регулярное разложение, то метод Якоби (6.12) сходится. Данное утверждение является прямым следствием теоремы Варги. Его можно также усилить: при -одинаковой нумерации узлов сетки
258 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ и неизвестных неявные (блочные) методы Якоби сходятся по крайней мере не медленнее явных. Это вытекает из неравенства (3.67) о сравнении спектральных радиусов для двух различных слабо регулярных разложений. Для модельной задачи, когда матрица А имеет собственные числа (6.1), явному методу Якоби соответствует в (6.12) диагональная матрица D = ~рЕ и для собственных чисел матрицы перехода имеем W*)l = 1 4 рл (А) <Р -£ (6.15) Отсюда при h <g! 1 для асимптотической скорости сходимости получаем К2 R^ (6.16) Для блочного метода Якоби (6.12) в модельной задаче блочно- трехдиагональная матрица D = Αι 4- ^Е, где Αχ определяется в (3.20), имеет собственные числа AP(D) = ρ- ί 1 + 2 sin2 &), откуда получаем |λΜ(Β)| = 2Sin2g+sin2f l+2sin2^ < 1 - h\ Это дает для скорости сходимости величину R^h2, (6.17) (6.18) вдвое большую, чем для поточечного метода Якоби. Общее в оценках (6.16), (6.18) то, что число итераций η (ε) пропорционально h~2, т. е. растет квадратично с уменьшением шага сетки. § 6.3. Методы Зейделя и последовательной верхней релаксации Для матрицы общего вида метод Зейделя в простейшем варианте можно определить как модификацию метода Якоби (6.11), основанную только на том, что при пересчете fc-й компоненты очередного итерационного приближения для предыдущих компонент берутся уже новые, а не старые значения:
§ 6.3. Методы Зейделя и последовательной верхней релаксации 259 ик = (Л - α*,ι«ι - · · · - ak,k-iUk-i ~ Ofc,*+iWfc+i - ан^и^/ан^ (6.19) При этом предполагается, что на каждой итерации пересчет компонент производится в одинаковой последовательности, определяемой их нумерацией. Естественно, нумерацию можно брать произвольную, но при этом будет меняться и сам алгоритм. В этом состоит принципиальное отличие методов Зейделя и Якоби, так как для последнего порядок безразличен - в любом случае итерационные приближения и сам алгоритм не меняются. Векторно-матричная запись метода Зейделя имеет вид ип - D~l{f + Lun + Uu"-1), (6.20) откуда следуют обе канонические формы итерационного процесса: и» = {D - Q-4UU»-* + f), (D - L)(un - и*1'1) - / - Аип~~\ К ' } Таким образом, матрица перехода и предобуславливающая матрицы записываются соответственно как B = {D~ L)~XU, Κ^Ό-L. (6.22) В формулах (6.20)-(6.22) при определении диагональной матрицы D ~ diag(i4), соответствующей алгоритму (6.19), формулируется простейший - явный - метод Зейделя. Если же D определить как блочно- диагональную матрицу, а это можно сделать различными способами, то мы получаем тот или другой вариант блочного (неявного) метода Зейделя. Для пятиточечных систем уравнений при построчной упорядоченности узлов явный метод Зейделя определяется формулой <i = (hj + *i,jVi-ij + bij<i-i + CiX+u + dijuljlJ/eij, 1 = 1,...,/; j = 1,..., J. Блочный же метод Зейделя, аналогичный неявному алгоритму Якоби (6.12), имеет вид -<Х.Х-и + е*Х; - с^зиЬ = fid + bi.Xj-1 + diJuZili' (6*24) Оба алгоритма - явный и неявный - можно записать в единообразной блочной форме
260 ГЛ. б. ИТЕРАЦИОННЫЕ МЕТОДЫ Dkut = Д + Lku^x + ики%~1 * = !,...,#. Различие заключается только в определении подвекторов и% и матриц Dk, Lkj Uk- Если их определить в соответствии с формулами (3.24), (3.26), то u£ = {и£ : г — 1,...,/} есть совокупность значений сеточной функции на fc-й строке сетки и мы получаем блочный метод (6.24). А поточечный метод (6.23) получается при определении и% как совокупности значений функции на к-п диагонали сетки (г -f- j — 1 = fc); матрицы Dk — diag{ej(J·} при этом диагональные, a L*. = {o>ij, £>t,j} и Uk = {ci,j, rfl)<?·} - двух диагональные. Теорема 6.6. Если матрица А — D — L — U монотонная, а представление A — K — U является слабо регулярным разложением, то метод Зейделя (6.20) сходится. Как и теорема 6.5 для метода Якоби, данное утверждение является непосредственным следствием теоремы Варги. Аналогично также из неравенства (3.67) о сравнении двух различных слабо регулярных разложений вытекает, что при одинаковой нумерации компонент неизвестного вектора неявные методы Зейделя сходятся по крайней мере не медленнее, чем явные (установить более сильный факт из сделанных "мягких" предположений нельзя). Представляет интерес вопрос о сравнительной эффективности методов Зейделя и Якоби. Решить его можно далеко не всегда, и мы приведем результат только для одного частного, но важного случая. Теорема 6.7. Если матрица А - положительного типа, то метод Зейделя (6.20) сходится, причем его матрица перехода имеет спектральный радиус меньше, чем в методе Якоби (6.12). Сам факт о сходимости обоих методов можно не доказывать, поскольку данный класс матриц является частным случаем рассмотренных в теоремах 6.5 и δ.6. Мы ограничимся сравнением спектральных радиусов матриц перехода для методов Якоби и Зейделя, которые в условиях нашей теоремы являются, как легко проверить, неотрицательными матрицами. Пусть μ - максимальное по модулю собственное число матрицы перехода метода Зейделя, χ - соответствующий собственный вектор: (D - LyxUx = μχ, (6.25) a v и у - максимальное по модулю собственное число и соответствующий собственный вектор матрицы перехода метода Якоби: D^iL + Ufy^vy. (6.26)
§ 6,3. Методы Зейделя и последовательной верхней релаксации 261 Так как обе матрицы перехода неотрицательные, то в силу теоремы Фробениуса 3.9 величины μ и и больше нуля, векторы ж, у строго положительные, а с учетом еще и теорем 6.5, 6.6 справедливы неравенства 0 < μ, ν < 1. Из соотношения (6.25) простыми преобразованиями можно получить равенство Ό~1(μΣ-^ΙΙ)χ = μχ, которое означает, что μ является максимальным по модулю собственным числом неотрицательной матрицы Β(μ) = Ό~1(μΣ + U). Это следует опять же из теоремы Фробениуса, так как у нее не может существовать второго строго положительного собственного вектора. Далее, из (6.26) следует, что и является спектральным радиусом матрицы В(1). А так как μ < 1 и D~1L φ 0, то из следствия (3.68) теоремы 3.9 получаем требуемое неравенство 0 < μ < ν. Π Количественное сравнение скоростей сходимости итераций для методов Якоби и Зейделя мы проведем позже, предварительно обобщив последний алгоритм. В левой части формулы (6.20) вектор ип будем считать промежуточным (переобозначим его через йп), а за новое приближение берем его линейную комбинацию с предыдущей итерации: ип = П~г(/ + Lun + Uun~x), un = ωηη + (1 - α;)^"1, (6.27) где ω - итерационный параметр, который по причинам, проясняемым позже, называется релаксационным. Если ω > 1, то алгоритм называется методом последовательной верхней релаксации, а при ω < 1 - нижней релаксации. Поскольку для систем линейных уравнений в подавляющем числе случаев используется именно верхняя релаксация, то в мировой литературе прочно вошла в обиход аббревиатура SOR-метод, от английского Successive Over Relaxation. Формулы (6.27) можно после исключения йп объединить в одну - ип = ωΌ~χ{ί + Lun + Unn~l) + (1 - ч>)ип~\ (6.28) из чего следует, что матрица перехода в данном случае имеет вид Β{ω) = {D- ωΙ)~ι[{1 - ω)Ό + wU), (6.29) а предобуславливающая матрица записывается как Κ(ω) = D-u>L. (6.30) Исследование методов последовательной верхней релаксации мы начнем с простейших явных алгоритмов.
262 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Теорема 6.8. Если матрица А симметрична и положительно определена, то при О < ω < 2 метод последовательной верхней релаксации сходится; если диагональные элементы матрицы А положительны, то ее положительная определенность является необходимым условием сходимости (для тех же значений ω). Доказательство. Запишем сначала для матрицы А — {α&(ί} общего вида алгоритм в следующей форме: ик = (fk - ak}iUi - ... - Ofcjfe-ittJ^! - afc^+itij+i - ... -akiNu%) + (I - u>)u%-\ fc = l,...,JNT. (6.31) Далее рассмотрим другую интерпретацию этого метода. Обозначим через й вектор со значениями компонент и™,..., t*5J_1, wj"1, ω£~^,..., гг^-1, а через й - новый вектор, отличающийся от предыдущего только значением fc-й компоненты, которая пересчитана в соответствии с (6.31). Переход от и к й будем считать "микроитерацией" данного процесса, для которой можно записать „ . rk _ А fk _ и = и + ω е^, г = ζ — a; β&, где введены обозначения векторов невязки и ошибок z-u-щ ζ-и-и, fk = fb~(Au)k, а efc есть орт с единичной к~й компонентой. Проанализируем изменение за одну "микроитерацию'' так называемого функционала ошибки: 2 (Αζ,ζ) = (Αζ,ζ) -2u)-^-{Az,ek) + и) — (Аёк,ёк) о>к,к акук г2 = (Αζ,ζ) - 2ω(2 - ω)—*-. (6.32) В проведенных преобразованиях использовано свойство симметрии матрицы А, а также очевидное соотношение (Az)k — fk. Так как у положительно определенной матрицы диагональные элементы акук положительны, то при 0 < ω < 2, как видно из (6.32), функционал ошибки за один шаг по крайней мере не возрастает (и строго убывает при тк φ 0). Из-за этого свойства уменьшения (релаксации) функционала и происходит наименование метода как релаксационного.
§ 6,3. Методы Зейделя и последовательной верхней релаксации 263 Итерационный процесс в целом можно рассматривать как циклическое повторение для всех к = 1,..., N на каждой итерации пересчетов компонент и^ по формуле (6.31). При этом совокупность получаемых значений (Αζ,ζ) образует невозрастающую ограниченную снизу (нулем) последовательность. Следовательно, она является сходящейся, а это может означать только г& —> 0 при всех &, что завершает доказательство первой части теоремы. Необходимость положительной определенности при a,k,k > 0 и ω{2 — ω) > О доказывается от противного. При отсутствии положительной определенности матрицы А найдется вектор начальной ошибки ζ° такой, что функционал ошибки (Αζ°,ζ°) будет отрицателен (для этого в качестве нулевой итерации надо взять вектор и0 = и — ζ°). В этом случае из (6.32) видно, что последовательность функционалов (Αζ,ζ) является неубывающей, а это и означает отсутствие сходимости (как мы отмечали выше, если последовательность ип сходится, то ее предельный вектор и* является точным решением, но тогда мы получили бы (Αζ*,ζ*) = 0, ζ* = и — и*, что противоречит предыдущему). Π С теоретической и практической точек зрения главный вопрос в методах последовательной верхней релаксации состоит в нахождении наилучшего значения итерационного параметра ω и определении соответствующей скорости сходимости итераций. Теорема 6.8 ответа здесь дать не может, а решить полностью проблему оптимизации алгоритма удается для симметричных положительно определенных матриц с блочно-трехдиагональной структурой вида (3.25), когда система представляется уравнениями (3.27). В блочно-компонентной форме метод при этом записывается как «Ϊ - ωΌ? (Lfctd + <;ί) + (1 - ωΧ"1, (6.33) Напомним, что данная формула описывает как явные алгоритмы, так и неявные, в зависимости от определения подвекторов и% и матриц Dk, Lk, Uk (в соответствии с приведенным выше представлением метода Зейделя). Собственные числа μ матрицы перехода (6.29) удовлетворяют характеристическому уравнению \В — μΕ\ — 0, которое при невырожденности D — шЬ эквивалентно равенству |(1 - ω)Ό + ωϋ ~.μ{Β - wL)\ = 0.
264 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Разделив это соотношение на ω и приведя подобные, перепишем полученный многочлен от μ в следующем виде: 4(μ) = \0(μ)\ Ξ -μΏ2 gD2 -U2 -μΏΝ gDN 0, (6.34) где введено обозначение 9 = μ + ω — 1 ω Исследование корней многочлена из (6.34) удобно проводить путем использования характеристического уравнения для соответствующего метода Якоби \D~l(L + U) — ХЕ\ = 0, которое может быть приведено к форме \РМ\ -L2 XD2 0 ~u2 -LN \Dn = 0. (6.35) Дальнейший анализ основывается на замечательном свойстве блочно- трехдиагональных матриц (для "обычных" трехдиагональных матриц оно уже отмечалось в п. 3.1.1, см. (3.14)): определитель такой матрицы не изменяется, если все ее наддиагональные блоки умножить на какое- то число, а поддиагональные - разделить на это же число. Объясняется это тем, что такой переход от исходной матрицы к новой является преобразованием подобия, а подобные матрицы имеют одинаковые определители. В применении к матрице С?(μ) из (6.34) это позволяет написать (}(μ) = Τ-^(μ)Τ, (6.36) где новая блочно-трехдиагональная матрица имеет вид
§ 6.3. Методы Зейделя и последовательной верхней релаксации 265 gDx -y/jiUi 0(μ)^ ■у/ЦЬ2 gD2 -у/Щ1г О О ~^/flLN gDN а преобразование подобия осуществляется диагональной блочно-скалярной матрицей Д/2 В?- О μιί2Ε2 О ^/2д 7V где Ε1** суть единичные матрицы того же порядка, что и соответствующие Dk. _ В свою очередь, вид матрицы (}(μ) позволяет записать «ω = ^РШ ,/μ> (6.37) Отсюда следует, что любой корень μ^{ω) характеристического уравнения (6.34) удовлетворяет уравнению μϊ+ω—1 ω,/μΐ = Aif (6.38) где Х{ - соответствующий корень уравнения (6.35), т. е. собственное число матрицы перехода метода Якоби. В частности, из (6.38) при ω — 1 мы получаем явное выражение для собственных чисел матрицы перехода метода Зейделя: Mi(l) = Af. (6.39) При ω φ 1 каждому корню \{ многочлена Ρ (λ) соответствуют значения μ*, определяемые из решения уравнения (6.38): λ/βϊ = ш\г ± у/ш2\? - 4(ω - 1) (6.40) Нашей целью сейчас являются нахождение величины спектрального радиуса матрицы В (ω) и минимизация его по ω:
266 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ ро = minmax{|^j|}. ш г Предварительно сделаем предположение, что для рассматриваемой матрицы метод Якоби сходится, т. е. |λ^| < 1 при всех г. Анализ выражения (6.40) свидетельствует, что при выполнении неравенств 2 0 < ω < == = ω< > 1 (6.41) ~ 1 + jl- Χ2 корни многочлена Q(/x) будут вещественными, причем максимальный по модулю корень есть Μ = ω|λ(| + ^\\ - 4(ω - 1). (6.42) Если Ш{ < ω < 2, то исследуемые корни комплексны, а их модули все одинаковы, не зависят от λ и равны ω — 1. Дифференцируя правую часть (6.40) по ω, получаем dyJJTj _ 1 1 - λίΛ/μΐ άω 2 уДГ{ — ωλΐ/2 Отсюда видно, что для положительных Х{ при возрастании ω от единицы величины у/Щ при каждом фиксированном Aj убывают до тех пор, пока y/μϊ > **у*·, т. е. когда величина под знаком корня в (6.40) является положительной. При ω = ω» уравнение (6.38) имеет двойной корень μι — ω-ι — 1. Общий характер зависимости корней μι от ω при некотором фиксированном \i изображен на рис. 17 кривой третьего порядка (μ{+ω~1)2 -ω2 - λ?μ* -0, которая имеет двойную точку при μι = 1, ω = 0, выпуклую петлю в полосе 0 < ω < Ш{ и касается прямой μι = 0 при ω — 1 и прямой ω =■ μι при μι = Шг — 1. Как следует из (6.42), при отрицательных Aj график имеет совершенно аналогичный вид. График большего модуля из двух существующих при заданном значении А^ корней изображен на рис. 17 сплошной линией. Видно то, что уже получено в предшествующем анализе: величина |μί(ω)| является минимальной при определенном в (6.41) значении ω — ш%: μ^) = ^-ι^Ί—7Γ=.
§ 6.3. Методы Зейделя и последовательной верхней релаксации μ 267 Рис. 17. Характер зависимости собственных чисел матрицы перехода последовательной верхней релаксации Отсюда уже следует, что "минимальный по ω" спектральный радиус ро = maxi{|^i|} будет соответствовать максимальному собственному числу матрицы Якоби λχ = max{|Ai|} и определяется выражением ро ~ ω0 ~1 - ^ λ? ΐ + ^ΓΤλ* При этом оптимальное значение релаксационного параметра есть 2 ш0 (6.43) Ι + χ/ϊ^λ! (6.44) Полученный результат достоин формулировки в виде теоремы. Теорема 6.9 (Янга-Франкела). Если матрица А симметрична, положительно определена и является блочно-трехдиагональной, то в методе последовательной верхней релаксации (6.33) оптимальное значение итерационного параметра определяется выражением (6.44)} а коэффициент подавления ошибки при этом равен ро из (6.43), где λχ < 1 - спектральный радиус соответствующей матрицы перехода метода Якоби (при этом предполагается |λι| < 1). Теперь можно провести сравнение эффективности методов оптимальной последовательной верхней релаксации, Зейделя и Якоби. Во- первых, из (6.39) следует, что коэффициент подавления ошибки метода Зейделя имеет вид р.=тж{\н{1)\} = \1 (6.45) г Пусть теперь для решения некоторой системы уравнений имеется плохо сходящийся метод Якоби
268 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ λι = 1-<$, ί«1, (6.46) что дает для него оценку скорости сходимости итерации R « δ, (6.47) Тогда из (6.45) следует, что при решении этой системы методом Зейделя выражения для коэффициента подавления ошибки и скорости сходимости итераций имеют вид ра*1- 25, Ra « 2J, (6.48) т.е. число итераций по сравнению с методом Якоби сокращается (асимптотически) вдвое. В частности, для модельной задачи при h << 1 характеристики явного и неявного методов Зейделя имеют следующий вид: р8 « 1 - /ι2, R8 « /ι2, р.ь « 1 - 2й2, Д,ь « 2/ι2, (6.49) т. е. в блочном алгоритме требуемое число итераций вдвое меньше чем в поточечном. А для последовательной верхней релаксации оптимальное значение итерационного параметра, коэффициент подавления ошибки и скорости сходимости равны: в явном алгоритме 2 ω0π—— po«l-2h, #0~2й, 1 + Λ в неявном uJob ft* ^, , pobwl-2V2fc, Яоьи2л/2Л. (6.51) 1 + ν 2ft Принципиально новым моментом в последних результатах является линейная пропорциональность числа итераций η величине ft-1, в отличие от квадратичной зависимости для методов Якоби и Зейделя. Стоит также заметить, что повышение скорости сходимости итераций на порядок в методах оптимальной последовательной верхней релаксации сопровождается сглаживанием различия в эффективности между поточечными и блочными методами (числа итераций отличаются уже не в 2, а только в у/2 раз). В заключение параграфа сделаем несколько замечаний практического характера. Речь пойдет о том, тсак в реальном вычислительном (6.50)
§ 6.4· Метод чебышевского ускорения 269 эксперименте искать оптимальное значение релаксационного параметра ω0. Как видно из рис. 17, значение коэффициента подавления ошибки в окрестности "оптимальности" достаточно чувствительно к изменению ω, особенно в сторону его уменьшения. А формула (6.44) выражает ljq через величину λ ι - коэффициент подавления ошибки метода Якоби, которая априори, как правило, трудно определима. Выручает здесь возможность апостериорного определения значения λι в процессе проведения итераций, как в § 6.1 при описании ускорения Люстерника. При этом оказывается удобным использовать в качестве вспомогательного алгоритма не метод Якоби, а метод Зейделя, поскольку на основании соотношения (6.45) можно записать "0=1 + Λ/21-ρ,· В таком случае легко реализуется следующий алгоритм автоматического выбора итерационного параметра: сначала в методе последовательной верхней релаксации проводятся итерации при значении ω = 1 и на каждой вычисляется значение а также проверяется условие № - Р7~1\ < ει (6-54) при некоторой заданной малой величине εχ\ когда неравенство (6.54) выполняется, величина />£, принимается за приближенное значение рв, после чего по формуле (6.52) определяется ωρ, используемое в последующих итерациях. Рассмотренный алгоритм достаточно успешно используется на практике. Отметим, что предварительные итерации по методу Зейделя тоже "не пропадают", а служат для получения достаточно приемлемого начального приближения для "квазиоптимальной" релаксации. § 6.4. Метод чебышевского ускорения Большой класс наиболее распространенных итерационных процессов можно определить его двумя характеристиками: видом предобуела- вливающей матрицы в канонической форме (6.3) (или матрицы перехода в (6.2), причем в обоих случаях рассматриваются "стационарные" матрицы Вп = £?, Кп = К) и способом ускорения сходимости. (6.52) (6.53)
270 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Один из приемов ~ ускорение Люстерника - мы уже рассмотрели в § 6.1, а сейчас остановимся на подходе, который в общем виде можно было бы назвать спектральным методом, так как он основан на анализе спектральных свойств участвующих в итерационном процессе матриц. Начнем с простейшего примера - тривиального обобщения алгоритма (6.3) путем формального введения итерационного параметра т: К{ип - и"1'1) = т(/ - Аи71'1). (6.55) Разделив обе части этого соотношения на т, можно было бы свести вопрос к введению новой предобуславливающей матрицы \К, но оказывается удобным провести исследование влияния параметра отдельно. Для вектора ошибки zn из (6.55) следует соотношение ζη = (Ε - τΚ~1Α)ζη~Κ (6.56) Пусть матрица К~ХА имеет базис из ортогональных собственных векторов Х£, k — 1,...,JV, а соответствующие собственные числа А& вещественные и удовлетворяют неравенствам 0 < т < \{К~гА) < М. (6.57) Разложив вектор начальной ошибки по базису zb ~ βχΧι 4- ... -f cn%n, ck — (2°)#&), из равенства (6.56) получаем ζ11 — ci[P(Ai)]nxi + ... + c;v[P(Ajv)]na;jv, где введен в рассмотрение многочлен первого порядка Р(А) = 1 — τλ, имеющий величину г в качестве параметра и обладающий свойством Р(0) = 1. Очевидно, что каждая гармоника вектора ошибки за одну итерацию умножается на коэффициент Р(А^). Поставим задачу оптимизации итерационного процесса (6.55) следующим образом: найти значение τ такое, чтобы максимальная из величин |P(Ajb)| была минимальна. Другими словами, это означает оптимизацию параметра г по условию минимума коэфициента подавления ошибки: ρ — minmax{|l — rAfc|}. (6.58) г k Решение минимаксной задачи проще всего представить графически. На рис. 18 изображен график линейной функции Р(А), наклон которой определяется значением т. Из него, в частности, следует, что итерации будут сходиться, т. е. |Р(А*)| < 1 для всех fc, если итерационный параметр удовлетворяет неравенствам -
§ 6.4- Метод чебышевского ускорения 271 Рис. 18. График функции подавления компонент ошибки в методе Ричардсона 0<т < М' (6.59) Очевидно, что максимум модуля прямой 1 — тА достигается или на левом, или на правом конце интервала [771, M], а оптимальным значением г = tq будет такое, при котором эти модули совпадают, Отсюда получаем уравнение 1 — т^т = — (1 — тоМ), решение которого дает значение параметра 2 то - га 4-М' (6.60) М—т Соответствующий коэффициент подавления ошибки ρ = ^~ В частности, для плохо обусловленных матриц КгА, представляющих главный объект теории итерационных методов, ^<1и «то Отсюда скорость сходимости итераций оказывается т R: 'М* (6.61) (6.62) а это означает, что количество итераций п(е) будет прямо пропорционально числу обусловленности матрицы К~1А. Рассмотренный итерационный процесс называется методом Ричардсона, а приведенные результаты мы резюмируем в форме теоремы, Теорема 6,10, Итерационный метод Ричардсона (6.55) при выполнении условий (6.57) на собственные числа сходится, если параметр τ удовлетворяет неравенствам (6.59). При оптимальном значении итерационного параметра (6.60) коэффициент подавления ошибки определяется соотношением (6.61)..
272 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Замечание 6.1. Если строго следовать хронологии, то метод (6.55) надо назвать методом Ричардсона с предобуславливанием, так как в исходном варианте его автора рассматривался простейший случай К = Е. Из проведенного анализа видны роль и необходимые качества предобуслаливающей матрицы. Во-первых, она должна быть легко обратима - точнее говоря, должна просто решаться вспомогательная система Kwn ~ rn_1, из которой уже вычисляется очередное приближение ип — iin_1 + rwn. Во-вторых, она должна по возможности минимизировать число обусловленности матрицы К~х А, т. е. отношение ^ в (6.62) желательно сделать как можно больше. Перейдем теперь к главной цели данного исследования - обобщению метода Ричардсона, использующего не постоянный итерационный параметр, а различные его значения на разных шагах: К{ип - un~x) = тп(/ - Ап~1). (6.63) В этом случае для вектора ошибки справедливо соотношение zn = Pn(K~1A)z°i где Ρη(λ) означает многочлен η-го порядка Ρη(λ) = (1-τ1λ)...(1-τηλ)ι (6.64) удовлетворяющий при любых значениях параметров τχ,..., тп условию нормировки Р„(0) = 1. (6.65) Разложение вектора ошибки при этом имеет вид zn = CiPn(Xi)xx + ... + cNPn(XN)xN. Отсюда следует оценка для средней скорости сходимости итерационного процесса (6.63): 1 \\zn\\ 1 ib = -_fcH-Ji>--]nen> η \\ζΌ\\ η где введено обозначение εη = min { max {|Ρ„(λ)|}}. (6.66) Таким образом, вместо минимаксной задачи (6.58) мы пришли к ее обобщению: найти многочлен порядка η с условием нормировки (6.65), наименее отклоняющийся от нуля на заданном интервале (из (6.64)
§ 6.4· Метод чебышевского ускорения 273 очевидно, что величины т& равны обратным значениям корней полинома (6.64)). Счастливым образом оказалось, что решение этой современной задачи было получено еще в прошлом веке и находится оно с помощью многочленов Чебышева 1-го рода. Напомним, что такие полиномы п-го порядка определяются формулой Тп(у) = cos(narccos?/), имеют η различных корней (2&-1)тг , л , Ук = cos *—^—L-, к = 1,..., η, (6.67) и среди всех многочленов с коэффициентами 2П при старшем члене, наименее отклоняющемся от нуля на интервале [—1,1]. Чтобы обеспечить минимальность Рп(Х) на интервале [m, M] и условие (6.65) в нуле, достаточно просто использовать замену переменных и перенормировку многочлена, в результате чего получаем Τ ( M+m-2\\ ^ /хч "Л М~ТП ) Рп{х) = fM+ \ · <6·68) Τ ι Д^+уп ι Из анализа этого выражения и (6.67) следует, что корни Ρη(λ) определяются равенством М+т-2\к (2к-1)тг —:— - COS , Μ - m 2n откуда выводится формула для итерационных параметров: 1 2 Tfc^T- = ,„ 1W, k = l,...,n. (6.69) Afc м + m - (Μ - m) сов i^ii Таким образом, искомый оптимальный итерационный процесс мы построили, теперь главное - исследовать его скорость сходимости. Для этого вследствие (6.66) необходимо оценить равномерную норму многочлена Ρη(λ) на отрезке λ € [τη, Μ]. Поскольку аргумент многочлена в числителе правой части (6.68) не выходит из интервала [—1,1], то сам полином по модулю не превосходит единицы, и в итоге из определения εη в (6.66) получаем lknll 1 та<^п-—у—-χ. (6.70) Г (M±m\ Ln\M-mJ Так как с введением обозначения а = arccos x можно записать
274 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ 2Тп{х) =eina +е~Ыа = (cos α + isina)71 + (cos α - г sin α)η = (χ + \fx2 ~1)П+ (х~ \/я2-1)П, то после ввода еще одной величины 7 = м^-т полУчаем 2 £п = τ Г"~ Чп / чп- (6·71) Далее в силу легко проверяемых соотношений М + гп± у/гпМ (1±лД)2 m 7-1 7 /-Z 1VI -Τ ΠΙ 3= \7fllVl 1XVU c ± V7 "- 1 — 77 = —^ ?—) ° Μ-τη 1-δ ' Μ 7 + 1' выражение (6.71) можно привести к виду 2(1 - δ)η _ 2β /Uv^\« εη = (1 + v^)2n + (1 - Vi)2n /?2 + l' Vl-V^/ Если приравнять отношение ||2n|[/||z°|| к заданной малой величине еп, то значание β находится из решения квадратного уравнения β2 - -β + 1 = 0. Необходимый нам превосходящий единицу корень есть ε Отсюда получаем, что число итераций η(ε), необходимое для подавления начальной ошибки в ε"1 раз, оценивается неравенством η(£,<,„ί±^ΞΞ/1η(1±^) + Ι. (6.Τ2) Μ При ε < /, jg < 1 это выражение можно записать в виде *{*)< 5lbll>/cond(I) + l. (6.73) Для ε <§С 1 и плохо обусловленных матриц, т. е. S <С 1, отсюда получаем
§ 6-4· Метод чебышевского ускорения 275 п(е)ю2*/— |1ηε|, V т что для средней скорости сходимости дает (6.74) Таким образом, в сравнении с методом Ричардсона (ср. (6.74) и (6.62)) оптимизация последовательности итерационных параметров дает значительное повышение (на "полпорядка") скорости сходимости итераций. Рассмотренный алгоритм называется методом чебышевского ускорения, и полученный результат мы сформулируем в виде теоремы. Теорема 6.11. Для метода чебышевского ускорения (6.63), (6.69) скорость сходимости и необходимое число итераций оцениваются выражениями (6.72)-(6.74)· Замечание 6.2. Строго говоря, рассмотренный алгоритм надо называть методом чебышевского ускорения с предобусдавливанием. Очевидно, что желательные качества предобуславливающей матрицы те же, что и в методе Ричардсона: простая обратимость и малость числа обусловленности матрицы К"1 А. В дальнейшем мы рассмотрим некоторые итерационные алгоритмы с конкретными предобуславливающими матрицами и использованием чебышевского ускорения. К методу же последовательной верхней релаксации чебышевское ускорение неприменимо, так как соответствующая предобусдавливающая матрица несимметрична и матрица перехода имеет комплексный спектр. Простейший, или явный, метод чебышевского ускорения может быть построен с единичной предобуславливающей матрицей. Для него интересно привести результаты по модельной задаче при h <ζ Ι. Поскольку в этом случае δ & ~ ~-, то из (6.74) получаем Rtth, (6.75) т. е. скорость сходимости итераций в два раза хуже, чем у метода оптимальной последовательности верхней релаксации. А для явного метода Ричардсона из (6.62) следует R « ~, что приводит к тому же числу итераций, что и в простейшей методе Якоби. Чебышевское ускорение также легко применяется к канонической форме итерационного процесса (6.2) с представлением через матрицу перехода В. Записать такой алгоритм можно в форме
276 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ ип - τη(Βηη-χ + 9) + (1 ~ гп)ип"\ (6.76) Этот итерационный метод можно интерпретировать как применение обычного чебышевского ускорения, но только к решению системы (Е — В)и — #, эквивалентной исходной при невырожденности матрицы Е — В. Предполагая, что матрица В имеет базис из собственных векторов и вещественный спектр с границами α, β: а < Х(В) < /?, (6.77) мы можем для итерационного процесса (6.76) провести анализ, аналогичный предыдущему. В формулах (6.68)-(6.74) надо только положить m = 1 - 0, Af = 1 - α. (6.78) В частности, если относительно границ собственных чисел матрицы перехода предположить -а = β = 1 - ί, δ « 1, (6.79) то оценка скорости сходимости итераций (6.74) принимает вид Д„ к 2^^Ζ7. (6.80) Если же собственные числа В положительные, то, налагая вместо (6.79) условия -а = 0, β = 1 - ί, (6.81) получаем оценку Rn « 2уД примерно в у/2 раз лучшую, чем (6.80). Рассмотренный подход можно трактовать как чебышевское ускорение исходного сходящегося процесса ((6.76) при τη = 1). Однако при а < — 1 исходный алгоритм является расходящимся, и тем не менее его можно "заставить" сходиться. Наглядным примером удобного применения алгоритма (6.76) является чебышевское ускорение блочного метода Якоби (6.13). Поскольку в этом случае для модельной задачи спектральный радиус матрицы перехода В равен ρ « 1 — /ι2, то из (6.80) для скорости сходимости ускоренного процесса мы получаем R и ч/2/i, (6.82) что в \/2 лучше результата для поточечного метода чебышевского ускорения, но в два раза хуже оптимальной блочной релаксации.
§ 6.4· Метод чебышевского ускорения 277 Замечание 6.3. Проведенное исследование чебышевского ускорения пока является с практической точки зрения незавершенным^ так как предполагает заданным порядок полиномов, а он как раз априори неизвестен. В принципе из неравенства (6.72) при известных границах спектра можно оценить необходимое для заданной точности число итераций η(ε) и взять это значение в качестве порядка многочлена. Однако при наличии неточности в оценках величина η(ε) может оказаться существенно завышенной, а рассматриваемый процесс обладает тем неприятным качеством, что в нем "оптимальна" только последняя итерация т с номером п, так как промежуточные многочлены ]~[ (1 — τ*) при т < η в принципе никакими минимаксными свойствами не обладают (этого можно добиться частично путем специальной "внутренней" упорядоченности параметров т*., но такие вопросы мы опускаем, ограничиваясь ссылками на работы [20, 27, 38]). По этой причине зачастую используют циклически повторяющуюся последовательность итерационных параметров с относительно небольшим периодом (порядка 10-20). Замечание 6.4. Последний момент связан еще с одним практическим аспектом чебышевского ускорения - устойчивостью алгоритма при реальных вычислениях. Дело в том, что "шум" от машинных округлений вносит возмущения в коэффициенты разложения вектора ошибки по собственному базису, и они могут достигать существенного уровня при больших порядках используемых многочленов. Последнее понятно из того, что1 в этом случае множитель подавления одной р-й гармоники т погрешности Рт(Хр) — Π (^ ~ τ*λρ) при т — η будет очень мал в силу оптимальности многочлена Ρη(λ), но при тфп для некоторых λρ значение Ρτη(λρ) может достигать огромных значений. Теоретически это может привести к машинному переполненнию, но чаще всего приводит к нарушению приведенного выше для идеальной арифметики анализа. К счастью, проблема устойчивости чебышевского ускорения оказалась решена за счет выбора специальных переупорядоченностей параметров т*. (даже для больших порядков п) и эти вопросы исчерпывающе изложены в монографях [27, 38]. Замечание 6.5. Как и в оптимальной верхней релаксации, для метода чебышевского ускорения весьма актуальным является вопрос об автоматизации выбора итерационных параметров. Выше мы указывали на возможность априорной оценки порядка многочлена η в зависимости от заданной точности ε, но только при известных границах
278 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ спектра m, M. Если максимальное по модулю собственное число можно достаточно точно и просто оценить по равномерной норме матрицы, то с нахождением т дело обстоит труднее. Однако и его можно оценить по апостериорной информации, как это уже делалось в ускорении Люстерника. Если сначала выбрать постоянное значение параметра τ ед ^, то очевидно, что в процессе проведения итераций будем иметь ||цп-ц»-1|| откуда при достаточной близости соседних приближений можно вычислить т « (1 — рп)/т· Далее уже определяются значения т*. через корни чебышевских многочленов и процесс продолжается с "почти оптимальной" скоростью. Данный подход достаточно эффективен, так как чебышевское ускорение оказывается не очень критичным к неточности нахождения границ спектра. Апостериорное определение чебышевских параметров очень удобно осуществляется при ускорении уже сходящегося итерационного процесса в форме (6.76). При этом итерации начинаются с постоянным значением тп = 1, а после апостериорного определения коэффициента подавления ошибки рп ж 1 — δ величины m, M определяются по формулам (6.78), (6.79) (если заранее известно о положительности спектра матрицы перехода В, то "выгоднее" вместо (6.79) использовать соотношения (6.81)). § 6.5. Градиентные итерационные методы Альтернативными к спектральным методам являются алгоритмы ускорения итерационных процессов на основе выбора итерационных параметров из условия минимизации функционалов, определяющих точность текущих последовательных приближений. 6.5.1. Методы наискорейшего спуска. Одним из простейших примеров здесь может служить метод наискорейшего спуска, в котором каждая итерация реализуется по формуле ип - ип~х = тп(/ - Аи71"1), (6.83) а параметр тп определяется по условию минимума (при заданном векторе it"-1) так называемой функции ошибки
§ 6.5. Градиентные итерационные методы 279 Ф(«п) - (Azn,zn) = (Л-М.О- (6.84) Будем считать, что матрица Л является симметричной и положительно определенной, а ее спектр удовлетворяет условию 0 < т < Х(А) < М. Так как векторы ошибки zn = и—ип связаны между собой соотношением zn = (Ε — τηΑ)ζη~1, то для рассматриваемого функционала можно записать {Αζη,ζη) = (Αζη-\ζη-1)~2τη(Αζη~\Αζη~1)Λ·τ^(Αζη'~\Αζη'1) -(A~1rn-1,rn~1)-2rn(rn~1,rn-1)+r^(^rn-1,rn~1). Приравнивая производную по тп от правой части этого выражения нулю, получаем формулу для итерационного параметра (гп-1 гп~1\ тп = т^ f ί-. (6.85) Нетрудно убедиться, что выбор т„ в форме (6.85) обеспечивает его положительность и минимум функционала (6.84), для чего достаточно проверить знак его второй производной по тп. Положительный функционал Ф(ип) в силу этих же соображений за одну итерацию (6.83), (6.85) будет строго уменьшаться по сравнению с Ф(ип~1)7 поскольку г (гп~1 гп-1\2 Ί Ф(«п) = Ф(ип~х) 1 - ^ , V '' л } л ~г . (6.86) Очевидно, что для любых положительно определенных матриц Л, С справедливо неравенство 4(Вх,х)(Сх,х) < [(В + С)х,х]2 < (\\В\\2 + \\С\\2)Цх,х)2. Полагая здесь В = С-1 = ω А, при ω = Д-~ имеем VrnM 4(4ζ,*)(4-4ί0 < \J— + J£\ (x,x)\ (6.87) откуда для коэффициента подавления функционала в (6.86) получаем Ф(«") < рф(«»-1), P=£^J. (6-88) Μ + τη Так как Φ(ωη) = li^n||^ (см. определение Α-нормы в (3.43)), то величина ρ из (6.88) может рассматриваться как соответствующий коэффициент подавления ошибки. Если же вернуться к определению скорости сходимости итераций через обычную спектральную норму, то в силу неравенства 1К|2 < ^^щР2п пРи jfe « 1 мы будем иметь
280 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ γη Rn « 2—, (6.89) т. е. ту же величину, что и для стационарного метода Ричардсона с оптимальным значением итерационного параметра. Рассмотрим обобщение метода (6.83) с введением предобуславлива- ющей матрицы: К(ип - un~l) = rn(/ - An71"1). (6.90) Вводя новые векторы йп = К1/2^, f = K~l/2f и матрицу А = К~1/2АК~1/2, (6.91) итерационный процесс (6.90) представим в эквивалентной форме, не содержащей предобуславливающую матрицу: йп = ΰη~χ + τη(/ - Айп'1). (6.92) Если этот процесс сходится, то предельный вектор и является решением системы Ай = /, а искомое решение и равно К~х^2й. Если матрицы К, А симметричны и положительно определены, то матрица А, как конгруентная к А, тоже положительно определена. Кроме того, она подобна матрице К _1А, и относительно ее собственных чисел мы предполагаем 0 < m < Х(А) — \(К~1А) < М. Сформулируем метод наискорейшего спуска, определяя в (6.92) величину тп из условия минимума функционала Цйп) = (iin(5n) = (i-1f=n,fn), fn = K~1/2rn = f-Aun = Azn, ζη = ΰ-ΰη = Κ1/2ζη.(6.93) Проводя аналогичные выкладки, получаем вместо (6.85) формулу п (if»-1,*""1) (Aif-1^-1,^-1^-1)' K } Отсюда видно, что значения тп, как и ранее, будут положительны. Функционал Ф(йп) на каждой итерации строго убывает, так как для него, с точностью до обозначений, справедливы неравенства (6.86)- (6.88), надо только заменить А, тп на А, гп (напомним, что теперь га, Μ обозначают границы спектра матрицы К~1А). Из (6.93) следует, что
§6.5. Градиентные итерационные методы 281 Ф(йп) - (А'ггпщгп) = (Azn,zn) - Ф{ип), т.е. метод наискорейшего спуска с предобуславливанием минимизирует тот же функционал, что и предыдущий "обычный" вариант. Скорость сходимости, естественно, у них тоже одинаковая (с точностью до смысла величин m, M). Поскольку метод наискорейшего спуска с предобуславливанием включает "обычный" алгоритм как частный случай с К = Е, мы заключим проведенный в данном пункте анализ одной обобщающей теоремой. Теорема 6.12. Метод наискорейшего спуска с предобуславливанием (6.90), (6.94) пРи симметричности и положительной определенности матриц К, А сходится, причем справедливы оценки (6.88), (6.89)} где т и Μ - границы спектра матрицы К~ХА. 6.5*2. Методы минимальных невязок. В итерационном алгоритме (6.83) выбор итерационного параметра тп можно проводить из условия минимизации не (6.84), а какого-либо другого функционала. Естественно при этом рассмотреть функционал - квадрат евклидовой длины вектора невязки R(un) — (т*п,гп), который в отличие от (6.84) может быть вычислен на каждой итерации. Так как гп = (Е — тпЛ)гп_1, то после подстановки соотношения в R{un) получаем (гп,гп) = (г""1,г"'1) -2т„(Лгп-1>гп-1) +r^(Arn~\Arn~-1). Из равенства нулю производной по тп от правой части получаем формулу для итерационного параметра _ (Лг-У"-1) Tn-(Ar»^,Ar»-iy (6·95) При этом значении параметра изменение функционала за одну итерацию определяется выражением «*"·"> - с·""1·'""1'!1 - ^Χ,^Ρ'α^Ι («ч Вводя в рассмотрение новый вектор wn = Л1/2гп, коэффициент подавления функционала можно записать в виде Р (Л"1г(;п-1,'шп-1)(Л'Шп-1,гуп-1)* Видно, что он оценивается в точности так же, как и при выводе (6.88), откуда следует неравенство
282 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ (rV) < (^^) (г"-1,^-1). (6.97) Переходя к анализу подавления норм вектора ошибки, можем записать ll*nl|2 < м \\*°h - тР ' откуда для асимптотической скорости сходимости итераций метода минимальных невязок при плохой обуслозленности матрицы следует та же оценка, что и для метода наискорейшего спуска. Перейдем теперь к рассмотрению метода минимальных невязок с предобуславливанием 7 который записывается в форме (6.90), а после введения матрицы А из (6.91) и тех же векторов ΰη, /, что и выше, приводится к виду (6.92). Выбор параметра тп в данном случае будем проводить по условию минимума функционала (fn,fn)} что вместо (6.95) дает формулу n {Arn~\Afn-1) {Κ-^ΑΚ~χτ*-χ,ΑΚ-4η-χΥ l " ' При этом для изменения функционала (fn,fn) в процессе итерации справедливы и оценки (6.96)-(6.97) после введения в них величин fn, гйп, А вместо аналогичных переменных без знака "тильда" (соответственно т, Μ означают границы спектра матрицы К~ХА). Отметим, что минимизируемый функционал после приведения к исходным обозначениям имеет вид (fn}rn) — {К~1тп,гп), совпадающий с исходным в (гп, гп) только при К = Е. Мы заключаем этот пункт, как и предыдущий, одной теоремой о классе алгоритмов минимальных невязок, конкретизируемых матрицами К. Теорема 6.13. Метод минимальных невязок с предобуславливанием, определяемый формулами (6.90), (6.98), при положительной определенности матриц К, А сходится, причем имеют место неравенство (UTV\rn) < (^^У(яг1г«-1|Гп-1) v » / - \Af + m; v f и соотношение (6.89) для средней скорости сходимости итераций, где т, Μ ~ границы спектра матрицы К~ХА. Очевидно, что для модельной задачи при /ι<1 методы наискорейшего спуска и минимальных невязок (явные и неявные) имеют те же скорости сходимости, что и соответствующие методы Ричардсона.
§ 6.5. Графиентные итерационные методы 283 6.5.3. Методы сопряженных градиентов. Сравнение методов наискорейшего спуска и минимальных невязок с алгоритмами Ричардсона и чебышевского ускорения обнаруживает кажущийся парадокс: хотя первая группа и основана на минимизации функционалов с апостериорной оптимизацией параметров гп на каждой итерации, скорость сходимости у нее одинакова с методом Ричардсона, использующим постоянное значение параметра, и значительно уступает чебышевскому ускорению. Однако это противоречие легко объясняется тем, что оптимизация функционалов на каждой итерации только локальная, без учета поведения предыдущих приближений. Естественным развитием этого подхода является проведение "глобальной" оптимизации с заменой одношаговых в определенном смысле методов на многошаговые. На примере обобщения метода наискорейшего спуска (6.83), (6.85) проблема формулируется следующим образом: найти последовательность параметров τι,... ,тп такую, чтобы при заданном начальном приближении и0 функция ошибки Ф(ип) принимала минимально возможное значение. Эта задача изящно решается. Правда, алгоритм принимает более общую форму: новое приближение ищется не в виде ип = ип~1 — тпгп, вместо вектора невязки фигурирует некоторый другой вектор, который вычисляется через г71. К открытию нового метода независимо пришли М. Хестенес и Э. Штифель, но его официальной "презентацией" можно считать совместную работу авторов 1952 г. Алгоритм называется методом сопря- жемных градиентов, и смысл этого имени будет виден в дальнейшем из его функциональных свойств. К настоящему времени методы сопряженных градиентов получили большое развитие и представляют уже широкий класс итерационных процессов, но мы изложим "первозданный" алгоритм. Он не только имеет историческое значение, но и является отправной точкой для конструирования всевозможных обобщений. При описании данного метода мы выбираем "формальный" подход. Не останавливаясь на выводе самих формул из условия минимума функционала Φ(ωη), а выписывая окончательную форму алгоритма, исследуем все его необходимые нам свойства. Формулы "классического" метода сопряженных градиентов имеют следующий вид: (гп п\ и - и +ап^1Р , αη- {рП^АрПу
284 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ г« = гп~1 _ апг Арп-1^ рп=гп+ βη_ιρη-19 (6.99) (y.n>rn) Pn (г»-1,!·»"1)' С первого взгляда видна следующая особенность алгоритма: изменение, или коррекция, последовательных приближений происходит в направлении вспомогательных векторов рп, которые, в свою очередь, рассчитываются рекуррентным образом. Эти векторы можно назвать векторами направлений, или корректирующими векторами. Отметим еще один момент в приведенных формулах: определенные в них векторы гп связаны с ип легко проверяемым соотношением тп — / — Аип, т. е. являются векторами невязок. Однако использование последнего соотношения в процессе итераций не рекомендуется, так как при сходимости тп к нулю вычисления будут неизбежно связаны с вычитанием близких чисел, что ведет к потере точности из-за округлений. Исследование данного алгоритма начнем с установления ортогональных свойств векторов невязок гп и корректирующих векторов рп. При этом отметим предварительно тот очевидный факт, что если векторы r°,...,rn и р°,...,рп не нулевые, то коэффициенты αη, βη положительны. Напомним, что матрица А предполагается симметричной и положительно определенной. Теорема 6.14. Векторы невязоктп и корректирующих векторов рп, определяемые в (6.99), удовлетворяют следующим соотношениям: (гп,г*) = 0, η φ к, (6.100) (рп,Лр*)=0, η φ к, (6.101) m. е. векторы г°, г1,... взаимно ортогональны, а векторы р°, р1,... - взаимно А-ортогональны (взаимно сопряжены). Доказательство начнем с непосредственно вытекающего из формул для ρη, βη выражения корректирующего вектора через векторы невязок ί" = ^-^Σ^- » = 0,1,... (6.102) Все остальные утверждения получаются с помощью этого соотношения по индукции. Действительно, векторы г°, р° = г° и г1 приведенным соотношениям удовлетворяют, так как (rV) = (pV1) = (г°,г9) - α0(Λ Αρ°) = 0.
§ 6.5. Градиентные итерационные методы 285 Допустим теперь, что равенства (6.100)-(6.102) выполняются для векторов г°,... ,гп и р°,... ,рп~~1. Тогда непосредственно из (6.102) следует (r^pn)-(r^r")^^4^-(r■^r■?г), к<щ (6.103) так как под знаком суммы скалярные произведения в числителе отличны от нуля только при к — i, согласно сделанному предположению. Далее из выражения для вектора невязки в (6.99) получаем (r*+1,pn) = (r*,pn)-afc(V,Pn)· Отсюда и из (6.103) при к < η следует равенство (rn,rn) = (rn,rn)-ak(Apk,pn), которое вследствие положительности а*, подтверждает справедливость свойства (6.101). Теперь уже можно показать ортогональность вектора rn+1 ко всем предыдущим векторам невязок, если из формул (6.99) вывести непосредственное соотношение между rn+1 и г°: г »+ι - *° _ Л. л«° г° - а0Лр° - ... anAprt. (6.104) Ортогональность этого вектора к г° — р° очевидна в силу определения коэффициента «о- А для любого 0 < А; < η справедливо равенство (гп+1,гк) = (гп+1,рк -ft-ip*"1) = (г0,/) - a*(V,P*), -&- (^p*-1)-afc-i(V,-1,P*_1)]=0, так как из (6.103) следует (г°,рк) — (rk,rk). D Замечание 6.6. Соотношения (6-102) дают, в частности, равенство (rn,rn) = (rn,pn), поэтому для коэффициентов αη, βη метода сопряженных градиентов могут быть использованы эквивалентные формулы Рп ~ Л.п-1 ,п-1Г (6'105) п (jipn,pn)' нп (г»-1,?»-1)' Замечание 6.7. Формулы (6,99) естественно предполагают, что векторы направлений рп не равны нулю. Для обоснования корректности алгоритма надо показать, что это действительно так. Покажем, что равенство рп — 0 может быть только в случае гп — 0, т. е. когда приближение ип является точным решением алгебраической системы. Для этого рассмотрим скалярное произведение
286 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ (рп,Рп) = {тп + /3η-ιρ"-\ τη+βη-ΐΡη~ι) = {τη,τη)+2βη^(ρη-\τη)+βΙ^{ρη-\ρη"1). Так как для среднего слагаемого имеем (Pn-\rn) = {pn-\rn-1)-an-.1(Apn-\pn-1) = Q, с учетом формул (6.105) для ап отсюда вытекает неравенство (гп, гп) < (рп,рп), устанавливающее требуемый результат. Дальнейшим шагом будет установление вариационных свойств методов сопряженных градиентов, заключающихся в минимизации функционала, характеризующего величину погрешности текущего итерационного приближения. Сначала охарактеризуем геометрические особенности вычисляемых в процессе итераций векторов. Мы уже установили фактически, что векторы невязок rn, n ~ 0,1,..., JV — 1, образуют ортогональный базис в рассматриваемом Ν- мерном пространстве. То же самое можно сказать об -А-ортогональных векторах направлений р°,... ,рп. Эти факты означают, что вычисляемые по формулам (6.99) векторы τΝ, ρΝ могут быть только нулевыми, т. е. uN есть точное решение, а метод сопряженных градиентов обладает качествами прямого (безытерационного) агоритма, Обозначим через 5п(р°,... ,ρ""1) n-мерное подпространство, порожденное всевозможными линейными комбинациями векторов р°,... ,ρη_1 Рекуррентные соотношения для векторов гп, рп в (6.99) очевидным образом показывают, что каждый из них представляется линейной комбинацией векторов р°, Ар0,..., Ап~1р°. Нетрудно по индукции проверить обратное - что вектор Апр° выражается как линейная комбинация векторов р°,... ,рп (действительно, если Ап~1р° = μ0ρ° + ... + μη-ιρ71"1, то Апр° = А(Ап~гр°) = μο V-K · ·+μη-2^η~2 + ^(r·71"1 ~rn) € Sn(/,... ,pn)). А поскольку p° ~ r°, это можно записать в виде Sn(p°,.. .,ρ"-1) = Sn(p°, · · ·, ЛП~У) = S„(r°,..., Ап-*г°). (6.106) Подпространство вида 5n(r°,..., Ап~1г°) называется подпространством Крылова (порожденным вектором г° и положительно определенной матрицей А), Вектор последовательных приближений ип согласно своему определению в (6.99) может быть представлен в форме и11 = и0 + а0р° + ... cLn-ip"-1. (6.107)
§ 6.5. Градиентные итерационные методы 287 Следовательно, он принадлежит "сдвинутому" на вектор и0 подпространству Крылова 5П, состоящему из векторов вида ν = и0 + Х0р° + ... + Ап^р71"1, (6.108) где А& - произвольные числовые параметры (Sn назовем афинным подпространством Крылова). Теорема 6.15. Вектор ип7 определяемый методом сопряженных градиентов (6.99), минимизирует функционал Φ(ν) = (A~1r, r) — (Αζ,ζ), г — / — Αν = Αζ, ζ = и — νj в n-мерном афинном подпространстве Крылова Snj определяемом множеством векторов вида (6.108). Доказательство следует из того, что согласно представлению и - и0 - Σ ХъРк к=0 рассматриваемый функционал записывается в виде Ф(т;) = Ф(«°) - $>А*(р*,г°) - Xl(Pk, Ар% Это означает, что минимум Φ (ν) достигается при значениях (Рк,г°) Хк (Ар»,!*)' совпадающих с отд., так как для этих величин из (6.99) и (6.103) получается третья из возможных формул (Όη 0\ ап = /f ' V (6.109) Π Из свойства минимальности функции ошибки Ф(ип) несложно выводятся оценки погрешности метода сопряженных градиентов. Так как вследствие рассмотренных представлений для вектора ошибки ζη можно записать в виде ζη = ζ° - w° - ... - μ^Α^τ0 = [Ε-Α(μοΕ + μ1Α + ...+μη_1Αη1)]ζ0=Ρη(Α)ζ0, (6.110) где μκ - некоторые числовые коэффициенты, определяющие многочлен π-го порядка, то рассматриваемый функционал представим в форме
288 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Φ(ηη)^(Ρ^(Α)Αζ0,ζ0). (6.111) Поскольку метод сопряженных градиентов реализует оптимальный итерационный процесс в смысле уменьшения функционала Ф(ип) при заданной начальной ошибке ζ°, то из соотношения (6.111) могут быть выведены различные неравенства. С этой целью достаточно подобрать любой из многочленов с условием нормировки (необходимость его обуславливается определением Рп(А) в (6.110)) Рп(0) = 1, (6.112) для которого можно вывести удобную оценку нормы. В частности, из (6.111) следует неравенство *(«»)< тал. {Р„2(А)}Ф(Ы°), \£[тп,М] где га, М, как обычно, обозначают границы спектра матрицы А. Таким образом, выбирая Рп(Х) в виде многочленов Чебышева 1-го рода с условием нормировки (6.112), наименее отклоняющихся от нуля на интервале [m, M], мы можем показать, что метод сопряженных градиентов сходится не хуже, чем метод чебышевского ускорения. Повторяя технические выкладки по анализу свойств чебышевских полиномов из предыдущего параграфа, мы можем получить неравенство / 2ύη \ 1 - л/^ *(0 < (ϊ^ϊ)*^0), 7=]ПГЖ- (6Л13) ■тп/ ι + Отсюда следует, что для выполнения условия Ф(ип) < ε2Φ(ιχ°), 0 < ε < 1, (6.114) достаточно провести ι-νΤ - е 2 η(ε) < In /1п7 + 1 (6.115) итераций, что в асимптотическом случае ε << 1, -Ц « 1 дает приближенное равенство п{£)*^Ы21Ум- (6Л16) Если сделать дополнительное предположение
§ 6.5. Градиентные итерационные методы 289 О < Х(А) < 1, (6.117) что не является существенным ограничением и легко достигается нормировкой исходной системы уравнений, то для рассматриваемого функционала может быть выведено и другого типа неравенство. Пусть λ*, уь - собственные числа и ортогональные собственные векторы матрицы А. Разлагая начальную ошибку по базису, мы можем выписать равенство Ф(«») = f>AfcPn2(Afc)(*<V), с* = (z°,yk), из которого следует неравенство (Azn,zn) < max{AP*(A)}(z°,z°). (6.118) Вот здесь можно для вывода оценки выбрать многочлен Рп (А) вида *.<*) (2η + ι)Αι/> ' (6Ш> который обладает непосредственно проверяемыми свойствами Р„(0) - 1, АР2(Д) < (2n + I)2, A е [0,1]. (6.120) Отсюда и из (6.118) получаем неравенство (Л*П'^(ЁГ1Р (6л21> которое свидетельствует о быстром подавлении функционала ошибки на первых итерациях. Отметим такую особенность оценки (6.121): она не зависит от числа обусловленности матрицы А и справедлива даже при ее вырожденности. Условие нормировки системы (6.117) связано только с техникой анализа и на практике ему удовлетворять не требуется, так как умножение матрицы и правой части на какое-то число никак не скажется на вычисляемых последовательных приближениях метода сопряженных градиентов. Приведенные результаты мы сформулируем в виде общей теоремы. Теорема 6.16. Для метода сопряженных градиентов (6.99) справедливы оценки (6.113)~(6.116) и неравенство (6.121) (последнее действительно даже для положительно полу определенных матриц А).
290 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Из представления функционала ошибки (6.111) следует еще одно важное свойство итерационного процесса (6.99). Теорема 6.17. Если матрица А положительно определена и имеет т < N различных собственных значений, то метод сопряженных градиентов сходится не более чем за т итераций. Доказательство следует из того, что многочлен Рп(А) при η — τη с условием нормировки (6.112) может быть представлен в виде m m ^(λ) = π<λ*-λ)/Πλ*' где Xk - положительные собственные числа матрицы А. Кроме того, Рт(А) = 0, что легко показывается с помощью сингулярного разложения А = QAQ\ где Л - диагональная матрица из собственных чисел Л/г, a Q ~ ортогональная матрица из собственных векторов матрицы А. Таким образом, (Azm, zm) = 0 и ит = и. □ Замечание 6.8. Метод сопряженных градиентов допускает обобщение, приводящее к более широкому классу алгоритмов, называемых методами сопряженных направлений. Данное обобщение заключается в отказе от вычисления векторов направлений рп по рекуррентным формулам из (6.99), а в использовании вместо этого только условия взаимной Α-ортогональности, или сопряженности,(Арк,рп) = 0 при к φ п. При этом могут использоваться различные способы их вычисления, например, процесс А-ортогонализации каких-либо заранее выбранных векторов. Примеры таких алгоритмов описываются в [35]. Итерационный процесс (6.99) можно назвать многошаговым методом наискорейшего спуска в смысле вида минимизируемого функционала (кстати, если в (6.99) положить βη ξ 0, то мы получим формулы наискорейшего спуска (6.83), (6.85)). Возникает законный вопрос - можно ли развить данный подход на минимизацию других видов функционалов, а также включение предобуславливающих матриц. Оказывается, это можно сделать "одним махом" без значительного усложнения существа проблемы и ее изложения, что тоже немаловажно. Более того, рассматриваемый обобщенный метод сопряженных градиентов применим для решения систем уравнений с несимметричными матрицами. Пусть В - некоторая симметричная положительно определенная матрица. Тогда систему уравнений с невырожденной, но не обязательно симметричной матрицей А можно привести к эквивалентной форме Аи = А'ВАи ^ A'Bf ~ /. (6.122)
§ 6,5. Градиентные итерационные методы 291 Поскольку матрица А новой системы симметрична и положительно определена, то к решению (6.122) можно применить метод сопряженных градиентов - надо переписать просто формулы (6.99), введя только в них величины с символами "тильда": г° = / - Аи° = А'Вг0, р° - f°, й° = и0, й° = йп~х + άη-ιρ""1, ά„ - /7\~!l, (6-123) pn = fn + βη-ιΡη~\ βη = ,-ii'- (rn V x) Очевидно, что такой итерационный процесс минимизирует на каждом шаге функционал Ф(йп) - (i-^fV71) = (#rVn). (6.124) Рассмотренный выше η-шаговый метод наискорейшего спуска получается при А' — А и В — Л™1. Если же положить В — Е, то формулы (6.123) определяют η-шаговый метод минимальных невязок (MINRES), являющийся развитием "обычного" алгоритма минимальных невязок (формулы (6.83), (6.95) совпадают с (6.123) при В = Ε и βη ~ 0), Формулы (6Л22)-(6.124) могут квалифицироваться как первый шаг обобщения метода сопряженных градиентов - в направлении расширения класса минимизируемых функционалов. Второй возможный шаг связан с введением предобуславливающих матриц. Пусть К - некоторая симметричная положительно-определенная предобуславливающая матрица, выбираемая из условия легкой обратимости и минимизации числа обусловленности матричного произведения К~ХА. Приведем дальнейшее эквивалентное преобразование системы (6.122), умножая обе ее части на матрицу if-1/2 и вводя новый неизвестный вектор Ай ξ К~х12АКх12ч = / == К'1'2 А9 В J (6.125) таким образом, чтобы матрица А — Κ~ιί2Α'ВАК"1/2 полученной системы была симметрична и положительно определена. В применении к (6.125) формулы (6.99) метода сопряженных градиентов принимают вид
292 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ :η-1+αη_1ρ»-1, йя- К ' ' (Ρη,ΑΡηΥ Τ f"-1 - α,,-ιΑρ»-1, (6.126) Такой итерационный процесс осуществляет глобальную минимизацию того же функционала, что и в (6Л24) „■ Цйп) - {A^fn,fn) = (Srn,rn), fn = / - Лйп - K~1/2fn = Я1'2 Л'Бгп. (6.127) Формулы (6.126) не являются конструктивными ввиду проблематичности явного использования матрицы Κ~λί2. Фактическую реализацию обобщенного метода сопряженных градиентов можно выполнять с помощью соотношений r°^f~Au°, 4ο^ΑιΒτ\ р°=ЛГ-у : и""1 + αη_ιρη-\ αη = »-ι , -. η-ι . _ (Ρη.βη) _ (<Zn>#~V) (ρη,Αρη) (ρη,Λρη) rn = rn-l __ Qn ^pn-1 = j _ ^ (6 128) „n _ i^-l-n , /з ^n-1 /э __ Wi-** <Z ) ρ - Я g + /3np , 0„ _ (f-^ir-y-1) В этих формулах скалярные коэффициенты an, /Зп совпадают по значениям с величинами αη, βη из (6.126) и отличаются от них только обозначениями. А участвующие в выражениях (6.126), (6.128) векторные переменные связаны между собой соотношениями рп - К1/2рп, ип = К1/2ип, тп - K-1/2qn. (6.129) Естественно, для обобщенного метода сопряженных градиентов (6.126) справедливы теоремы (6.15)-(6.17), в которых только надо поменять матрицу А на А = К ~1/2 А1 ВАК1/2, соответственно величины τη, Μ означают границы матрицы Л. Замечание 6.9. Среди возможных многочисленных конкретных алгоритмов, вытекающих из обобщенных методов сопряженных градиентов (см. обзор в [5, 24]), укажем только на один - метод минимальных
§ 6.6. Неявные методы переменных направлений 293 ошибок, предложенный В. М. Фридманом в 1962 г. (см. [43]). Он базируется на соблазнительной идее - минимизировать "самый главный" функционал - квадрат длины вектора ошибки (zn, zn). Формулы такого метода следуют из (6.128) непосредственно при В = (АА')"1, К = А1 А. "Минус" этого алгоритма заключается в замедленной скорости сходимости итераций. Например, в случае симметричных матриц А = А' число обусловленности матрицы А равно (^)2> т. е. возрастает квадратично, и это означает (см. (6.116)) значительное увеличение итераций при решении плохо обусловленных систем. § 6.6. Неявные методы переменных направлений В этом параграфе мы рассмотрим методы, имеющие яркую историю. В 1955 г. в одном и том же номере журнала американского Общества промышленной и прикладной математики были напечатаны две близкие по характеру статьи: одна - совместная работа Д. Писмана и X. Речфорда, а вторая - Дж. Дугласа. Они были посвящены методам решения двумерных уравнений на основе решения вспомогательных одномерных задач, поочередно в разных направления^ (см. [15, 25]). После этих публикаций в течение многих лет продолжался поток исследовавий по связанным с такой идеей проблемам. В области методов решения нестационарных задач здесь сложилось новое направление, связанное с такими названиями, как методы дробных шагов, расщепления и т. д. Что же касается стационарных задач, то здесь неявные методы переменных направлений (распространенная аббревиатура - ADI - методы, от английского Alternating Direction Implicit Methods) оказались весьма оригинальными итерационными алгоритмами, остающимися до сих пор для определенного класса алгебраических систем не превзойденными по своей скорости сходимости. Правда, попытки распространить их рекордную эффективность на более широкие классы уравнений пока не увенчались успехом. Исчерпывающую информацию по этим вопросам и обширную библиографию можно найти в монографии Г. И. Марчука [25], специально посвященной методам переменных направлений. Хотя методы данного типа включают достаточно много различных вариантов, мы главное внимание сосредоточим на первоисточнике - методе Писмана-Речфорда, являющимся в определенном смысле ключевым. Пусть требуется решить систему пятиточечных разностных
294 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ уравнений вида (3.18), аппроксимирующих двумерную краевую задачу на прямоугольной сетке. Используя введенное в (3.19) разбиение пяти- диагональной матрицы А на сумму двух трехдиагональных матриц Αι, А2, запишем систему в векторном виде Аи = (Аг + А2)и - /. (6.130) Относительно слагаемых матриц предполагаем, что они симметричны и положительно определены, а более конкретно, имеют место следующие оценки: 0 <mk(v,v) < (Akv,v) < Mh(v,v), к- 1,2. (6.131) В дальнейшем большое значение будет иметь, являются ли эти матрицы перестановочными или нет. Пока относительно этого мы никаких предположений не делаем. 6.6.1. Стационарный метод Писмана—Речфорда. Рассмотрим следующий двухшаговый итерационный процесс: и»"1/2 = и71"1 - riAm71-1/2 + A2un~i - /), ип - и""1/2 - г(Агип^2 + А2ип - /), (6.132) где г - некоторый итерационный параметр, a un~1/2 - промежуточный вектор. Основанием к построению такого алгоритма может служить простота его реализации - при известном ип~~г на первом полушаге для нахождения и""1/2 для каждой строки сетки требуется решить трех- диагональную систему с помощью прогонок вдоль оси ж, а на втором - вычислить ип с помощью прогонок по стобцам сетки вдоль оси у. В силу таких алгоритмических особенностей приведенная схема получила еще название "метод продольно-поперечных прогонок". Чтобы такой метод наглядней представить, запишем его в покомпонентной форме: -а ип~1/2 + (- + е' \ип~1/2 - с- -ип+1/2 - Ъ- и11'1 4- d ип~л + (I-eJ,ij)ttrj + /iiij 4гХн + (~+е^)<г4^+1 (6.133) n-l/2 /1 , \ n-1/2 , £ = oij«i_iliH-ciliti1.+li; ~~{~~~eidjuitj + /,·,,, используя обозначения из (3.21), (3.22). Как отсюда видно, при положительных г все трехдиагональные подсистемы имеют строгое диагональное преобладание, что обеспечивает
§ 6.6. Неявные методы переменных направлений 295 корректность прогонок. Трудоемкость выполнения одной итерации алгоритма (6.133) оказывается вдвое больше, чем в блочных методах Яко- би или верхней релаксации. Для исследования метода (6.132) исключим предварительно вспомогательный вектор ип~1^2. С этой целью запишем формулы полушагов в виде (Е + гА^и71-^2 = (Я - тА2)ип~х + т/, (Е + тА2)ип = (Е- тАг)ип-^2 + т/, (6.134) умножим первое соотношение на матрицу Ε—τ Αι, а второе - на Е+т Αχ, а затем сложим полученные выражения. В результате имеем равенство (Е + гАх){Е + тА2)ип = (Е - Till)(В - тА2)ип'1 + 2т/, (6.135) из которого следует представление для матрицы перехода метода Писма- на-Речфорда В = (Е + гЛг)"'1^ + тАгУ^Е - τΑι)(£ - тА2). (6.136) Несложными преобразованиями из (6.134) можно получить вторую каноническую форму итерационного процесса ~(Е + тАг){Е + тА2)(чп - и""1) - / - Аип~\ (6.137) 2т откуда становится очевидной предобуславливающая матрица К = -ί(£ + τ-4ι) (Я + тЛ2). (6.138) 2т При сделанных выше предположениях (6.131) матрица К является невырожденной, что позволяет сделать первое положительное замечание об алгоритме: если последовательные приближения ип сходятся к предельному вектору гх*, то последний является точным решением системы. Для более глубокого изучения итерационного процесса рассмотрим спектральные свойства матрицы перехода (6.136). Очевидно, это было бы очень легко сделать при перестановочности матриц ill, А2% но в общем случае надо предварительно сделать преобразование подобия с невырожденной матрицей С — Е+тА2, в результате которого получим подобную В матрицу
296 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ В = С~ХВС = В1В2. (6.139) Здесь множители Вк, к = 1,2, - симметричные матрицы вида Вк = (Е + тАк)'1{Е - тАк). (6.140) Проведенные преобразования имеют тот простой смысл, что в силу соотношений для собственных чисел Х(В) = Х(В) < \\В\\2 < ||£i||2 ■ ||2?а||2 (6.141) исследование спектрального радиуса матрицы В теперь можно провести на основе анализа собственных чисел матриц В^. Если λ - собственное число матрицы А&, то соответствующее собственное значение В^ есть параметрическая дробно-линейная функция от λ μ(τ'λ) = ϊτίΐ' (6·142) которая, очевидно, при положительных г и λ будет по модулю меньше единицы. Данный факт позволяет сделать второе утверждение о методе Писмана-Речфорда: вследствие неравенств (6.141) итерационный процесс сходится. Однако мы будем стремиться к более сильному результату - оптимизации значения итерационного параметра г и оценке скорости сходимости итераций. С этой целью проведем несложный анализ функции μ(Χ) из (6.142), предполагая, что ее аргумент меняется в пределах 0 < га < λ < Μ < оо. График такой функции изображен на рис. 19 при некотором положительном значении параметра т. Как видно, функция μ(λ) является строго убывающей и меняет знак в точке λ — г"1. Максимум ее модуля достигается только на одном из концов интервала [га, М]. При увеличении параметра г в пределах М~л < τ < га"1 "левый" модуль растет, а "правый" - убывает. Оптимальной величиной то, очевидно, будет такая, при которой эти значения равны, т. е. ^£ - -^Ъ· (β-ι«) Отсюда следует, что при значении итерационного параметра го - -jL* (6.144) у/mM функция μ (τ, λ) удовлетворяет неравенству
§ 6.6. Нежвные методы переменных направлений ι i 297 -1 + Рис. 19. Функция подавления компонент ошибки в методе Писмана-Речфорда Ито,А)|< VM — л/т VM ~ х/т 1-2, (6.145) Последнее приближенное равенство, понятно, приведено для плохо обусловленных матриц ί ^ < < 1 К Теперь мы уже близки к тому, чтобы сформулировать окончательный результат. Теорема 6.18. Итерационный метод Писмана-Речфорда (6.132) при выполнении условий (6.131) на матрицы Αι, Ач и положительности τ сходится. Если т — inf{mi,m2}, Μ = sup{Mi,M2}, то при равенстве параметра τ значению то из (6.Ц4) коэффициент подавления ошибки оценивается величиной /VM - у/т\2 рЫ< (~р~—— 1 WM - у/т' (6.146) Доказательство очевидным образом вытекает из того, что в правой части неравенства (6.141) каждый множитель оценивается с помощью (6.145). Отсюда следует, что асимптотическая скорость сходимости метода Писмана-Речфорда при — < < 1 равна Rq т (6.147) т. е. вдвое больше, чем для явного метода чебышевского ускорения. ,2 Для модельной двумерной задачи, когда ^ « j, из (6.146), (6Л47) получаем
298 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ р{т0) = 1-2/1, Roo - 2/ι. (6.148) Такая же величина асимптотической скорости сходимости итераций достигается и в явном методе оптимальной последовательной верхней релаксации. Замечание 6.10. Если границы спектров матриц Αχ, А2 сильно разнятся, то вместо (6.146) может оказаться целесообразным использовать другие оценки коэффициента подавления ошибки. Например, значение параметра г можно выбрать по условию минимизации нормы одной из матриц ί?&, и в этом случае имеем ρ = inf||Pl,p2||, (6.149) Pfc = р(гк) < -7~~—~=, к - 1,2. (6.150) л/М* - д/mfc Подчеркнем, что эта оценка справедлива и в случае, когда "худшее" из pk достигает единицы, т. е. одна из матриц А^ является положительно полуопределенной. 6.6.2. Оптимизация итерационного процесса при перестановочности матриц. Значительного повышения скорости сходимости итераций метода Писмана-Речфорда удается добиться использованием последовательности различных параметров, но только при перестановочности матриц Αι, Α2. Такой алгоритм записывается в аналогичном с (6.132) виде: un-l/2 = un-l _ Tn(AlUn~l/2 + A2Un~l __ Д ип = и11'1/2 - тп(Лщп-1/2 + А2ип - /). (6.151) Исключая, как и в стационарном случае, вспомогательный вектор и""1/2, итерационный процесс (6.151) приводим к канонической форме ип = Впип~х + дп, дп - 2тп(Е + тпА1)(Е + тпА2), (6.152) где матрица перехода с учетом перестановочности матриц Αχ, Α2 есть Вп = В[п) ■ B<n), в[п) = (Е + тпАку \Е - гпАк). Теперь для вектора ошибки можно записать - Π в?Щ L?(fe)»(*bo
§ 6.6. Неявные методы переменных направлений 299 Таким образом, проблема оптимизации последовательности итерационных параметров т^ может быть поставлена как задача минимиза- n (fc) ции нормы какой-либо из матриц [J В\ , г — 1, 2, или обеих этих норм, если предположить, что у матриц Αχ, А 2 одинаковые границы спектра га, М. Отсюда формулируется минимаксная задача по нахождению величины рп = min max < ТТ -—-^- }. (6.153) Ее строгое решение находится в общем случае достаточно сложно и выражается через эллиптические функции. Поэтому мы ограничимся изложением "квазиоптимального" решения, имеющего тот же по порядку результат, но отличающийся простотой своего вывода. Идея заключается в разбиении интервала [га, М] на подынтервалы [s0j si],..., [sfc-i, Sk]} ■ · -, [sn-ΐϊ Sn] таким образом, чтобы выполнялись соотношения sq — га, sn > Μ, и чтобы на каждом интервале один из множителей в (6.153), при соответствующем "локально оптимальном" параметре т&, не превосходил по модулю заданной величины ρ (одинаковой дпя всех к). Так как на основе соотношений (6.144), (6.145) мы можем положить то точки искомого разбиения легко находятся: /14- о\2к 5*=Ш(Г^) - (6-155) Отсюда определяется, какое число по таких подынтервалов надо взять, чтобы покрыть весь интервал [ттцМ], т. е. для выполнения условия sn > Μ. При заданном ρ из (6.155) имеем 1η Μ η0 < 21п^* Так как при последовательности параметров (6.154) в произведении ГЦ-1 ^i Щ п0 крайней мере у двух множителей нормы не превосходят р, а у остальных - не превосходят единицы, то соответствующее среднее число обусловленности итерационного процесса будет
300 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ 1 ι 2 4 , 1 + ^, (здесь приближенное равенство берется при — ^ 1). Теперь можно поставить вопрос о максимизации оценки Rn по свободному пока параметру р. Так как функция 1η γ^ In ρ достигает своего максимального значения при ~^ — ρ = л/2 — 1 ^ 0.414, то мы получаем m Необходимо отметить, что здесь сформулирован фактически циклический итерационный процесс с периодом последовательности параметров т: п0 = In —/(21п(л/2 - 1)). (6.157) т Полученный результат имеет то принципиальное значение, что скорость сходимости итераций зависит от числа обусловленности только логарифмическим образом, и его грех не сформулировать в виде отдельной теоремы. Теорема 6.19. Для итерационного метода Писмана-Речфорда (6.151) с циклической последовательностью параметров (6.154), (6.155), (6.157) при т — inf{mi,m2}; Μ — sup{Mi,M2} и перестановочности матриц Αι, Αη> справедлива оценка (6.156) средней скорости сходимости итераций. В заключение данного пункта конкретизируем оценку (6.156) модельной задачи при h <^ 1: 1.554 |1пЛГ 6.6.3. Некоторые другие схемы переменных направлений. В [15, 25, 38] и других работах описываются различные схемы переменных направлений, ориентированные или на повышение экономичности алгоритмов, или не расширение класса решаемых задач. Мы остановимся только на некоторых из них. Одновременно с методом Писмана-Речфорда был опубликован алгоритм, получивший название по имени своего автора Дж. Дугласа: ип-1/2 = ^п-1 _ r(AlUn~l/2 + A2Un-l _ Д ип - и71'1/2 - гА2(ип -и"-1) (6.158)
§ 6.6. Неявные методы переменных направлений 301 и имеющий отличие только во втором полушаге итерации. Данный метод позже получил развитие на трехмерные задачи, а также на использование дополнительных итерационных параметров. В общем случае алгоритм можно сформулировать для разбиения исходной матрицы на произвольное число т слагаемых А + Αχ + ... + Аш. Итерационный процесс определяется при этом как m-шаговый, на каждом из которых используется "неявно" только одна из слагаемых матриц: m „-^ = „-ι - m^tx»-^ + £ Акип-1 - /), Jfe=2 -тпАк {ип~^ - и71"1), к = 2,..., т. Аналогично рассмотренному выше двумерному случаю в формулах (6.159) можно исключить все промежуточные векторы ип ^~, к = 2,..., m — 1, в результате чего получается каноническая форма итерационного метода Кп(ип — ип~г) = / — Аип~~х с предобуславливающей матрицей Кп - [тп Ц(1 + β^ή IE + тпАО ... IE + тпAm). 16.160) Из приведенного "исключенного" представления следует уже тот немаловажный факт, что если итерационный метод (6.159) сходится, по крайней мере на целых шагах ип —> и*, то предельный вектор и* является точным решением системы Аи = /. Формулы (6.159) дают в частных случаях различные известные (или эквивалентные им) методы. Например, при β[η) ~ 0 для m = 2,3 получаются схемы Дугласа для дву- и трехмерных задач. При m — 2 и /?2 Ξ 1 предобуславливающая матрица (6.160) оказывается совпадающей с предобуславливающей матрицей (6.140) метода Писмана- Речфорда, т. е. формулы (6.132) и (6.159) описывают эквивалентные по скорости сходимости итерационные процессы. Исследование и оптимизация метода (6.159) при m > 2 представляет достаточно сложную проблему. При перестановочности, симметричности и положительной определенности матриц Лх,...,Лш предобуславливающая матрица (6.160) будет положительно определена, а итерации будут сходящимися. Однако поиск оптимальных значений итерационных параметров тп и /?^ здесь уже затруднен, так как не удается,
302 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ например, свести вопрос к минимизации дробно-линейной функции вида (6.144). Если же матрицы Αχ,... ,Ат не перестановочны, то даже при их симметричности и положительной определенности для т > 2 ничего нельзя сказать о спектре предобуславливающей матрицы Кп из (6.160), так что здесь даже вопрос о сходимости итераций остается открытым. Приведем еще одну оригинальную схему переменных направлений, предложенную независимо Η. Η. Яненко и Б. Келлогом (см. [47]). Она ориентирована на двумерные задачи и заключается в проведении двух полушагов вида п-1/2 , ?/п~1 „,η-1/2 _ я п-1 „./ л " ^ и / \ и !~и ~τ[Αι /ι), -,,« _ι_ -,η-1/2 ип = „-1/2 _ Τ(^,ϋ_±| /2), Λ + /2=/. (6.161) Нетрудно показать, что в этом алгоритме к решению сходится полусумма соседних приближений уп~1^2 — - 2~^~, причем относительно этой переменной схема Яненко-Келлога эквивалентна методу Писмана- Речфорда. Для этого сложим уравнения (6.161), а затем второе из этих уравнений с аналогичным уравнением для un+I'2: π+1/2 , η un+1/2 = u„ _ τ{Αι и _+jl _ h) В результате для векторов г>п~1//2 и vn = -—^- получим систему υη-1/2 = ^η _ Ιμινη-1 + Лз^71"1/2 - /), υ« = vn~i/2 _ I(AlVn + Λυ""1/2 - /), совпадающую с точностью до обозначений со схемой Писмана-Речфорда (6.132). В заключение данного параграфа рассмотрим вопрос об ускорении сходимости неявных методов пременных направлений с помощью чебы- шевских параметров или сопряженных градиентов (ограничимся только методом Писмана-Речфорда). В случае перестановочности матриц Л1? т4г проблемы здесь нет, так как предобуславливающая матрица К из (6.140) оказывается симметричной и положительно определенной. Чтобы упростить анализ с использованием уже полученных результатов для метода Писмана-Речфорда, удобно рассматривать применение ускорений к решению уравнения '
§ 6.6, Неявные методы переменных направлений 303 {Е-В)и = д, 9 = 2т(Е + тА2)-1(Е + тА1)-1/, (6.162) эквивалентного исходному при |A(J3)| < ρ < 1, где В - определенная в (6.135) матрица перехода. Реализацию алгоритма чебышевского ускорения удобно проводить в форме, получаемой из (6.63) при К — Ε, Α = Ε — В, f = g: и - тп{Вип'х + д) + (1 - тп)«п"х. Оценки (6.72)-(6.74) для требуемого числа итераций и скорости сходимости остаются в силе, но вместо величин m, M надо использовать границы спектра матрицы Ε — В: 1 — ρ < λ(Ε — В) < 1 + р. Поскольку при оптимальном значении г из (6.145) коэффициент подавления ошибки ρ матрицы перехода В "неускоренного" метода Пцсмана-Речфорда оценивается неравенством (6.147), то при ^ « 1 (здесь уже m и Μ - границы спектра матриц Αχ, Α2) скорость алгоритма Писмана-Речфорда с чебышевским ускорением имеет вид Для модельной задачи, в частности, это дает результат Rn и 2Vh, (6.164) значительно превосходящий (6.75). Аналогичные оценки скорости сходимости итераций получаются, естественно, и для метода Писмана-Речфорда с сопряженными градиентами. Для реализации алгоритма достаточно в формулах (6.99) откорректировать вычисление начальной невязки и вектора Арп: г° = Ви°+д- и°, Ар0 = р° - Вр°. Сложнее обстоит дело с обоснованием ускорения метода Писмана- Речфорда в случае неперестановочности матриц Αι, Α*ι, поскольку пре- добуславливающая матрица из (6.138) перестает быть симметричной и положительно определенной. Однако для применимости и обоснования чебышевского ускорения требуются только вещественность и положительность спектра матрицы исходной системы. Для уравнения в форме (6.162) это свойство выполняется в силу наличия преобразования подобия (6.139), так что сходимость итераций и оценки скорости (6.163), (6.164) остаются в силе. Вопрос же сходимости метода с ускорением сопряженных градиентов в этом случае остается открытым.
304 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ § 6.7. Метод симметричной последовательной верхней релаксации Если обратиться еще раз к неявным методам переменных направлений Писмана-Речфорда или другим, рассмотренным в предыдущем параграфе, то можно обратить внимание, что обоснование сходимости итераций не предполагает какой-либо конкретной структуры матриц Αχ, Α2, на которые разбивается исходная матрица А. По этой причине рассмотрим итерационный процесс в той же операторной форме, что и, например, (6.132), но с разложением матрицы А на сумму двух не трехдиагональных матриц, а треугольных, которые наиболее легко обращаются. Если исходная матрица симметричная, то естественно положить Л ι = А'2, разбивая главную диагональ А пополам. Такие итерационные алгоритмы исследовались и описаны под названиями "попеременно-треугольные методы" и "явные методы переменных направлений" [15, 38]. Они оказались близкими, а зачастую и пересекающимися с классом методов симметричной последовательной верхней релаксации, исходящими из другой идеи, предложенной в пятидесятые годы А. Эйткеном и Дж. Шелдоном и основанной на поочередном использовании процедур последовательной верхней релаксации с разными направлениями счета. При обычном представлении матрицы системы A — D — L — U такая итерация состоит из двух полушагов следующего вида: ип~1/2 = wD^iLu71'1/2 + Uun^ - f) + (1 -ω)η~\ un - luD-^Lu11-1/2 + Uun - /) + (1 - w)un, где α; - числовой параметр, a D - диагональная или блочно-диагональная матрица, что определяет соответственно явный (поточечный) или неявный (блочный) вариант алгоритма. Исследование этого итерационного процесса, получившего название метод симметричной последовательной верхней релаксации (в международной литературе распространено обозначение SSOR, от англоязычного Symmetric Successive Over Pelexation), мы проведем в предположении симметричности и положительной определенности матрицы А (D = D', L = 17'), следуя О. Аксельсону (см. [1]). После исключения вспомогательного вектора un~1//2 соотношения (6.165) приводятся к канонической форме ип = Ви71*1 4- K~lf, где матрица перехода В и предобуславливающая матрица К имеют вид
§ 6.7. Метод симметричной последовательной верхней релаксации 305 [(--lJD + J/], (6.166) к = -±-Yd-l] Y-dY'Y-d-u]. 2 — ω У<л ) \ω ) \ω J Мы будем предполагать относительно итерационного параметра выполненным условие 0 < ω < 2, что сразу обеспечивает симметричность и положительную определенность предобуславливающей матрицы К (она конгруентна матрице D~x, так как матрица ^D — L невырождена в силу "строгой треугольности" L). Условимся сразу, что главной нашей целью будет исследование эффективности метода SSOR с каким-либо ускорением. Например, че- бышевское ускорение можно реализовать двумя различными способами или в форме К(ип — и71^1) = тп(/ — Лип~х), где последовательность итерационных параметров определена в § 6.3, а К — предоб- уславливающая матрица из (6.166), или с помощью соотношения ип — тпйп -+■ (1 — тп)ип~г. В последнем случае йп означает "неускоренное" приближение по методу SSOR, которое в формулах (6.165) обозначается через ип. С помощью формул (6.128) можно реализовать SSOR-метод с ускорением сопряженных градиентов, в которых одной из основных операций будет вычисление вспомогательных векторов K~1qn) что сводится к решению системы уравнений с матрицей К. Для обоих типов ускорений скорость сходимости итераций оценивается через число обусловленности матрицы К 1А) что сейчас и будет предметом нашего анализа. Так как матрицы К и А симметричны и положительно определены, то произведение К~гА подобно матрице К"Х^2АК~1^2, конгруентной, в свою очередь, матрице А. Следовательно, матрица К~1А имеет N собственных векторов и положительный спектр. Если Хр и хр - собственные числа и собственные векторы данного матричного произведения, то они очевидным образом удовлетворяют уравнению (Ахр)хр) = \р(Кхр:хр). Отсюда следует, что собственные числа удовлетворяют двустороннему неравенству (Ах7х) . (Αχ, χ)) m = mm -r~- < λ < max —— = Μ, x^O (Κχ,Χ) ~ x^O (it Ж, χ) в силу чего целью исследования становится нахождение величин га, М. Установим сначала неравенство Μ < 1, что является более легкой задачей. Для этого введем обозначения
306 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ G- [— ~ l1 Z>5 L- (i~-]l>-L, & = L' и отметим, что матрица G при О < ω < 2 является положительно- определенной. После этого предобуславливающую матрицу перепишем в виде К = (G + L)G_1(G -f Cf) = G + L + U + LG~X V = A + LG^U. Отсюда для любого вектора χ ж у ~ Ό χ имеем (Кх, х) = (Ах, х) + {G~ly, у) > {Ах, х), (6.167) что и дает верхнюю оценку λ. Для нахождения нижней границы спектра га перепишем матрицу К в другой форме: K^-^—lA + ^-^D-wilD-LD-1!;)}. (6.168) Предположим теперь, что выполняются неравенства ||p-l/2Lp-l/2||oo < 1( ЦД-1/2^-1/211^ < ^ (6.169) являющиеся достаточно естественными для рассмотренных в первых главах разностных уравнений. Введем также величины (Dx x) f {ID-LD-^U}^} μ = max ^Щ, δ = min -Ш —^ ^. (6.170) z^o (Ax, ж) ж^о (Αχ, χ) Отсюда для любых векторов χ следуют соотношения 0 < (Όχ,χ) < μ(Αχ,χ), {[^-D-LDxu}x,x} ><*(Аж,х), δ>0. Последнее из них означает положительную полуопределенность матрицы \D — LD~XTJ и легко проверяется при введении замены у = Dx^2x с помощью очевидного при условиях (6.169) неравенства \(У,У) > (D-^LD-Wy, D-^2UD^2y). Для определенной в (6.170) величины δ можно найти кроме нижней еще и верхнюю оценку. Пусть у означает вектор такой, что Uy ~ 0 (он обязательно существует, так как строго нижняя треугольная матрица U является вырожденной). Тогда справедливо легко проверяемое равенство (6.171)
§ 6.7. Метод симметричной последовательной верхней релаксации 307 [[\d - LD^u)y,y) =\(Ay,y), из которого следует δ < 1/4. С помощью соотношений (6.171) теперь для любого χ следует (Κχ,χ) < С(ш)(Ах,х), где величина С (ω) положительна в силу положительной определенности матриц К, А, имеет вид си = i + lV-f/Ч»-»* (бЛ72) и связана с минимальным собственным числом неравенством С(ш) < m_1. Таким образом, мы можем сформулировать важный результат. Теорема 6.20. Число обусловленности матрицы К~хА для метода условий (6.170) и 0 < ω < 2; удовлетворяет оценке cond(K~lA) < СИ, (6.173) где величина С (ω) определяется из (6.172) и при значении параметра ω0 = (6.174) 1 +2^/d-ί/μ достигает своего минимального значения Ο{ωο) = \ + ^μ{\-δ). (6.175) Доказательства здесь требуют выражение для оптимального итерационного параметра и соответствующая оценка числа обусловленности. Для этого необходимо только приравнять нулю производную от С {ω): Γ,([Λ_2{ω'-2δ)-μ{2-ωγ С И ~ 2α,*(2-ω)3 " °' найти нужный корень получаемого квадратного уравнения и убедиться, что соответствующее экстремальное значение С (ω) является минимальным. Теперь необходимо осмыслить выражение (6.175), для чего в первую очередь требуется оценить величину μ. Согласно ее определению в (6.170), мы можем записать
308 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ (Dx,x) max max{{Dx7x)/{x,x)} M μ = max — < —г- < , и . гту тт- - —' (6.176) χ?ο (Ах, χ) mm тт{(Ах,х)/(х,х)} т где га и Μ - минимальное и максимальное собственные числа матрицы Л, если D ~ диагональная матрица (точнее, D — diag(A), т. е. D - "диагональная часть" А). В этом случае максимум отношения Релея для матрицы D равен максимальному диагональному элементу, который не превосходит наибольшего собственного числа. В общем случае, включающем блочно-диагональные матрицы Z), оценку μ вместо (6Л76) можно вывести через спектральный радиус р, или коэффициент подавления ошибки, матрицы перехода D~X(L + U) соответствующего (явного или неявного) метода Якоби. Это следует из простых соотношений μ ^ тж{\(А-1)} - [mm{\(D~x А))'1 = [1 - mwL{\X(D-x(L + U))\]~x < ^-. (6.177) В соответствии с оценкой (6.73) число итераций метода симметричной последовательной верхней релаксации с чебышевским ускорением или сопряженными градиентами при оптимальном значении параметра а?о выражается неравенством п{е)<\\1пЩ\^{\-5) + 1, (6.178) что соответствует средней скорости сходимости итераций *n«2[- + 0i(--i)J - (6.179) Если величину δ трудно оценить снизу, то в (6.178), (6Л79) можно положить δ — 0. Для плохо обусловленных систем уравнений μ ^> 1 и приведенные выражения можно упростить, например: Яп^2[-) (6Л80) Нам осталось в этом параграфе привести только результаты для модельной задачи. Поскольку величина ρ для явного и блочного методов Якоби соответственно равна 1 - у и 1 - /ι2, то из (6Л77) и (6Л80) скорости сходимости для методов SSOR оказываются Re^2hx^\ R6*2(2h)1/2.
§ 6.8. Методы неполной факторизации 309 § 6.8. Методы неполной факторизации Данный параграф не только завершает главу, но и в определенном смысле подводит итоги развития итерационных методов решения систем линейных алгебраических уравнений. Здесь удается сформулировать даже такой замечательный результат, как замыкание итерационных алгоритмов - построение на единой основе семейства методов, переходящих в предельном случае в прямой, безытерационный метод. Разработанные принципы построения новых алгоритмов предоставляют широкое поле деятельности для конструирования итерационных процессов, оптимизированных или адаптированных к конкретным особенностям решаемых систем. Не случайно в последние десятилетия методы неполной факторизации привлекают многочисленных специалистов и стали основным инструментом при решении различных прикладных задач (см. [4,17,18] и имеющуюся там обширную библиографию). Однако несомненный прогресс в теории и практике сопровождается появлением новых нерешенных проблем, когда попытки подступиться к ним наталкиваются на недостаточный существующий уровень алгебраического аппарата. Так что данная область является не только наиболее результативной за последние годы, но и перспективным направлением для пытливых исследователей. 6.8.1. Явный метод Булеева для двумерных задач. Предпосылкой для данного метода Булеева, опубликованного впервые в книге Г. И. Марчука [23], является построение метода прогонки для трехточечных сеточных уравнений в одномерных задачах. Напомним, что там искомое решение ищется в рекуррентном виде щ = βι-η^χ +2,·, где вспомогательные величины Pi, Zi определяются по условию удовлетворения выбранного соотношения исходному уравнению. По аналогии с этим будем искать решение системы пятиточечных уравнений -aijUi-ij - bijUij-! - djUi+ij - dijUij+i + eijUij ~ /itJ-, i - 1,...,/; j = 1,...,J, в виде uiJ = Hjui+i>3 + UJU«\J+1 + zi>h (6.181) с неопределенными пока величинами 7г> £i\ji z%j· Выражая с помощью этого рекуррентного соотношения величины Wi_itj, t*i,j-i и подставляя их в первые два члена исходного уравнения, получаем
310 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ -fl*,i(7i-i,jWi,j 4- ij-^j-Uj-ij+i 4- z^ij) —bijijij-iUi+ij-i 4- Sij-imj 4- Zij-ι) —CijUi+ij — dijiiij+i 4- GijUij — fij- Последнее равенство приведем теперь к форме leij - ai,i7i-i,j - bi,jSi,j-i - 0ij(aij5i. ij 4- KjJij-i)]^ij = CijUi+ij 4- dijitij+i 4- dijZi^ij 4- bijZij-i (6.182) +ailj£i_i(ui_iij+i - 0iyjUij) 4- ^^7г^_1(^+и_! - OijUij) 4- /i,j Обратим внимание на то, что здесь к обеим частям равенства добавлено по одинаковому члену ~^tj(at,jii-i,j + bi,j7i,i-i)ui,j c некоторым числовым параметром 0^·, мотивировку чего мы дадим чуть позже. Теперь можно заметить, что если обе части (6.182) поделим на множитель слева в квадратных скобках, то получим выражение, аналогичное по структуре (6.181). Отсюда мы получаем формулы для определения 7t,j $i,j и Zij. Но поскольку при этом величины Zij зависят от неизвестных щ^, то алгоритм оказывается итерационным, а его формулы имеют следующий вид: +Aj7*J-iK,+i1I,-i - ^"J1) + <Pi,i, ai,j ~ aij/9iJ-> Pi,j — bi,j/9iji IfiJ ~ ciJ/9i,ji 5iyj = dij/gij, <pij = fi,j/gi,j, (6.183) 9iJ ~ eiJ - °*,i7t-i,j - &t,j-i - ei,j{ai,j$i~i,j + bi^ij-i)» г = 1,...,/; j = 1,..., J; ^i.j ~ JiJui+ 1J + "*iiui,j + l "^ ^»,j' г ~ ' * * * ' ' J = J, . . . , 1- Таким образом, каждая итерация состоит из двух этапов: прямого и обратного хода при выбранной упорядоченности узлов. В приведенном варианте алгоритма фактически пересчет узлов можно вести различными способами - по строкам, по столбцам или по диагоналям сетки - вычисляемые приближения будут одинаковы. Надо только, чтобы при обработке текущего узла на прямом ходе были уже пересчитаны его левый и нижний соседние узлы, а на обратном - правый и верхний. Выписанные рекурсии для ζ™ · и ufj стартуют автоматически. Так, если для околограничного (г, j)-ro узла какие-то из узлов (г — 1, j), (г, j — 1), (г 4- 1, j) или (г, j 4- 1) внешние, то в силу учета краевых условий в исходных уравнениях соответствующие коэффициенты atjj, /З^у, 7ij или S{j будут нулевыми.
§ 6.8. Методы неполной факторизации 311 Выписанные формулы соответствуют внешне прямоугольной сеточной области с числом внутренних узлов N — I · J. Однако они справедливы и для произвольной расчетной области, формально для внешних узлов достаточно положить в (6.181) eij — 1, α,-j = bij = Cij — dij = fi,j — 0. Тогда на каждой итерации во внешних узлах z™j — ufj — 0. Через N в общем случае обозначаем число только внутренних узлов. Чтобы понять структуру этого эмпирически построенного итерационного процесса, надо представить его в более обозримом векторно- матричном виде. С этой целью введем диагональную матрицу G = {9ij} и векторы ип = {^"j}5 zn ~ {^}, / — {fij} порядка N. Введем также подвекторы w£, z% и Д, состоящие из значений функций в узлах на сеточной диагонали с номером fe — i-fj — 1,и обозначим через Nk число внутренних узлов на &-й диагонали, а также порядок соответствующих подвекторов (к — 1, 2,... К> Νι + N2 + .. - + Nk — iV, где К - число диагоналей). При такой подиагональной нумерации узлов (на каждой диагонали узлы упорядочиваются в порядке возрастания индексов г или j) матрица системы разбивается на три слагаемых А — ~L -f- D — U и представляется в блочном виде таким образом, что каждая блочная строка имеет порядок Nh и D ~ {Dk}> L ~ {£*}, U - {Uh}, где Dk ~ {eij} - диагональная матрица, a Lk = {aij, bij} и £/& = {ci,ji dij} - двух- диагональные прямоугольные матрицы формы Nk х Nk-i и Nk x iVjfe+i соответственно. При таких обозначениях, умножая обе части соотношений для ζ£· и и?j в (6.183) на gij> их можно переписать в виде Gkz% - Lkzl_x +Rkunk~l - T^jt^"1 + Д., /с - 1,2,..., Κ; Gfcu£ - ики^г + Ghzl, к - Кл К - 1,..., 1. (6.184) Gk ~ Dk — Rk ~~ TkSki fc = l,2,...,iC. Здесь GkRk·, Sk,Tk - диагональные матрицы с элементами Gk = {#i,j}> Л/е = {ai,j7i-l,j +biJ<Jij-l}j 5а = {«ί,^ί-Ι,ί +bi,j7i,j-l}j Тк = {ви)· Матрица Rk может быть определена следующим образом. Введем трехдиагональную матрицу Rk = Lk ■ G^-i · Uk-ι — {dij · ii_i,jj aij · 7i-i,j + bijSij-i, bijjij^i}.
312 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Тогда очевидно, что Rk составляет диагональную часть матрицы Rk. Отсюда легко следует соотношение Rk = Rk — Rki т. е. матрица Rk есть внедиагональная часть Rk- Введенную выше матрицу Sk можно определить также из векторного равенства Skeh -Rkek, (6.185) где ек - вектор iV-ro порядка с единичными компонентами. Теперь можно обсудить введенные выше члены с множителями Oij. Из итерационных формул (6.184) видно, что если uj · — Сх и щ^ ~ Сз, где Ci, C2 - некоторые постоянные, то при Oij = 1 для всех последующих η будет ω™ · = Сг, т. е. процесс сходится за одну итерацию. Если же решение исходной задачи щ^ есть достаточно гладкая функция, что обычно бывает в задачах математической физики, то можно ожидать, что введенные члены с 9{j & 1 будут компенсировать итерируемые члены u£ti j±i и ускорять таким образом сходимость процесса. Н. И. Бу- леевым такой подход был назван принципом компенсации, а вариант с Oij — 1 - полной компенсацией. Вводя теперь "глобальные" матрицы порядка N D^{Dk}, L = iLk},U = {Uk}, G = {Gk}, R = {Rk}, S -{5,}, Г = {Г*}, итерационный алгоритм (6.185) можно переписать в виде Gzn = Lzn + Ли"-1 - TSun~l + /, GV1 - tfu» + Gzn, (6.186) G = D- LG~lU - T5, Se^Re^ (LG~lU - LG~lU)e, где е есть вектор с единичными компонентами, a LG~lU - "диагональная" часть матрицы LG^1!!, Исключая отсюда вспомогательный вектор zn, получаем соотношение (G - L)G~*{G - U)un - Sti71"1 - TSun'x + /. Отсюда после несложных преобразований, с учетом определения матриц G и R, получаем формулу итерационного процесса (G - L)G~l(G - U)(un - ηη~χ) = / - Ли""1. (6.187) Таким образом, явный метод Булеева является стационарным линейным итерационным процессом с предобуславливаюшей матрицей
§ 6.8. Методы неполной факторизации 313 К = (G - L)G~l{G - U) = А + LG""1!/ - ZcFU/ ~ TS. (6.188) Теперь можно убедиться, что приведенное выше определение матрицы S соответствует тому, что при Τ — Ε (в терминологии Булеева это есть полная компенсация) исходная и предобуславливающая матрицы связаны соотношением Ке - Ае. (6.189) Последнее означает равенство сумм элементов соответствующих строк матриц К и А. Такая матричная интерпретация принципа компенсации Н. И. Булеева была названа принципом согласования строчных сумм. Из структуры предобуславливающей матрицы в (6.188) видно, что если А - симметричная М-матрица, а диагональные элементы G положительны, то К - также симметричная М-матрица (и следовательно, положительно определенная), и итерационный метод (6.188) может быть ускорен с помощью чебышевских итерационных параметров или сопряженных градиентов. Мы эти вопросы, однако, пока оставим в стороне и остановимся здесь только на простейших свойствах алгоритмов. Рассмотрим поведение элементов gij матрицы G, которые играют ключевую роль для характера вычисляемых коэффициентов итерационных формул. С этой целью мы перепишем нужное нам выражение в виде 9ij = ei,j — a»,j(ci-i,j + 6ij ' di~itj)/gi-itj —°i,j(ci,j~i + θ{j · diyj-\)/gitj„i. Отсюда при сделанных ранее предположениях о коэффициентах системы (положительность a»j, &i,j, с,*^, d{j и диагональное преобладание, т. е. eij > a>ij+bij + Cij-\-dij) несложный анализ по индукции позволяет сделать ряд заключений: - при 0 < Oij < 1 величины gitj являются невозрастающими функциями θχ'Λγ и удовлетворяют неравенству 0 < д^ < gij < е^*; - если значения е^ и других коэффициентов во внутренних узлах сетки не зависят от i,j (eij — е, a^ ™ a, &i,j = &, Cij = с, dij = еЛ, 6ij = θ), то величины gij с ростом г, j убывают, достигая своего предельного значения, являющегося корнем квадратного уравнения#2 — ед+(а+Ь)(с+ва) — 0; эти асимптотические значения д для модельной задачи, в частности, равны 2 при θ — 1 и 2 + у/2 - при θ = 0.
314 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Если же коэффициенты исходной задачи переменные, то свойства величин gij усложняются, однако и в этих случах можно попытаться получить полезную информацию. Например, если коэффициенты представляют собой монотонно меняющиеся функции координат (или индексов г, j), то при соответствующей упорядоченности узлов и направления счета gitj их величины могут быть также "монотонизированы" и оценены. Если матрица А исходной системы является М-матрицей (необязательно симметричной), то при 0 < 0*^ < 1 справедливы следующие свойства коэффициентов рекуррентного соотношения (6.182): ύ- · + Λ- ■ < CiJ + di>j < 1 ei,j aiJ °ij Доказательство данного неравенства осуществляется методом индукции "по диагоналям", т. е. в предположении его справедливости для сумм Ji-i,j + ^<-i,i и 7t,j-i + ^f,j-i- Очевидно, что если вычисление коэффициентов начинается с узла сетки, для которого уравнение имеет строгое диагональное преобладание, то полученное неравенство будет строгим, т. е. 7t(j + $ij < Ρ < 1- Наличие установленного свойства полезно в том плане, что оно гарантирует устойчивость рекуррентных вычислений по отношению к ошибкам округления. Анализ накопления погрешностей машинных вычислений и их влияния на сходимость итераций требует специальных исследований и не является целью данной книги. Здесь же мы для иллюстрации влияния свойств коэффициентов рассмотрим этот вопрос в применении к расчету значений it" ■ по формуле (6.182) на одной итерации, при упрощающем предположении, что величины 7iji <^,j и z?,j известны точно. Пусть вместо точных значений и"+1 ·, wij+i даны их приближения ui+i,j = <+i(i + ΔΓ+υ> uitj+i = u?j+1 + A£i+1. Тогда для ошибок Δ^· легко следуют соотношения |Ау = |7<JΔ?+1)j + «^i,jΔ;^+1|+ei,j < pmax{|A?+1>i|, |Δ^|}+ ε < ^. Здесь max{·} берется по узлам одной диагонали сетки, ε = max{)ejj|}, a €{j означает погрешность машинной реализации арифметического выражения Jiju?-+ij + ^*,j^?,j-i- Как видно, при ρ < 1 вычисления
§ 6.8. Методы неполной факторизации 315 являются устойчивыми в том смысле, что ошибка ограничена величиной, не зависящей от числа узлов сетки. При сделанных предположениях несложно показывается и справедливость следующих неравенств: &i,j ~Г Pi}j S: °г>3 ^i,j ®itj ^i>j ■" ijj ®"i\j ' "*>J < С точки зрения устойчивости вычислений ζ™-, целесообразно выбирать упорядоченность узлов и соответствующее направление счета на каждой итерации такие, чтобы выполнялись условия а^ + bij < В заключение данного пункта предложим неформальную интерпретацию рассмотренного алгоритма в графическом представлении "сеточно-операторных" шаблонов. Поскольку предобуславливающая матрица есть произведение треугольных матриц, то с учетом их структуры соответствующая формула (G — L) - (Е — G^U) ~ К может быть схематически изображена на рис. 20. т 1 Г -т · #· А i ж ® t Рис. 20. Сеточная интерпретация явного метода Булеева Здесь справа крестиками обозначены узлы шаблона матрицы К, "лишние'' по сравнению с шаблоном исходной матрицы. Именно из-за их наличия данная факторизация является неполной. 6.8.2. Методы неполного разложения матрицы на треугольные множители. В данном пункте мы рассмотрим семейство алгоритмов, основанных на конструировании предобуславливающих матриц в виде приближенной факторизации матрицы исходной системы. В случае ее симметричности методы называются неполным разложением Хо~ лесского (1С). Данный подход является достаточно общим и применим для различного типа матриц. В случае пятиточечных сеточных уравнений простейшим вариантом неполного разложения является, как мы увидим, рассмотренный выше метод Булеева.
316 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ В п. 3.1.3 мы рассмотрели формулы разложения матрицы на треугольные множители, представляемые через вспомогательные определители. Такая матричная факторизация выражается более конструктивно в виде простых рекуррентных последовательностей, получаемых путем приравнивания соответствующих элементов исходной и факто- ризованной матриц L-U=A. (6.190) Пусть L — {hj} - нижняя треугольная матрица и U — {v>ij} - верхняя треугольная с элементами на главной диагонали щ^ = 1, i — 1,..., N. Тогда соотношение (6.190) при его поэлементном расписывании представляет собой систему N2 алгебраических уравнений относительно такого же числа неизвестных - Uj для i > j и Uij для г < j. К счастью, она оказывается легко разрешимой в силу своего специфического вида. Действительно, поскольку каждый элемент a{j матрицы А есть скалярное произведение г-й строки нижней и j-ro столбца верхней треугольных матриц (atj — Σ£~ι ^fc^fcj» m ~ ш^(Л-0)> то Для элементов первых строк L, U имеем *ι,ι - αι,ι/«ι,ι = αι,ΐι v>i,j = &itj/htii j = 2,3,..., N. Далее будем вычислять элементы матричных множителей для 2-й, 3-й и последующих строк. Предположим, что нам уже известны значения Zfcj, Ukj для к — 1,... , г — 1 и всех j == 1,..., N. Тогда элементы г-х строк матриц L, U находятся последовательно слева направо: ϊ-1 h,i — а*,ь kj — aij - 2-^и,к^к,з-> 3 — 2,-->г, г--1 uiJ = [aiJ " Σ 't,*u*,i J /'ί,*ϊ j == i + 1,..., JV. Разрешимость этих соотношений, при невырожденности матрицы А, обеспечивается отличием от нуля величин Ζ^, которое следует из равенства \A\ = \L\-\U\=lltl...lN,N?Q. Идея неполного (в некотором смысле приближенного) разложения матрицы на треугольные множители заключается в следующем. Пусть Ω будет некоторое подмножество из Mq < Ν2 пар индексов (г, j), 1 < г, (6.191)
§ 6.8. Методы неполной факторизации 317 j < N. Тогда вместо матриц Ζ, Ό из (6.190) будем искать нижнюю и верхнюю треугольные матрицы L = {hj}^ U = {ui.i}, ^i,i = 1» г — 1,... ,7V, такие, у которых отличны от нуля элементы только при (i,j) £ Ω, т. е. /ij - 0, йи = 0, (i, j) £ Ω. (6.192) Второе условие для их определения записывается в виде (L.U)n = (A)Qi (6.193) которое означает равенство соответствующих элементов только при (г, j) € Ω. Соотношение (6.193) порождает Nq скалярных уравнений относительно такого же числа элементов Ζ^-, n^j, которые вычисляются последовательно по строкам рекуррентным образом: aij ~ Σ{=\ kkukj, (гJ) е Ω, ,6 lg4, о, (<,j)*n, (a*,j - Σ*=ι hthukj)fli^ (г J) € Ω, 0, (i, j) £ Ω. Отметим, что реализация этих формул предполагает отличие от нуля величин li^j что уже требует дополнительных исследований даже для невырожденных матриц А. Очевидно, что сформулированное семейство алгоритмов допускает замыкание в том смысле, что в предельном случае Mq = Ν2 формулы неполной факторизации (6.195) дают точное разложение (6.190). Рассмотренный в п. 6.8.1 метод Булеева как раз и реализует (при θ = 0 в (6.183)) неполное разложение пятидиагональной матрицы в варианте, когда множества индексов, соответствующих ненулевым элементам матриц А и L + U, совпадают. В то же время метод Булеева, при частном определении множества Ω, является обобщением формул (6.194) за счет введения членов с параметром компенсации Θ. Напомним, что принцип компенсации на алгебраическом языке является правилом согласования строчных сумм предобуславливающей и исходной матриц, т. е. выполнения равенства Ке = Ае. Этот подход, перенесенный на методы неполного разложения с произвольным множеством индексов Ω, получил название модифицированного неполного разложения матриц на треугольные множители (MIL U) . Такая приближенная факторизация может быть описана в виде j — i,..., г · tij — j =i + l,...tN : ui}j
318 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ A = LU + eS-R, (6.195) где L — {it,j\b U — {u>ij} ~ нижняя и верхняя треугольные матрицы (и1л = 1, г = 1,... ,7V), R - "матричная невязка", имеющая ненулевые элементы для индексов (i,j) ^ Ω, a S — {sij} ~ диагональная матрица, определяемая из того, что при θ — 1 сумма элементов каждой строки матрицы R — S равна нулю, т. е. {А - LU)e = (5 - R)e = 0. (6.196) В этом случае для элементов lij> щ^ 3{^ получаются следующие формулы (вычисления, как и ранее, ведутся последовательно по строкам сверху-вниз и в каждой строке слева-направо); если для строк с номерами 1,... ,г — 1 величины уже вычислены, то для г-й строки рассчитываются: i-i _ J = ! t-1 : Uj = \ fc=i о, (*,j)£n, N m /=1 (6·197) «i,i = ΣΣ^»*6*·*' rn = inf(i,j), (a*j ~ Σ'*■****)/'"*»*' (hj) € Ω, 0, (г, j) £ Ω. Здесь в формуле для s^· знак £ означает суммирование только по тем индексам, для которых (г, j) $ Ω. В этом случае как раз и выполняется равенство (6.196) при θ — 1. С точки зрения реализации важно отметить, что величина s^· не зависит от ^,ζ и ut,j для j > г, как это может показаться на первый взгляд: при т — г с учетом формулы для щ^ имеем i-l т. е. 5^г определяется через уже вычисленные величины.
§ 6,8, Методы неполной факторизации 319 Все рассмотренные в данном пункте матричные факторизации LU- типа легко сводятся к ££)£/-разложениям, в которых D - диагональная матрица, а нижняя треугольная матрица L, как и С/, имеет единицы на главной диагонали, так как при L = {h,j}> Ϊ* — {h,j} LU = LOU, D = diag{/M}, L = {liyj = ii?i/ii,<} - LD"1. Если матрица А симметричная, то L — U , т. е. в формулах (6.196) hj/h,b ~ υ;,*, в (6.195) hj/l^i — uj.i и в (6.192) hj/h,i ~ Ujyi- Кроме того, в этом случае рассмотренные факторизации легко сводятся к неполному разложению Холесского (1С), так как при /г,г > О, L = U LDU = LU} L = LD1/2 = £/' = Р1/2!7. Рассмотрим теперь некоторые конкретные представления метода модифицированного неполного разложения Холесского (MIC) в применении к двумерным симметричным пятиточечным системам. Мы ограничимся описанием предобуславливающих матриц, имея в виду, что сам итерационный процесс идет по общей схеме, с возможным применением ускорения с помощью сопряженных градиентов или чебышевских параметров. И. Густафсоном было предложено обозначать через М1С(д) - от английских слов Modified Incomlete Cholesky - семейство алгоритмов, в котором q означает количество ненулевых элементов в строках матриц L или U = Z/, вводимых дополнительно по отношению к матрице А, При этом предлагается следующая процедура рекуррентного определения методов с последовательным увеличением индекса q. а. Сначала в треугольных матрицах L и U ненулевые элементы берутся только в позициях, где исходная матрица А имеет также ненулевые элементы, что соответствует значению q = 0. Соответствующее множество Ω определяет алгоритм М1С(0), который является не чем иным, как рассмотренным выше методом Булеева. б. Переопределим матрицы L и U таким образом, что к множеству индексов ненулевых элементов Ω добавляются те, которые соответствуют позициям ненулевых элементов матрицы R, Такой этап интерпретируется как увеличение q на единицу и переход к методу М1С(д) с очередным значением индекса. в. Если потребуется дальнейшее усложнение алгоритма, то очередной раз повторяются этапы "б" -и "в".
320 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Такой иерархический подход к построению семейства модифицированных (и немодифицированных) разложений Холесского имеет общий характер в том смысле, что применим к любой редкой матрице Л. Для пятидиагональной матрицы А структуры матричных треугольных множителей и их произведения в семейство алгоритмов MIC(g) изображены на рис. 21. ν ν ν ν L U Ш Рис. 21. Структуры матриц в методах MIC(g) Сплошными линиями обозначены диагонали, соответствующие q = 0, а штриховыми -1 = 1и</ = 3. При увеличении q происходит появление новых ненулевых диагоналей в ленточной полосе, и в пределе происходит ее почти полное заполнение, когда разложение матрицы на треугольные множители становится точным. 6.8.3. Неявные методы неполной факторизации для блочно- трехдиагональных систем. В этом пункте мы будем рассматривать алгоритмы решения уравнений вида (Аи)к = -LkUk^i + Dhuh - икчк+1 - Д, (6.198) к = l,2,...,m; Lx = Um = 0, где в общем случае ик - подвекторы размерности Nk вектора неизвестных и{ик}, SkDkjiLk,Uk" соответственно квадратные и прямоугольные матрицы с числом строк Nk. Напомним, что в пятиточечных системах уравнений для двумерных задач Dk - диагональные матрицы, если ик соответствуют узлам сетки на диагоналях с номерами к — г + j — 1; если же ик означают совокупности значений сеточных функций на горизонтальных или вертикальных координатных линиях (к = г или к = j), то Dk - трехдиагональные матрицы.
§ 6.8. Методы неполной факторизации 321 Соответственно таким матричным структурам итерационные алгоритмы можно называть явными или неявными . Это связано главным образом с легкостью реализации явных методов на основе простых рекуррентных формул, в то время как неявные требуют решения вспомогательных подсистем уравнений. А. Вспомогательная задача: ленточная аппроксимация матрицы, обратной к ленточной матрице При построении описываемых ниже неявных методов неполной факторизации возникает нетрадиционная задача линейной алгебры - нахождение ленточной части матрицы (G~1)^p\ обратной к ленточной матрице G. Оказывается - и интуитивно этого следовало ожидать, что решение этой задачи можно осуществить гораздо экономичнее, чем просто обращение матрицы. Мы изложим такой алгоритм, причем в силу практической значимости и простоты сначала остановимся на частном случае - вычислении трехдиагональной части матрицы, обратной к трех- диагональной матрице. ' Пусть № = {*£. } ~ '"и столбец матрицы порядка TV, обратной к трехдиагональной матрице G = {-а^, Ь*, — с*}. Согласно определению его компоненты ц являются решением системы уравнении -Mfcli+M^-Cfctfc+i =**.«> * = 1,2, ,..,#; аг = cN ^ 0, (6.199) где 5k,ι - символ Кронекера. Нас в данном случае интересует только диагональный элемент t\* и примыкающие к нему компоненты ί\\> t{l) В силу специфической правой части системы (6.198) ее решение удовлетворяет однородным рекуррентным соотношениям 4° =0*4+1. * = 1-1, ί - 2 1, (6.200) 4° = ft*i-i> * = ' + 1, / + 2,..., iV, (6.201) где fik и β% суть коэффициенты методов прогонок с обычным и противоположным направлениям счета: & = τ—С±~1Г-- * = i,2,...,iv, - bk~Z'^1 (6-202) о* - Ckfik+i
322 ГЛ. 6, ИТЕРАЦИОННЫЕ МЕТОДЫ Подставляя в 1-е уравнение системы (6.197) члены ί}^ и t\^x соответственно с помощью выражений (6.199) и (6.200), после приведения подобных получаем простую формулу для диагонального элемента: t\l) = (Ь, - α,Α-i - ciA+i)"1. (6.203) Значения же t\_x t\^_x вычисляются через t\ ' соответственно из (6.200) при к = I - 1 и (6.201) при fc = / -Η Ι. Поскольку для нахождения элементов других столбцов надо вычислять аналогичные частичные решения систем вида (6.199), отличающихся только правыми частями, то рассчитывать /3* и 0к требуется всего один раз. Простой анализ этого алгоритма показывает, что его реализация требует выполнения в общем случае 10iV арифметических операций, т. е. почти столько же, сколько в методе прогонки для решения трехдиагональной системы с правой частью общего вида. Сделаем одно важное методическое замечание, следующее из формул (6.200)-(6.203): неотрицательность коэффициентов аку с* является необходимым условием монотонности трехдиагональной матрицы системы уравнений (6.199). Действительно, если хотя бы одно значение ск (или ак) отрицательно, то среди величин /3*. (или /3&) также будут отрицательные, а это приводит к знакопеременности элементов обратной матрицы tk\ вычисляемых по формулам (6.202), (6.203). Данный подход в применении к решению систем уравнений с трех- диагональными матрицами получил в литературе название метода встречных прогонок (см. § 5.1). Рассмотрим принцип его обобщения на случай матриц с произвольной ширины ленты. Пусть некоторая ленточная матрица порядка N на fc-й строке имеет ρ — 2q+l ненулевых элементов cS~q\ ,.., ак, a^ , ak,..., (g) ак, перечисленных нами в порядке их следования вдоль строки слева направо (ак - диагональные элементы). Тогда вычисление элементов 1-го столбца дк * обратной к ней матрицы сводится к решению системы уравнений (-9) (-1) , (о) (1) -a* 9k-q - ... - a; }gk~i + а>к дк - а\ дк+х - ... -a[9)gk+q - ίΜ, к = 1,2,... ,Ν, (6.204) где индексы / при дк для краткости опущены, а в уравнениях надо понимать, естественно, что члены с индексами к — q < 1 или к + q > N опускаются, т. е. соответствующие коэффициенты равны нулю. Решение этой системы может быть представлено в виде
§ 6.8. Методы неполной факторизации 323 gk = /#Wi + ■ · · + Pl9)9k+q (6.205) для к < I и в форме ρ* = α^Λ-ι + ... + а^Л_, (6.206) при к > I. Для коэффициентов а^ , /^ этих соотношений несложно получить рекуррентные выражения по условиям их удовлетворения исходным уравнениям (6.203). Остановимся на примере семиточечных уравнений, причем для общности в (6.204) при q — 3 вместо Skft берем Д, т. е. фактически рассмотрим численное решение ленточной системы, которое ищем в виде 9k - 41 Wi + Р£]9к+г + P(*]9k+i + zh. (6.207) Введенные здесь величины Zk находим с помощью обратной рекурсии ^^i'Vi + ^Vs + A. Подставляя Zk из первого соотношения во второе, получаем равенство -- βΙ-1](9«-ι - βί1!^ - tflrfk+i - Pi3ll9k+2) - fc2)(9k-2 -β&θΗ-ι - $l2gk - $l29k+i) (6.208) -^_3)(да-з -filkl39k-2 -/CU-i -/iV) = Λ· Приравнивая коэффициенты соответствующих членов этого выражения и уравнения (6.204), получаем следующие формулы: ύ-Λ) = *Γ\ βΙ-2) = «ϊ-2)+βί-3)-βΙ% fr" = «^ + fc2) ■ f№ + β^βΐ^ (6-209) требующие, как легко подсчитать, всего лишь 217V арифметических операций. τη (-3) (3) п Если здесь положить, например, агк ' — аКк = 0, то автоматически следуют формулы для пятидиагональных ленточных матриц:
324 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ βϊ~2) βϊ] βΐ] Λ-2) βϊ-1]-^1]+βϊ-2)βϊ% » -βϊι)β& βϊ~2) Рк-2' = 41)+rirl)&+<t4tl» № = · тов ак f Аналогично могут быть выведены выражения и для коэффициен- , а)?' из формулы (6.206) для прогонок с противоположным направлением счета, как для пяти-, так и для семидиагональной матрицы (более "широкие" ленточные матрицы с ρ > 9, по-видимому, редко будут использоваться на практике). Если теперь выписать соотношения (6.208) - для к = I -\- q, I + q — 1,... ,ί + 1, то получим систему (1 -f 2q) уравнений относительно неизвестных gk-qj..,gk+u дк, ^+1,... ,gk+q. Матрица этой системы имеет специальную структуру, которую легко понять из приводимого ниже примера для 2# + 1 — 7 (нижний индекс к мы для краткости опускаем): 1 0 0 а~3 0 0 0 -0(1) 1 0 -а<-а) -аМ -0 0 _0<2) -0(1) 1 -о*"1) -a<2> _a(3) 0 _0<3) -/3<2> -PW a<°> _a(D -aW _a(3) 0 -0(3) _/}<*) -a^ 1 a^) -a<2> 0 0 _0<3) -a<2> 0 1 a(D 0 0 0 -a<3> 0 0 1 Вектор правой части имеет среднюю компоненту, равную единице, а остальные - нулю. Решение системы с такой матрицей целесообразно проводить, очевидно, путем одновременного исключения "крайних" неизвестных: первого и последнего, второго и предпоследнего и т. д. В итоге сначала вычисляется "центральное" неизвестное дк, а затем на обратном ходе алгоритма определяются последовательнодк~\ и <?λ+ι, ...}дк-я и дк+а- Трудоемкость такого метода существенно меньше, чем при обычном порядке метода исключения Гаусса, и число арифметических действий здесь равно примерно q3. Поскольку для нахождения ленточной части обратной матрицы необходимо решить N таких систем, суммарный объем вычислений для данной задачи пропорционален Nq3, Рассматриваемые в данном параграфе алгоритмы основаны на том важном свойстве М-матрицы со строгим диагональным преобладанием, что у обратной к ней матрицы в каждом столбце максимальный
§ 6.8. Методы неполной факторизации 325 элемент находится на главной диагонали, а при удалении от нее значения внедиагональных элементов уменьшаются. Для трехдиагональной матрицы системы уравнений (6.199) этот факт мы установим с помощью формул (6.200)-(6.203), определяющих элементы одного столбца обратной матрицы. Пусть элементы всех строк удовлетворяют неравенствам ак < а, ск < с, Ьк > Ъ, Aac <b2(l- j2), j < 1. (6.210) Тогда величины $к и Д, как несложно показать с помощью их монотонных зависимостей от к,ак,Ьк и ск, не превосходят соответственно значений которые являются предельными в рекуррентных последовательностях (6.200), (6.201) при ак = а, Ък = Ь, ск = с. Из (6.210), (6.211) следуют, в свою очередь, неравенства /?<^(1-7), /3<^(1-7). (6-212) которые вместе с (6.203) позволяют получить оценку для диагональных элементов i,(1) < t = ^-^ = l//bj. (6.213) Отсюда для внедиагональных членов обратной матрицы получаются неравенства ή'13<ίβ\ t\4.<0·, (6.214) где s означает номер побочной диагонали в следующем смысле: s — j — г для j > г ш з — г — j для г > j, где г и j - номера строки и столбца матрицы. В частности, если трехдиагональная матрица есть Dk из модельной двумерной задачи, для которой 6 = 4 и α = с = 1, то из приведенных оценок вытекают следующие конкретные значения: η2 — |> β ~ 2-V3, « = 5jj. Б. Построение предобуславливающих матриц В п. 3.1.3 мы уже рассматривали для блочно-трехдиагональных матриц вида (3.25), или А = D - L - U D = {£>*}, L — {£*}, U — {Uk} - блочная диагональная, нижняя и верхняя треугольные матрицы, разложение на множители в виде
326 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ A = (G- L)G~~l{G - U), (6.215) где G — {Gk} ~ блочно-диагональная матрица с блоками, которые определяются из рекуррентных соотношений Gi =£>ь Gh = Dk - LkGt^Uk-ι, * = 2,...,m. (6.216) Поскольку вычисление матриц Gk представляет трудоемкую процедуру из-за операции обращения в (6.216), естественно попытаться найти более "дешевое" приближенное факторизованное представление вида (6.215) с целью использования его в качестве предобуславливающей матрицы итерационного процесса. Такая неполная факторизация заключается в замене соотношений (6.216) на аналогичные, в которых используется ленточная аппроксимация матрица, обратных к ленточным матрицам: K = {G-L)G~X(G-U), ' Д (6.217) GX=DU Gk^Dk-Lk(G-\)(p)Uk^-eSk, fc = 2,...,m. Здесь (В)^ означает "ленточную часть" матрицы Б, т. е. ленточную матрицу с шириной полосы р, у которой элементы внутри этой полосы те же, что у В. В определение Gk добавлен числовой параметр О < ^ < 1, а также диагональная матрица Sk, элементы которой находятся из принципа компенсации, или согласования строчных сумм предобуславливающей и исходной матриц при 0 = 1: Ке = Ае. (6.218) В силу легко проверяемых соотношений G = D- LiG-^U - 0S, S = {S*}, К = G-L-U + LG^U = А + L[G~l - (G~X)^]U - OS (6.219) соотношение (6.217) эквивалентно равенству Se = L[G'1 - (G-x)M]Ue, (6.220) которое приводит к цепочке легко реализуемых соотношений Si - 0, Ske = Lk[G^ - (Gilj^llb-ie, k - 2,..., m. (6.221)
§ 6.8. Методы неполной факторизации 327 Действительно, если Dk - трехдиагональные матрицы, то Gk при ρ > 3 являются ^-диагональными матрицами и их вычисление проводится с помощью описанных выше алгоритмов ленточной аппроксимации матриц, обратных к ленточным. Отсюда происходит и возможное название данного семейства алгоритмов АВ1(р) - от английского Approximate Banded Inverse. Если в (6.221) обозначить вектор g = Uk~ie, то нахождение вектора Ske — {$*,*: }ι компоненты которого являются исходными диагональными элеменами 5*., заключается в умножении g на ленточную матрицу (w = (G^l^^g), решении вспомогательной системы с ленточной матрицей (G^vJ — g) и заключительного простого вычисления Lk(w — w). Как видно из (6.220), (6.221), если ширина ленты ρ увеличивается до максимального порядка Z?fc, то нормы матриц G^1 — (G^1)^ и Sk стремятся к нулю, и в пределе мы имеем К —> А^ т. е. замыкание АВ1(р)-алгоритмов в том смысле, что при использовании предобусла- вливающих матриц (6.217) итерационные методы переходят в прямой метод (это один из вариантов метода матричной прогонки). Если ρ ~ 0 и 6> = 0, то G ~ Dn мы получаем неявный SSOR-метод с неоптимальным значением параметра ω — 1. Предпосылкой к изучению описанных методов является надежда на то, что между двумя известными "крайними" алгоритмами данного семейства существует "золотая середина", т. е. некоторые значения ρ и 0, обеспечивающие минимальные суммарные вычислительные затраты (оцениваемые произведением числа итераций η (ε) на объем вычислений Q, необходимых для реализации одного итерационного шага, если пренебречь трудоемкостью расчета матриц Gk, что делается один раз до начала итераций). Перейдем теперь к реализации самого итерационного процесса (с ускорением сопряженными градиентами или чебышевскими параметрами - на вопросах их обоснования остановимся позже). Наиболее трудоемким этапом каждой итерации является решение вспомогательной системы (G - L)G~l(G - U)vn = rn. (6.222) С введением промежуточного вектора wn = (G — U)vn эта процедура осуществляется в два этапа: (G - L)wn - rn, (G - U)vn = Gw11, (6.223) каждый из которых связан с решением блочно-треугольной системы уравнений. С учетом блочной структуры матриц вычисления подробнее представляются в виде
328 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ C?i< = r?, Gkwl^rl+LkW^, к = 2,...,т, <=«>», Ghzf! = U„v}l+l, vl = wl+zl, (6.224) k = m — 1,..., 1. На прямом и обратном этапах каждой итерации требуется решить соответственно га и т — 1 ленточных подсистем с матрицами Gk, что при их предварительном запоминании в оперативной памяти компьютера легко осуществляется методами прогонок. Этим и оправдывается употребление слово "неявные" в названии семейства методов. Например, для ρ = 3 трудоемкость каждой итерации в точности та же, что и в блочном SSOR-методе. Если матрицы L и U содержат более одной ненулевой диагонали, то формулы (6.217) не порождают р-диагональные матрицы G*. В этом случае их можно обобщить, записав в виде Gk = Dk - {LtG^Uk-jW - 6S, , mi (0.2251 Ske = [LkG^Uu-jWfa где B^ означает "Ω-портрет" матрицы Б, т. е. матрицу, у которой на множестве индексов Ω элементы те же, что у В, а остальные равны нулю. В этом случае формулы (6.225) включают метод Булеева, MIC(g)- методы для пятиточечных уравнений с подиагональной упорядоченностью узлов, в также порождают семейство методов неполной факторизации для девятиточечных и других типов блочно-трехдиагональных систем. В заключение проведем дальнейшее обобщение рассмотренных методов, включающее сразу два новых фактора. Первый связан с введением дополнительного итерационного параметра ω в определение пре- добуславливающей матрицы К', что позволяет практически "бесплатно" включить в получаемое расширенное семейство все SSOR-методы. Второй аспект связан с использованием обобщенного принципа согласования строчных сумм, состоящего в использовании вместо вектора е в условии (6.218) некоторого другого вектора у с положительными компонентами: Ку = Ау, у> 0. (6.226) В таком обобщенном методе неполной факторизации предобуславлива- ющая матрица описывается формулами
§ 6.8. Методы неполной факторизации 329 К - (G - LJG"1^ - f)> G = -I> - (LG"1!/)^) - 0S, ω _ (6.227) 5y - [LG"1!/ - (LG^i/)^ - ?—±D]y. Такая формулировка представляет широкое поле деятельности для исследования оптимизации алгоритмов, и большая часть возникающих здесь вопросов является открытой. Отметим также, что ряд оригинальных идей для конструирования предобуславливающих матриц, не рассмотренных нами, изложен в книге [4], содержащей обзор результатов Н. И. Булеева. В. Теоретическое обоснование методов неполной факторизации Исследование итерационных методов включает два главных вопроса: корректность алгоритма и оценка скорости сходимости итераций. В общем случае вопросы эти для методов неполной факторизации не решены, и мы ограничимся частным (но актуальным для многих приложений) классом блочно-трехдиагональных стилтьесовских матриц Ау т. е. симметричных М-матриц. В этом случае проблема сводится к доказательству стилтьесовости матриц G (этого достаточно для симметричности и положительной определенности предобуславливающей матрицы К), а также оценке числа обусловленности матричного произведения К~хА. Теорема 6.21. Пусть матрицы Gk определяются из рекуррентных соотношений (6.217), где 0 < θ < 1, Lk, Uk - неотрицательные, α Ι)& -- Μ-матрицы. Пусть также выполняются условия HVbfclloo = h, \\D-1Uk\\0o=uk, Wi < lk+1uk < щ~щ, (6-228) (0Ые* < ctG^ek, 0 < α < 1. Тогда справедливы неравенстпва \\G?Uh\U - 2Uk - 1 + ν/1 - Щк+1ик ' !|G*'tffclU < 2ufc^-, β - θ + (1 - θ)α. (6.229) Доказательство обоих неравенств является следствием легко проверяемых соотношений
330 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Uk и применения принципа математической индукции. Здесь для оценки нормы матрицы, обратной к монотонной матрице в квадратных скобках, применена теорема 3.10 из третьей главы, с использованием векторного неравенства DkxGkek = {Ek-D^Lk[eGj;1 + (1 - e)(G^x)^]Uk^}ek > (l-jSifcllGil^fc-iHooJe*, справедливого в силу определения матрицы Sk и условий самой теоремы. D Из последнего результата несложно выводятся соотношения DkxGkek > (l-/3Zfc«fc-i||C?^1^-i||)efc=7*efc) а для определенных таким образом величин 7fc ~ рекуррентные неравенства Ik >l~/?^bi, к -2,3,...; 71=1- (6.230) 7fc-i Отсюда получаются по крайней мере два следствия доказанной теоремы. Следствие 1. При условиях теоремы 6.21 справедливы неравенства fe + 1 Следствие 2. При условиях теоремы 6.21 и выполнения неравенств 1к < I, ик < и справедливы неравенства 7& > 7? г^е величина 7 является наибольшим корнем квадратного уравнения 72-7 + №-0, 7- \ (ΐ + χ/ΐ-4/Зь]. (6.231) Оба следствия доказываются по индукции и автоматически дают невырожденность всех Gj.. Эти утверждения имеют важный смысл еще по той причине, что матрицы Gk имеют строгое диагональное преобладание, если таковым свойством обладают матрицы £)&, т. е. при условиях Dkek > dkCk, dk > 0, имеем неравенства
§ 6.8. Методы неполной факторизации 331 Gkek >dklkek. (6.232) Особо важно, что величина диагонального преобладания не зависит от порядка матрицы, что означает, в терминологии С. К. Годунова [11], ее хорошую обусловленность и, как следствие, устойчивость метода прогонки (для ρ — 3) при решении вспомогательных систем (точнее, накапливаемая погрешность округлений ограничена величиной, не за- висящей от порядка). Отметим, что теорема 6.21 и ее следствия доказаны без предположения о симметричности матрицы А, хотя мы в этом пункте и рассматриваем только стилтьесовые системы. Естественно также, что порядки матричных блоков Dk, Gk могут быть разными - это никак не оговаривалось в доказательстве. Таким образом, проблему корректности рассматриваемых алгоритмов можно считать для данного класса систем (с блочно-трехдиа- гональными М-матрицами) законченной. Если матрица А стилтьесова, что включает условия Lk ~ Ujt,_l и lk > О, то матрица G, очевидно, также будет симметричной и иметь неположительные внедиагональные элементы, что в совокупности с показанным строгим диагональным преобладанием обеспечивает ее стил- тьесовость. При этом блочно-треугольная матрица G — L будет невырождена, а отсюда следует, что предобуславливающая матрица К будет симметричной и положительно определенной вследствие ее конгруент- ности с G1. Открытым оказывается вопрос о существовании неполной факторизации в общем случае, когда А не является М-матрицей, если даже она и положительно определена. Такие ситуации возникают, как правило, в конечно-разностных аппроксимациях повышенной точности. Как следует из общей теории итерационных процессов, скорость сходимости итераций при решении линейных систем уравнений с симметричной положительно определенной матрицей А и применении обладающей такими же свойствами предобуславливающей матрицы К определяются числом обусловленности произведения К'1 А. Очевидно, что его собственные числа вещественны, положительны, и нашей целью в данном параграфе будет нахождение их максимального и минимального значений. Если λ и ζ - собственные числа и вектор, определяемые равенством Κ~ιΑζ ~ \ζ, то для обобщенного отношения Релея р(и) — (Кии) ^ ^ легко обнаруживаются следующие'свойства:
332 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ а = min{p(u)} < λ = \^*,Ζ\ < max{p(u)} = 6. (6.233) ифО (ΚΖ) Ζ) u^O Отсюда мы будем исходить при нахождении нижней и верхней границ спектра а и Ь, Предполагая, что матрицы А = D — L — U и К являются стил- тьесовыми, причем последняя определяет семейство методов неполной факторизации в достаточно полной форме: К = (G - L0)G~l(G -Uo) = G-Lo~U0 + L0G"lUQ, G = D + L0-L + Uq-U- LqG~1Uo - 9S, O<0<1, Sy = (L0G-lUo - Ьо^ЧГо, У > 0, (6.234) мы можем установить простое соотношение К = А - [S - (LoG-Wo)] + (1 - 0)S, (6.235) Здесь, как и раньше, 5 - диагональная матрица, а надчерк используется для обозначения приближения "снизу", в определенном смысле, к неотрицательной матрице, с условием 0 < LqG~1Uq < LqG~1Uo. Обозначение В содержит как частный случай рассмотренное выше понятие Ω-портрета матрицы Матрицу G считаем стилтьссовой, a L0 ~ Щ - нижней треугольной или блочно-треугольной; отличие матриц Lo, Щ от L,U позволяет расширить класс рассматриваемых алгоритмов, в частности включить изложенное в п. 6.7.2 семейство методов неполного разложения Холес- ского. Отсюда для произвольного вектора и справедливо неравенство (Кщи) < (Аи,и) + (1 - 0)(Su,u), что позволяет выписать оценку (Аиу и) а в которой величины а и β определяются из условий (Аи,и) > a(w,n), (Su,u) < /3(u,u). Таким образом, в качестве нижней границы спектра в формуле (6.233) можно взять
§ 6.8. Методы неполной факторизации 333 а= [l-f(l-0)-]~\ (6.236) Несколько сложнее обстоит дело с получением верхней оценки спектра матрицы К~ХА. Мы сформулируем следующую важную теорему Боувенса-Нотея (см. [5, 32]), в формулировке которой для "внедиаго- нальной части" матрицы используется обозначение off(B) = В - diag(B) = В - (В)*1). Теорема 6.22. Пусть А — D — L — U, а предобуславливающая матрица К определяется соотношениями (6.234), причем матрицы A, D, G являются стилтьесовыми и выполняются дополнительные условия L'0 = U0> L', Ay > О, Ку > (1 - т)Ау, τ = mzxiiG^Uoy)} < 1, off[(l + r)G - D] < 0. i Тогда для любого вектора и справедливо неравенство (Кщи) > (1-т)(Аи,и). Для доказательства введем в рассмотрение вспомогательную симметричную матрицу В - (С - LQG^)G{C - G^t/o), (6.237) где G определяется из (6.234), а С - диагональная матрица, вычисляемая с помощью формулы Cy^G-'Uoy. (6.238) Очевидны выполнение векторного равенства By = 0, (6.239) а также положительная пол у определенность матрицы В. Рассмотрим еще одну вспомогательную матрицу Q = if (1 - г)А - В. (6.240) Нашей целью будет показать ее положительную полуопределенность, откуда в силу такого же свойства матрицы В последует необходимое утверждение теоремы. Для этого можно непосредственно убедиться, во- первых, в справедливости векторного неравенства Qy > 0 при условиях теоремы, а во-вторых, в неположительности внедиагональных элементов матрицы Q. Последнее вытекает из следующей цепочки преобразований:
334 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ Q - G - L0 - U0 - (1 - τ) Α - CGC + L0C + CuQ = G - r2G - (1 - т)£> + r2G - CGC - (1 - r)(L0 -L + Uo-U) - (tJS - G)L/0 - L0(rE - C) = (1 - t)[(1 + r)G - D] + (tJS - C)G(rE - C) + (ri?)GC + GG(r£ - G) -(1 - t)(L0 - L + ϋΌ - U) - (тЯ - C)ub ~ ЫтЯ - С), поскольку τ Ε — G представляет собой диагональную матрицу с неотрицательными элементами. Из проведенного доказательства и выражения (6.236) вытекает Замечание 3. При условиях теоремы 6.22 для числа обусловленности матричного произведения К~гА справедлива оценка condiK^A) < Дальнейшая проблема заключается в определении величины τ при заданной матрице G~x£/o, а также в возможной минимизации полученной оценки за счет варьирования предобуславливающей матрицы К. Остановимся теперь на некоторых частных случаях и начнем с семейства неявных методов неполной факторизации для решения блочно- трехдиагональных систем, использующих предобусдавливающие матрицы К у описываемые формулами (6.216), (6.220) с различными значениями индекса р. Проще всего получить результат, если ограничиться частным случаем 0 = 1. Теорема 6.23. Пусть пред обуславливающая матрица К определяется соотношениями (6.217), (6.221) и выполняются условия теорем 6Λ9 и 6.20. Тогда для числа обусловленности матричного произведения К~гА при 0 = 1 справедлива оценка сопа{К'гА) < т + 1, (6.242) если только выполняется дополнительно неравенство пм«{|| VCblU} < \· (6-243) Доказательство следует из непосредственного применения выражений (6.229), (6.241) с учетом упрощающих соотношений L = £0, U — Щ. Условие (6.243) во многих практических задачах легко удовлетворить за счет выбора соответствующей упорядоченности узлов и определения матрицы Dk, Uk- 1 + (1-0)£|/(1-τ). (6.241)
§ 6.8. Методы неполной факторизации 335 Согласно определению средней скорости сходимости итераций R при использовании ускорения сопряженными градиентами при т> 1 и обозначении т + 1 = h"1 из (6.242) мы получаем результат R = 2л/Л, (6.244) справедливый для достаточно широкого класса систем уравенений, в том числе, разумеется, для модельной задачи. Этот результат совпадает с оценкой (6.181) для явного метода симметричной последовательной верхней релаксации (SSOR) с сопряженными градиентами- Для блочного же метода SSOR мы видим, что R ~ 2ъ^\Пгу т. е. оценка скорости сходимости лучше, чем (6.244). Из многочисленных экспериментальных данных известно, что в действительности соотношение скоростей сходимости итераций - в пользу методов неполной факторизации. Таким образом, мы должны признать, что существующая техника оценки эффективности методов неполной факторизации еще далека от совершенства. Это подтверждает тот факт, что полученная оценка (6.244) никак не зависит от ширины ленты ρ в матрицах (?£, хотя очевидно, что при росте ρ мы в пределе получаем прямой безытерационный алгоритм. Для явных методов неполной факторизации, рассмотренных в пп. А, Б, теорема 6.21 уже неприменима, и получить результат предложенным путем мы не можем. Однако для необходимой оценки величины ||G_1i/||oo в методе Булеева можно поступить аналогично тому, как делалось выше, но с применением соотношений для gij} выведенных в п. А. А именно, вводя обозначение gk = max{^ --, г 4- j' — 1 = &}, можно выписать рекуррентные выражения >е_(о + МнД 91 = е> 4 = 12>... (6.245) 9k~i Здесь для простоты рассматривается случай 9ij = 1 и постоянных коэффициентов пятиточечных уравнений. Из (6.243) при дополнительных предложениях {a + b){c + d) <4, c + d<2 (6.246) легко вытекает неравенство для gk: Эк > 2^™т А; ~ 1,2,... и требуемая оценка -
336 ГЛ. 6. ИТЕРАЦИОННЫЕ МЕТОДЫ 777 IIG-^IU < ~^. (6.247) Отсюда получаем, после применения теоремы 6.20, что для скорости сходимости явного метода Булеева будут справедливы при условиях (6.243) почти те же соотношения (6.242), (6.244), что и для неявных алгоритмов. Отличие заключается в том, что т теперь есть количество сеточных диагоналей и надо положить т + 1 — \Z2h~1, после чего для скорости сходимости получается выражение R = 23/4лД. (6.248) Отметим в заключение, что перспективным направлением развития алгоритмов, их обоснования и оптимизации является использование аппарата теории графов в матричном анализе неполной факторизации.
ЛИТЕРАТУРА 1. Акселъсои О. (Axelsson О.) Iterative Solution Methods, Cambridge: Cambridge Univ. Press, 1994, 2. Аксель сон О., Барпер В. (Axelsson О., Barker V.A.) Finite element solution of boundary value problems: Theory and computations. New York: Acad. Press, 1984. 3. Березин И.С, Жидков Η.П. Методы вычислений. М,: Физматгиз, 1962, 4. Булеев Η.И. Пространственная модель турбулентного обмена, М.: Наука, 1989. 5. В аз о в В,, Форсайт Дж. Разностные методы решения дифференциальных уравнений в частных производных. М.: Изд-во иностр. лит., 1963. 6. Воеводин В.В., Кузнецов Ю.А. Матрицы и вычисления. М.: Наука, 1984, 7. Гантмахер Ф.Р. Теория матриц. М.: Наука, 1968, 8. Гелъфонд АО. Исчисление конечных разностей, М.; Наука, 1967. 9. Годунов С. К. Современные аспекты линейной алгебры. Новосибирск: Науч. кн., 1997. 10. Годунов С.К., Антонов А.Г., Кирилюк О. П., Костин В.И. Гарантированная точность решения систем линейных уравнений в евклидовых пространствах. Новосибирск: Наука, 1988. 11. Годунов С.К., Рябенький B.C. Разностные схемы. М.: Наука, 1977, 12. Голуб Дж.} Лоан Ч. (Golub G.H., Van Loan C.F.) Matrix computations. Baltimore: John's Hopkins Univ. Press, 1966. 13. Джордж А.} Лю Дон:. Численное решение больших разреженных систем уравнений. М.: Мир, 1984. 14. Дулан Э., Миллер Дж, Шилдерс У. Равномерные численные методы решения задач с пограничным слоем. М.: Мир, 1983. 15. Ильин В.П. Разностные методы решения эллиптических уравнений, Новосибирск: НГУ, 1970, 16. Ильин В.П. Численные методы решения задач электрофизики. М/. Наука, 1985. 17. Ильин В.П. (П'ш V,P.) Iterative incomplete factorization methods, Singapore: World Sci. Publ. Co., 1992. 18. Ильин В.Р. Методы неполной факторизации для решения алгебраических систем. М,: Наука, 1995, 19. Ильин В.Р., Кузнецов Ю.И. Трехдиагональные матрицы и их приложения. М.: Наука, 1985. 20. Лебедев В.И. Функциональный анализ и вычислительная математика. М.: ВИНИТИ, 1994. 21. Лисейкин В.Д. (Liseikin V.D.) Grid generation methods. Berlin: Springer-Verl., 1999. 22. Лисейкин В.Д., Петренко В.В. Адаптивно-инвариантный метод численного решения задач с пограничными и внутренними слоями. Новосибирск: ВЦ СО АН СССР, 1989.
338 Литература 23. Марчук Г. И. Методы расчета ядерных реакторов. М.: Атомиздат, 1958. 24. Марчук Г. И. Методы вычислительной математики. М.: Наука, 1980. 25. Марчук Г. И. Методы расщепления и переменных направлений. Μ.: ΟΒΜ АН СССР, 1986. 26. Марчук Г.И., Кузнецов Ю.А. Итерационные методы и квадратичные функционалы. Новосибирск; Наука, 1972. 27. Марчук Г.И., Лебедев В.И. Численные методы в теории переноса нейтронов. М.: Атомиздат, 1971. 28. Марчук Г.И., Шайдуров В.В. Повышение точности решений разностных схем. М.: Наука, 1979. 29. Ортега Дж. Введение в параллельные и векторные методы решения линейных систем. М.: Мир, 1991. 30. Ортега Дэн:., Рейнболт В. Итерационные методы решения нелинейных систем уравнений со многими неизвестными. М.: Мир, 1975. 31. Патанкар С. Численные методы решения задач теплообмена и динамики жидкости. М.: Энергоатомиздат, 1984. 32. Писсанецки С. Технология разреженных матриц, М,: Мир, 1988. 33. Рихтмайер Р.Д., Мортон К. Разностные методы решения краевых задач. М.: Мир, 1972. 34. Рояк М.Э., Соловейчик Ю.Г., Шурина Э.П. Сеточные методы решения краевых задач математической физики. Новосибирск: НГТУ, 1998. 35. Самарский А. А. Введение в теорию разностных схем. М.: Наука, 1971. 36. Самарский Α.Α., Андреев В.Б. Разностные методы для эллиптических уравнений. М.: Наука, 1976. 37. Самарский Α.Α., Гулин А.В. Численные методы. М.: Наука, 1989. 38. Самарский Α.Α., Николаев B.C. Методы решения сеточных уравнений. М.: Наука, 1978. 39. Самарский А.А. и др. Разностные схемы на нерегулярных сетках. Минск: Изд- во "Критерий", 1996. 40. Смелое В.В. Лекции по теории переноса нейтронов. М.: Атомиздат, 1978. 41. Толстых А.И. Компактные разностные схемы и их применение в задачах гидродинамики. М.: Наука, 1990. 42. Тыртышников Е.Е. Краткий курс численного анализа. М.: ВИНИТИ, 1994. 43. Фаддеев Д.К., Фаддеева В.Н. Вычислительные методы линейной алгебры. М.: Физматгиз, 1963. 44. Федоренко Р. П. Введение в вычислительную физику. М.: МФТИ, 1996. 45. Хейгеман Л.} Янг Д. Прикладные итерационные методы. М.: Мир, 1986. 46. Хорн Р., Джонсон Ч. Матричный анализ. М,: Мир, 1989. 47. Шишкин Г. И. Сеточные аппроксимации сингулярно возмущенных эллиптических и параболических уравнений, Екатеринбург, УРО РАН, 1992. 48. Яненко Н.Н. Метод дробных шагов решения многомерных задач математической физики. Новосибирск: Наука, 1967.
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Л-скалярное произведение 127 Аппроксимация — Коллатца 31 — монотонная 20 — первой производной 11 — Шортли-Уэллера 34 Вектор — невязки 251 — ошибки 251 — ошибки η-го итерационного приближения 251 Внутренний пограничный слой 191 Граничное условие — второго рода (Неймана) 8 — первого рода (Дирихле) 8 — периодичности 9 — третьего рода (Ньютона) 8 Диагональное преобладание — по столбцам 109 — по строкам 109 — строгое 109 Задача — редуцированная 189 — сингулярно возмущенная 188 Итерационный процесс — второй канонической формы 251 — канонического вида 251 — линейный 251 — стационарный 251 — сходящийся 251 Коэффициент — подавления ошибки 252 — сжатия 182 Круги Гершгорина 134 Масштабирующий множитель 23 Матрица — М-матрица 111 — баланса 58 — блочно-трехдиагональная 118 — верхняя хессенберговая 128 — глобальная источника 100 — глобальная системы 90 — ленточная 122 — локальная баланса 90 — локальная потоков 100 — Минковского 139 — монотонная 110, 143 — невырожденная 128 — неотрицательная 110 — неразложимая 109 — нормальная 126 — перестановок 109, 120 — перехода 251 — положительно определенная 112 — положительного типа 111 — предобуславливающаяся 251 — псевдомонотонная 146 — пятидиагональная 117 —- разложимая 109, 123 — семидиагональная 122 — Стилтьеса 111 — строго (вполне) невырожденная 123 — трехдиагональная 108 — якобиевая 110 Метод — η-шаговый минимальных невязок (MINRES) 291
340 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ — блочный (неявный) Зейделя 259 — блочный (неявный) Якоби 256 — быстрого преобразования Фурье 225 — встречных прогонок 202 — диагональных переносов (TS-алгоритм) 228 — Дугласа 300 — Зейделя 258 — интегро-балансный 67 — ηητθι ро-интерполяционный 65 — исключения Гаусса 123 — конечных объемов 57 — матричных прогонок 211 — минимальных невязок 281 — минимальных невязок с предоб- уславливанием 282 — модифицированного неполного разложения (MILU) 317 — модифицированного неполного разложения Холесского (MIC) 319 — наискорейшего спуска 278 — наискорейшего спуска с предоб- усдавливанием 281 — неопределенных коэффициентов 51 — неполного разложения Холесского (1С) 315 — неполной факторизации 309 — неявный переменных направлений (ADI) 293 — нижней релаксации 261 — Писмана-Речфорда 293 — попеременно-треугольный 304 -— последовательной верхней релаксации (SOR) 261 — преобразование Фурье 223 — прогонок 200 — простой итерации (Якоби) 255 — редукции 208 — Ричардсона 271 — Ричардсона с предобуславлива- нием 272 — симметричной последовательной верхней релаксации 304 — сопряженных градиентов 283 — сопряженных направлений 290 — условно сходящийся 174 — циклической редукции 210 — циклической редукции без обратного хода 210 — циклической редукции Бунема- на 220 — чебышевского ускорения 269 — явный Булеева 309 — явный переменных направлений 304 — явный, неявный 321 — Яненко-Келлога 302 Многочлен Чебышева 1-го рода 273 Норма — Л-норма 127 — "взвешенная сеточная евклидо- вая" 160 — Гельдера 125 — евклидовая (сферическая) 125 — октаэдрическая 126 — подчиненная 126 — равномерная (кубическая) 125 Оператор — дифференцируемый по Фреше 184 — Лапласа пятиточечный разностный 15 — сжимающий 182 Отношение Рэлея 112 Погрешность аппроксимации 10 Подпространство Крылова 286 Порядок — итерационного процесса 251 — погрешности 10 Преобразование конгруэнтности 129 Принцип — компенсации 312 — согласования строчных сумм 313 Разложение — спектральное 126
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 341 — Холесского 124 Разность (конечная) — вперед 10 — второго порядка 12 — двусторонняя первого порядка 10 — левая 10 — назад 10 — односторонняя 10 — правая 10 — трехточечная 11 — центральная 11 — четвертого порядка 13 Сетка — квадратная 14 — кубическая 29 — параллелепипедоидальная 27 — прямоугольная 14 — равномерная 14 — точечно-ориентированная 77 — треугольная 84 — элементно-ориентированная 77 Симметризация 23 Система уравнений — абсолютно монотонная 20 — неразложимая 20 — положительного типа 20 — симметризуемая 22 — симметричная 22 — условно монотонная 20 — якобиевая 23 Скорость сходимости итераций — асимптотическая 252 — средняя 252 Спектральное число обусловленности 130 Спектральный радиус матрицы 140 Схема — балансная 57 —- компактная 37 — консервативная разностная 57 Сходимость равномерная по малому параметру ε 189 Теорема — Аксельсона-Колотилиной 144 — Боувенса-Нотея 333 — Варги 142 — Гершгорина 128 — инерции 129 — о квазирегулярном разложении 143 — о норме матрицы, обратной к монотонной 141 — о среднем 185 — Островского 139 — принцип максимума 146 — принцип сжатых отображений 182 — сравнения 144 — Тауски 110 — Фробениуса 141 — Шура 127 — эквивалентности 157 — Янга-Франкела 267 Тождество — двумерное интегральное 64 — интегральное Г. И. Марчука 59 Тр иангуляция — Делоне 84 — области 84 Уравнение — 19-точечное 28 — 2 7-точечное 29 — девятиточечное Пуассона типа "ящик"(Микеладзе) 25 — девятиточечное типа "большой крест" 24 — диффузионно-конвективное 19 — диффузионное 26 — квазилинейное 191 — положительного типа 19 — семиточечное 28 — трехточечное 19 — эллиптическое в области 8 Ускорение Люстерника 255 Функции от матрицы 127
342 ПРЕДМЕТНЫЙ УК А ЗА ТЕЛЬ Число обусловленности 131 Ширина — пограничного слоя 189 — полу полосы 122 Ячейка Дирихле-Вороного 84
ОГЛАВЛЕНИЕ Введение. Основные задачи теории и практики сеточных методов 3 Глава 1. Конечно-разностные аппроксимации краевых задач 8 § 1.1. Приближения производных и дифференциальных выражений 10 § 1.2. Аппроксимации дифференциальных уравнений 16 § 1.3. Методы аппроксимации граничных условий 29 § 1.4. Компактные схемы повышенной точности для уравнений с переменными коэффициентами 37 §1.5. Метод неопределенных коэффициентов 51 Глава 2. Методы конечных объемов 57 § 2.1. Интегральное тождество Г. И. Марчука и его применение 58 § 2.2. Интегро-балансные аппроксимации 65 § 2.3. Аппроксимации на элементно-ориентированных сетках . . 77 § 2.4. Треугольные конечные объемы 84 § 2.5. Поэлементная аппроксимация на прямоугольной сетке ... 90 Глава 3. Алгебраические свойства сеточных уравнений 107 §3.1. Матричные структуры сеточных операторов 107 § 3.2. Спектральные характеристики матриц 125 § 3.3. Свойства монотонных сеточных схем 139 Глава 4. Сходимость приближенных решений 154 §4.1. Устойчивость сеточных уравнений. Связь ошибок сеточного решения и погрешности аппроксимации 155 § 4.2. Оценки погрешностей в евклидовой метрике 159 § 4.3. Равномерные оценки погрешностей 168 § 4.4. Сходимость сеточных решений квазилинейных уравнений 181
344 ОГЛАВЛЕНИЕ §4.5. Равномерная сходимость по малому параметру для сингулярно возмущенных краевых задач 188 Глава 5. Прямые методы решения сеточных уравнений 199 § 5.1. Методы решения систем уравнений с трехдиагональными матрицами 199 § 5.2. Методы факторизации для блочно-трехдиагональных систем 211 § 5.3. Методы вложенных сечений 214 § 5.4. Метод циклической редукции Бунемана 220 § 5.5. Методы преобразования Фурье 223 § 5.6. Метод диагональных переносов (2"£-алгоритм) для решения пятиточечных уравнений . . . 228 Глава 6. Итерационные методы 249 §6.1. Классификация и общие свойства итерационных методов . 250 § 6.2. Метод простой итерации (Якоби) . 255 § 6.3. Методы Зейделя и последовательной верхней релаксации . 258 § 6.4. Метод чебышевского ускорения 269 § 6.5. Градиентные итерационные методы 278 § 6.6. Неявные методы переменных направлений 293 §6.7. Метод симметричной последовательной верхней релаксации 304 §6.8. Методы неполной факторизации 309 Литература 337 Предметный указатель 339
Научное издание Ильин Валерий Павлович МЕТОДЫ КОНЕЧНЫХ РАЗНОСТЕЙ И КОНЕЧНЫХ ОБЪЕМОВ ДЛЯ ЭЛЛИПТИЧЕСКИХ УРАВНЕНИЙ Редактор издательства С А. Садко Операторы настольной издательской системы Н. Е. Козорезова} Л. М, Тарасевич Подписано в печать 23.08.2000. Формат 60 X 84 yie. Печать офсетная. Усл. печ. л. 20. Уч.-изд. л. 20. Тираж 400 экз. Заказ №73. Лицензия ЛР № 065614 от 8 января 1998 г. Издательство Института математики, пр. Академика Коптюга, 4, 630090 Новосибирск, Россия. Лицензия ПЛД № 57-43 от 22 апреля 1998 г. Отпечатано на полиграфическом участке ИМ СО РАН, пр. Академика Коптюга, 4, 630090 Новосибирск, Россия.