А.А. Самарский, Е.С. Николаев - Методы решения сеточных уравнений (1978) (1160094), страница 37
Текст из файла (страница 37)
Для коэффициентов Фурье г„,(!) имеем формулу (11), а из (9) получим м,-! и(1,21)= ~ у„,(У)у!1',~(у), 1<у<М,— 1, 1<У<ЛУ,— 1. (18) ь,=! Итак, формулы (!О), (11), (15) — (18) полностью описывают метод решения задачи (1), который является комбинацией методов разложения в однократный ряд Фурье и редукции. Переходим теперь к построению алгоритма метода. В формулах (9), (16) и (18) сделаем замену йь (!) =ау (!), и (!) =аи!„(!), г (!) =ил (У), где а=2)~ У!!!Л"„а в полученных формулах знак гильду опустим. Эта замена позволяет избавиться от нормирующего множителя 23"Ум стоящего при собственной функции р1',! (У) в суммах (1!) и (18).
Далее, задачи (16) и (17) будем решать методом прогонки. Легко убедиться в том, что здесь условия корректности и устойчивости обычного метода прогонки выполнены. Отметим особенность задач (17), Так как коэффициенты уравнения (!7) не зависят от у', то прогоночные коэффициенты а! следует вычислить один раз при решении задачи (17) для у=! и далее использовать при решении уравнений (17) для остальных у'. Приведем сводку расчетных формул. Сначала вычисляются а| '! ср(!', у)=У(У, 2у — 1)+У(!, 2у+1)+2 1+ — , ')У(!, 2у)— а, у2 — —," (У(У вЂ” 1, 21)+~(У+1, 21)), 1 1~1(М,— 1, 1<!<Л'! — 1, (!9) где У'(О, 2у)=у'(ЛУ„2у)=0. Значения ср(У, у) можно разместить на месте у(!, 21). Суммы м,-! гм(!) = ~'.„!Р(У, У)з!и — „', 1<й,<М,— 1 (20) у=! для 1 < У <Л',— ! вычисляются по алгоритму быстрого дискретного преобразования Фурье, и гь (!) размещается на месте <р(!, Л,).
Методом прогонки с !+ 1У(сь !х!) !6!+ = Из!! (!)+(1 ) а (У) =;,,(У+1)+8! „У =Л',— 1, ЛУ,— 2, ..., 1, (21) и! (ЛУ )=О, с =2+2 —,— 2 — соз— а! уь 1 ' ж а! а| у!у 202 решается первое из уравнений (16), н аналогично по формулам ! !а~ сы — ис с =- 1, 2, ..., Л"„— 1, а, = рс = О, у (с)=ас су„(с+1)+Ц„, с=Л',— 1, Л1,— 1, ..., 1, (22) у, (Лс ) =О, с„=2+2 — '+2 — 'соз — ' м,-с и(с', 21) = — ~~», у„(с) зйп — ', 1<! <М,— 1, (23) 2 с ы=! для 1 < с < Ус — 1 снова используем алгоритм быстрого преобра- зования Фурье. Задачи (17) решаются методом прогонки с уче- том отмеченной особенности этих уравнений: ас„,=1!(с — я;), с=!, 2, ..., Лсс — 1, а,=О, !)с„= ~!с(Цс, 2! — 1)+ — , '(и (с, 2! — 2)+и(с, 21))+!)с] ясэс, с=!, 2, ..., Лс — 1, рс=О, и(с, 2! — 1)=я;ыи(с+1, 2! — 1)+6!~с„ с =- Лсс — 1, Л', — 2, ..., 1, сс (Л1„2! — 1) = О, с=2(1 ! Л)сйс) (24) для 1<1 <М,.
Решение и(с, !) размещается на месте 7'(с, !), и, следовательно, алгоритм не требует дополнительной памяти для промежуточной информации. Подсчитаем число арифметических действий для алгоритма (19) — (24). Для вычисления по формулам (19), (21), (22) и (24) требуется (~„=(6,6Лс,— 9) (Лсс — !) операций сложения и вычитания, Я, = (6Лсс — 8) (ЛСс — 1) операций умножения и = (Лс,— 1) (Лсс — 1) операций деления.
Для вычисления сумм (20) и (23) потребуется С С ь = '(( ~ !ой Лс, — ~ ) Лсс — 2 1овс Лс, + 61 (Лсс — 1) сз 7т операций сложения и вычитания и решается второе нз уравнений (!6). Здесь вычисления проводятся последовательно для й,=1, 2, ..., М,— ! и результаты цс„(1) и у„(с) размещаются последовательно на месте г (с).
Для вычисления сумм операций умножения, Всего же алгоритм (19) — (24) требует при У, = У, =- У = 2" Я=(М' — 2М)(2!он,М+9) — 2М+21ойаУ+11 (25) арифметических операций. Для сравнения приведем число операций метода разложения в однократный ряд (см. и. 3 э" 2): Я = ! Уа — — М) (4 1ой, У+2) — У+2! ода У+ 2, (26) метода разложения в двойной ряд (см.
п.2 $ 2): Д = (№ — — У) (8!ой, У вЂ” 10)+5М+4!од,У вЂ” 10, (27) а также число операций для второго алгоритма метода полной редукции (см. гл. 111, й 2, п. 4): Я = (У' — — М) (5 !ода У+ 5) + У+ 6 1ой, М-1- 5. (28) Если сравнить в оценках (25) — (28) константы при главном члене У'1оиа У, то получим, что комбинированный метод требует примерно в 4 раза меньше арифметических операций, чем метод разложения в двойной ряд. Этот вывод верен при больших М. Для получения реальных соотношений между рассматриваемыми методами при допустимых У приведем таблицу, содержащую значения Я для этих методов.
Таблица 4 Итак, комбинация методов Фурье и редукции позволяет уменьшить число операций по сравнению с исходным методом разложения в однократный ряд. Обобщим этот комбинированный метод, включив в него ! шагов исключения метода редукции перед выполнением разложения в однократный ряд.
Тогда метод из и. 3 э 2 можно трактовать как частный случай такого обобщенного метода с 1=0, а построенный в этом пункте метод соответствует 1= 1. Метод полной редукции можно рассматривать как метод с 1= !ода Л',. Данные табл. 4 показывают, что существует оптимальный с точки зрения затрат арифметических операций обобщенный метод с 1 (1(!оя, У,. Анализ оценок для числа действий в методе, содержащем ! шагов редукции, дает оптимальное значение 1=1 или 1=2. При этом незначительное преимущество в числе дей- 204 ствнй метода для 1=2 может быть утрачено нз-за возросшей сложности алгоритма.
2. Решение краевых задач для уравнения Пуассона в прямо- угольнике. Рассмотрим теперь применение построенного в п. 1 метода к нахождению решения краевых задач для уравнения Пуассона в прямоугольнике. Пусть в области 6=(0<х„<1„, а=1, 2) требуется найти решение уравнения д~о д~о —,+ — а —— — ф(х), хазби (29) д4 д4 удовлетворяющее следующим краевым условиям на границе Г прямоугольника 6: ди =и р — д,(х,), х,=О, «1 ди и+Р Ы+~ (ха) ~ дх~ — = — д, (х,), (30) — = — д,(х), х,=)„0<х,<Е„ где х„) О, и,) О, х'„+ и', ) О. Будем предполагать, что в условиях (30) и, и х+,— постоян- ные. При этом предположении переменные в задаче (29), (30) раздел яются.
На пРЯмоУгольной сетке ы=(х,— ((ь Р,)ч~ --1 « " й1й= 1„, а=1, 2) задаче (29) — (30) соответству 1т разностная схема Ли = (Л, + Л,) и = — Г (х), х Е в, (31) где ) (х) =~у(х)+юр,(х)+ср,(х), 2 — (и„— и,и), х, = О, й1 Л и — и-„„, Й1 < х1 <~ 11 — й«, 2 —, ( — и- — х+,и), х, = 1,; аг «, 2 2 — и-, х =1, /,, х, З=ю а функции ~р„(х) определяются соотношением х, = 1„0 < х, < 1„ х,=О, 2 й-а(ха) ха= Ою а О, Ь„<х <1 — Й„, 3=3 — а, а=1,2, 2 9+а (хд)~ ха=)а В главе 1!1 было показано, что схема (31) в векторном виде имеет следующую запись: СГ!, — 2 ГУ, = Р„ — Ц,+Си,— Ц,„=Е!, 1<!я''.,Лг,— 1, (32) где где правая часть Ф! = Р(ч!, О < ! < М, определяется по формулам 1=0, 1<!<М,— 1> 1 =М,.
СР, +2Р„ Ем, +СЕ„+ ~„+„ СГ~, +2Рл, Для векторов Р и Ф! имеем разложения Мд м, У1-Х У,ра-,(!), Фу-Х Ь1У„рь;,(!), 0<!<М„ «,=о ' т ь,=о где 2 А~я! = соз— Р (!) 1<Ь,<М,— 1, Ь,=О, М,. Коэффициенты Фурье векторов У! и Ф! в силу (33) связаны со- отношением Со' — 2 сов — Е) Кь, = Ь®2л,, 0 <Ь <М, ( "'- % 206 б!=--(и(0, !), и(1, !), ..., и(Ь1„!)), )с! = (Щ(0, !), Ь,'1(1, !'), ..., Ь,'!(Л!„!)), СГГ! —— ((2Š— Ь,'Л,) и(0, !), ..., (2Š— Ь,'Л,) и(Ь(„!)), 0<! <Ь(,. Векторная система (32) отличается от рассмотренной ранее системы (2) краевыми условиями и определением матрицы С.
Тем не менее построить аналог метода п. 1 для задачи (32) не представляет труда. Г1оскольку вывод основных формул для этого метода лишь в деталях отличается от приведенного в п. 2, то мы ограничимся сводкой главных промежуточных и окончательных формул.
Для метода полной редукции необходимые формулы описаны в Э 4 гл. 111. Итак, для векторов Ру= ГУ,, 0<! < М„где 2М,=У„после шага исключения будем йметь задачу Ссор',— 2$',=Ф„ а компоненты вектора 22, выражаются через компоненты вектора Ф следующим образом: м,-! а2,(!) = ~ Ь,2р(1, !) )2!22(!)+0,5Ь,[<р(!, 0))2!~2!(0)+ 2=1 +<р(!, М,)!22",2(М2)~, 0(!(Уг.
решаются уравнения 4 з!и' — '" ш„, (!) — Ь22Л2ш„, (1) = Ь22г2, (!), 4 соз' ~~ уа (!) — Ь2Л2у2 (!) = и2„2 (!), 2 0(! (Ум 0<в(У! для 0 ( Ь, ( М„где М2 г„, (!) = ~ рт!р (1, /) соз 2. 2=о 0(Ь, <М„О(! < У;. Решение и(в, 1) задачи (31) определяется по формулам м, а2а) и (!', 2!) = ~', р,,у2, (1) соз —,, О <1 < М„О < ! < Л! ь,=о и из уравнений 2и (!, 21 — 1) — Ь22Л2и (!, 2! — 1) = =Ь,'~(!, 21 — 1)+и(1, 2! — 2)+и(!, 2]), <!<М„О(!<У .