Н.Н. Калиткин - Численные методы (1133437), страница 90
Текст из файла (страница 90)
гл. П, ~ 2, п. 4), найдем а — Ь /(4 8!ПхЯР+ ) (53) где ЬР А! 4' р Р 0 р )!) 1 ! кх (54) являются дискретными коэффициентами Фурье правой части уравнения. Формулы (53), (54) позволяют найти искомое разностное решение. Однако эти формулы неэкономичны. Необходимо вычислить У коэффициентов Ьр, причем нахождение каждого коэффициента по формуле (54) требует примерно 2У операций. Следовательно, задача (51) решается за 2)Ух операций, т. е. много медленнее, чем в методе прогонки. Если число интервалов сетки составное, Л' =К1„ то формулу (54) можно преобразовать так, что требуемое количество операций уменьшится.
Представим индексы н и р в следу!ощем виде; Р! = (х+ 1,1„0 = (! - Л вЂ” 1, 0 =.1 = К вЂ” 1, р = рх+ Кр„О ( р, =- К вЂ” 1, 0 = рх ( Š— 1. Запишем формулу (54) в виде двойной суммы: с — !к — ! Ь =- — '! ~ (р ц! — Р ! — СР' — к! Р— ьк!хР*. Р=КХ 2, и+Ах, Отбросим в показателе степени последнее слагаемое, нбо и!Ах=1, и получим следующее выражение коэффициентов Фурье: !. — 1 Ь(р)=Ь = — ~~1 Ь((„р!)и! — Р', О~р р +Крх~й( — 1 (55) г, =-о где К вЂ” ! Ь(1„р,)= —. ~~1 ср, +ы и!-Ам!, 0~1,~Ь вЂ” 1, 0 =р, =.К 1, (56) Подставим разложение (52) в соотношение (51), умножим на ю Р=ехр ( — 2ихилр)14) и просуммируем по а от 0 до !!!' — 1. Заме.
чая, что и!!". х! х — 2п!"Р+ и!ы'х! х = — 4п!"Р з!н'— !у ' 418 эллиптические ээхвнения 1гл. хп Ь (1 1о 1с! Ро) ь — ! х Ь(1„1,,1„„, р„„)си- ', !о„с-э 1~й(»-2, Ь (1сю 1о~ "° ~ 1г-с~ Р~-!) = с — ! 1 СРР~ ! = 1, ~, срс, + сс, + с'с, + ... + с» сс,си Г с -о (57) причем Число вспомогательных коэффициентов л-го ранга Ь (1„, ..., 1„, РР) равно У, поэтому для вычисления коэффициентов всех рангов по формулам (57) требуется около 2У1.» операций.
Если учесть, что 1. =У'с', то нетрудно найти оптимальное число сомножителей »„, 1и У и оптимальное значение 1.,„, ~ ~е — 3. Но для программирования считается более удобным, если У = 2' и 1. = 2; в последнем случае требуемое число операций равно 4У.1оио У, что мало отличается от оптимального случая и почти не уступает по скорости методу прогонки. Обобщение этого метода на случай многих измерений очевидно. Пусть, например, для уравнения с постоянными коэффициентами и;... + 脄— ри = — 1(х„х,) поставлена первая краевая задача в прямоугольной области. Введем равномерную сетку (хс,=лй„х, =и!до, О.=.и~У, О:— Вычисление У коэффициентов Ь(Р) по формуле (55) требует 2У1. операций; вычисление (.К = У вспомогательных коэффициентов Ь(1„Р!) по формуле (56) производится еще за 2УК операций. Следовательно, число операций, необходимое для нахождения коэффициентов Фурье по формулам (55), (56), равно 2У (Е+К); оно существенно меньше, чем 2У' (например, при К=1.=3~ У меньше в )'У12 раз).
Если К в свою очередь разбивается на множители, то формулу (56) следует преобразовать аналогичным образом. Это позволяет еще уменьшить объем вычислений. Приведем без вывода рекуррентные формулы вычисления коэффициентов Фурье для случая У =7.': 1 Ь (Р) = — ~ Ь (1„р!) цс-Рс, с,-о 419 ВАРНАЦИОННО.РАЗНОСТНЫЕ МЕТОДЫ (и!(М) и составим разностную схему 1 ди (уп-1, т 2улт+ улп1, т) + 1 1 + !1и (Ул, т-1 2Улт+Уп, тп1) РУлт = 1Рпт (58) Будем искать разностное решение в виде разложения Фурье и — 1М вЂ” 1 Уп = ~ ~ а Н1лр1етп, Р44 4=а (59) и11 = ехр (2п!'/А1), и1, = ехр (2п1УМ).
Аналогично одномерному случаю, получим следующие выраже- ния для коэффициентов Фурье: а =5 р ( —,з!и' — + — „з1п' — +р) l/4 . ппр 4 . Нч РР= РР/(и; У А, "-И (60) где ЛГ !М вЂ” 1 1р и1- прю- т« 1 (61) п4ат О Запишем последнюю формулу в следующем виде: М вЂ” ! Ь = — э 6 и! "Р 1 чл РЧ А1,~! лд ! ! л О М вЂ” ! (62) Р 1 Каждая сумма в формулах (62) имеет тот же вид, что и в формуле (54). Поэтому, если А! и М разлагаются на множители, то каждую сумму можно вычислить по рекуррентным формулам типа (57). Если при этом А1 =Е и М = Ц', то число операций на каждый узел сетки, аналогично одномерному случаю, есть 0 (Р1Ь1+ Р,1.,) = 0 (! Ои (А1М)).
Следовательно, быстрое преобразование Фурье даже в многомерном случае по экономичности мало уступает самому быстрому одномерному методу — прогонке. Метод декомпозиции, или нечетно-четной редукции, применим для той-. же задачи, что и быстрое преобразование Фурье. Он использует исключение всех нечетных точек из системы уравнений типа (46). При Л(л = 2 " исключение выполняет- 1гл. хп эллиптические уРАВнения ся рекуррентно и число действий иа узел сетки составляет 0 (1оаз Ж).
1"1атр ична я прогонка применима даже для случая областей сложной формы. Число действий на узел сетки в этом методе есть 0 (Мл). Но если требуется решить на данной сетке большую серию задач с различными правыми частями и граничными значениями, то, сохраняя и используя результаты промежуточных вычислений, можно сократить это число действий до 0(Л'). Быстрые прямые методы обобщены в настоящее время на задачи в круге и области ступенчатой формы (в этих случаях их скорость падает). Однако для областей произвольной формы, а также для уравнения достаточно общего вида (2) удовлетворительных прямых методов пока не найдено.
4. Итерационные методы. В случае сложных задач неэволюциоииые разностиые схемы Ау= — Г решают итерационными методами. Простейшим из них является метод Якоби (5.51), относящийся к методам последовательного приближения. Для двумерного уравнения (46) он имеет вид ~1 1 + Ц1 Упт Ь) (Ул+ 1, т+Уп — 1, т)+А-' (Уп, т — 1+Уп, т+ 1)+~лт ' где й — номер итерации. Это выражение можно формально переписать следующим образом: а=1 Большинство итерационных методов можно символически записать в аналогичной форме: уь-1 Вл У ""'+Ау- = — (; (63) если В и т не зависят от номера итерации й, то процесс называют стационарным.
Итерационный процесс (63) можно рассматривать как разностную схему расчета некоторой эволюционной задачи. Эту задачу можно найти, определяя нулевое или первое дифференциальное приближение разностной схемы (63). Физический смысл найденной задачи не имеет значения; важно только, чтобы она соответствовала диссипативному процессу, т.
е. обеспечивала бы установление стационарного решения. Тем самым, несущественно, что именно аппраксимирует оператор В; он должен только: а) обеспечивать возможно более быстрое затухание нач льных дан-, ных и б) легко обращаться, чтобы решение у" вычислялось за малое число действий. 421 влиихционно-илзностныа матоды й,и„„+ й,и„„, =- — (' (х„хи). Запишем вспомогательное параболическое уравнение: а~=й1о„,„-,+А,э„„,+~(х,, х,). Выберем шаблон, показанный на рис. 90, н составим на нем чисто неявную разностную схему 1 — (б — У)=(л,+л)у+я, которую можно переписать в канонической форме: (е — ~л,— л,) ~ ~ — (л,+л,)у=~, (64) Как отмечалось выше, эта схема неэко- Рис.
90. номична, поскольку обращение оператора Š— тЛ, — тЛ, требует в общем случае большого числа операций на каждый узел сетки. Введем треугольные операторы 4 (Уют Уи-Ь т)+Лт (Усе Уи, т-1)* йа (Упт Усиь ш) +ля (Улл Уп, ел1)~ и (65) определенные на треугольных шаблонах (шаблон для )т, показан на рис.
90 жирными линиями). Нетрудно заметить, что Л,+Л, = =- — ()с, + К,), что позволяет записать схему (64) следующим образом: (Е+тй,+Ж,) ~ —" — (Л,+Л,)у=(р. (66) Слегка изменим схему (66), добавляя в левую часть член т')с,й,(у — у)!т, имеющий порядок малости О (т'). Возникающий при этом оператор Е+тйт+тй,+т%,й, фанторизуется, т, е. представляется в виде произведення операторов Е+Ю, и Е+тй,. Продольно-гоперечная и локально-одномерная схемы, которые можно формально рассматривать как итерационные процессы (63) для решения системы Ау= — ~, удовлетворяют этим двум требованиям.
Однако этим требованиям удовлетворяют также некоторые схемы, невыгодные для расчета параболических задач. Одной из таких схем является Попеременно-т р е уг о л ьна я с х ем а, которую мы рассмотрим на примере двумерного уравнения эллиптические уРАВнения [гл. хп Т1олучениую схему называют попеременно-треугольной: (Е+т)7,) (Е+тЕ,) е ~ — (Л,+Л ) у=~р. (67) Операторы Е+тВ легко обращаются, так что алгоритм вычисления разностного решения в этой схеме несложен и требует небольшого числа операций на каждый узел сетки. В самом деле, такие операторы уже встречались при составлении схемы бегущего счета (10.29) для многомерного уравнения переноса; организация вычислений в этом случае была подробно разобрана в гл, Х, 9 1, п. 4.
Схема (67) также решается посредством бегущего счета. На каждом слое сначала обращают оператор Е+тй;, вычисления при этом начинают с узла (хян х„) н ведут, например, по направлениям х„ доходя в конечном итоге до узла (х,н, х,м). Затем обращают оператор Е+тй„начиная вычисления с узла (х,н, х»м) и ведя их в обратйом порядке. Попеременно-треугольная схема естественно переносится иа случай любого числа измерений. Она легко обобщается на дифференциальные уравнения с переменными или разрывными коэффициентами и области б(х) сложной формы.