ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.04.2024
Просмотров: 304
Скачиваний: 6
172 Гл. 4. Методы расчета потенциала
в памяти. Время умножения отклонения на матрицу С пренебре жимо мало, следовательно, машинное время, необходимое для определения потенциала, удваивается, если электроды учиты вать указанным способом. Если электроды не проходят через узловые точки, то описанную процедуру удается уточнить.
Если количество точек электрода слишком велико, |
чтобы |
|
можно было вычислить и хранить |
в памяти матрицу емкости, |
|
то поверхностный заряд можно |
искать итерационным |
путем |
по локальному отклонению в точках электрода, решая уравнение Пуассона по-прежнему прямым методом. С другой стороны, можно совсем отказаться от прямых методов и применить итерационный метод на всей сетке. Использование итераций только в точках электродов имеет то преимущество, что ошибки в вычислении потенциала концентрируются вблизи электродов, т. е. вне обла сти пространственного заряда, в то время как применение итераций по всей сетке распределяет ошибки более однородно и, следовательно, приводит к внесению больших ошибок в область пучка электронной пушки.
Если потенциал задан на границе области (ІВС = 1), те часто бывает удобно свести этот случай к случаю с нулевыми граничными условиями. Этого можно достичь, добавив слой с эквивалентным зарядом во все узлы сетки, соседние с грани цей. Модифицированный заряд в этих точках определяется выра жением
9? |
= ?с—ф*. |
(52) |
где qc — начальный заряд, |
а ф* — заданное |
значение потен |
циала на границе. Подставив (52) в разностное уравнение с нуле выми граничными условиями, можно убедиться в том, что он» совпадает с уравнением исходной задачи.
7. Неограниченная задача
Для решения уравнения Пуассона в некоторой области необ ходимо, чтобы границей области служили электроды с заданным распределением потенциала или чтобы на границе выполнялись некоторые предположения о симметрии потенциала. Следова тельно, когда такие условия действительно имеются, решение уравнения Пуассона служит идеальным методом определения потенциала. Однако существуют задачи, в которых требуется найти потенциал, созданный изолированной системой зарядов
вотсутствие каких-либо электродов или симметрии. В этом случае единственным граничным условием служит требование поведенияпотенциала на бесконечности должным образом (логарифмически
вдвумерных задачах). Эффективный метод решения такой задачисостоит в предварительном определении точного значения потен
§ 3. Итерационные методы и сходимость |
173 |
циала вне границы некоторой области на основании каких-либо других методов, с последующим применением внутри области программы решения уравнения Пуассона, которое теперь допол нено необходимыми граничными условиями. Хокни [3] и Холл [20, 21] использовали этот метод для численного моделирования изолированной галактики из звезд-стержней.
Значение потенциала на границе определялось по разло жению
СО |
|
<p(Z)=Re[a0log24 + 2 i S r ] ’ |
(53) |
i=i
где Z = X + іУ — координаты границы относительно центра
прямоугольника и R = X 2 + У2; L — произвольная константа, которую удобно выбрать равной стороне прямоугольника.
Это разложение справедливо при условии, что все заряды расположены внутри прямоугольника, и в практических расче тах мы ограничивались двенадцатью слагаемыми. Комплексные коэффициенты разложения щ вычислялись как различные мо менты распределения зарядов в соответствии с определением
N X - 1 N Y - 1
a i= 2 |
2 { ( 5- ^ ) Я Х +* ( г— ^ - ) H Y } l qs, t . (54) |
s — 1 |
1 |
Так как суммирование выполняется на регулярной сетке, можно уменьшить число арифметических операций, использовав симметрию. Если N X = N Y = N, то имеется восьмикратная симметрия и число операций, необходимых для вычисления ZMaKC
коэффициентов, можно уменьшить |
до (2ZMaKC + |
3) N 2. |
Вычисле |
||
ние |
рядов |
в граничных узлах требует 10ZMaKC./V |
операций. При |
||
1Макс |
= 1 2 , |
N = 48 полное число |
операций составит |
6,8-104. |
Взяв в качестве среднего времени выполнения одной арифмети ческой операции на IBM 7090 20 мкс, получим, что время вычис ления граничных условий составит 1,35 с. Фактически затра ченное время оказалось равно 1,4 с. Таким образом, счет этих внешне немного измененных граничных условий отнимает в 1,6 раза больше времени, чем решение уравнения Пуассона во всей внут ренней области. Однако этот метод согласования граничных условий использует значительно меньший объем памяти и дей ствует примерно в 2,8 раза быстрее, чем метод преобразования
Фурье, который будет описан ниже (см. § 4, |
и. 2 и табл. |
7). |
§ 3. И т е р а ц и о н н ы е мет оды и |
сходим ост |
ь |
Итерационные методы решения уравнения Пуассона широко распространены, поскольку они легко программируются. Кроме того, интуитивно понятно, что следует извлекать максимальную
174 |
Гл. 4. Методы расчета потенциала |
пользу из имеющейся информации, а такая информация содер жится в потенциале, вычисленном на предыдущем шаге по вре мени, который служит хорошим приближением для начала ите раций на следующем шаге. Ниже мы излагаем известные резуль таты о сходимости наиболее распространенного метода — метода последовательной верхней релаксации (SOR).
1. Итерационный процесс метода SOR
Возьмем в качестве контрольной задачи решение уравнения Пуассона в квадратной области с заданным нулевым потенциалом на границе. Покроем эту область разностной сеткой и X и и исполь зуем пятиточечное разностное уравнение
|
фі-1» j + фг+1, 7 + фг. 7-1 + |
фг, 7+1 — 4 ф і, |
j = |
|
|
= |
—4ярг, jh? = qi, і |
при |
K i , |
— 1, |
(55) |
где фг, j = 0 при і — 0, п или j = |
0, п. Этатак называемая «модель |
||||
ная задача» |
подробно изучена |
в литературе по численным мето |
дам. Ее преимущество состоит в возможности получения точных аналитических выражений для собственных функций, скорости сходимости и нормы погрешности. Приведенные ниже резуль таты взяты нами из монографий Варги [22], а также Вазова и Форсайта [18] и принадлежат ряду авторов, в первую очередь Янгу, Кагану, Голубу и Шелдону.
Метод SOR состоит в систематическом пересчете значений потенциала в каждом узле сетки. При этом необходимо исполь
зовать две сетки — одну |
для |
свободных членов quj |
и другую |
для значений потенциала |
ф г,^ . |
В этом заключается |
отличие от |
прямых методов, для которых нужна лишь одна сетка. Сначала
в каждом узле вычисляется |
поправка |
|
R — Фі-і, 7 + фг+і. 7 + Фг |
7-1+ Фг 7-+1—4фг.7 —9г.7, |
(56) |
использующая значение потенциала ф в центре и в соседних точках. В зависимости от того, в каком порядке пробегаются узлы сетки, некоторые из значений потенциала уже могут быть изменены на этой итерации. Во всех случаях на сетке запоми нается последнее значение. Новое значение в корректируемом узле определяется из формулы
, нов „стар |
I / к> \ и |
/ к п \ |
фг,7=фі,3 |
+ \ ~ г ) Я , |
(57) |
где со — параметр верхней релаксации, который можно изменять для улучшения сходимости процесса. Для «модельной задачи» можно показать [22], что наилучшая асимптотическая сходимость
§ 3. Итерационные методы и сходимость |
175 |
достигается при со = <жь, где
с о ь = |
2 |
и, = cos— |
(58) |
|
|
1 + (1 — р2)1/2 ’ |
* |
п |
|
Для того чтобы изучить сходимость, определим среднеквад ратичную ошибку (пропорциональную норме в Ь г) после t-ж итерации:
71—1
І|е(і)ІІ = ^ г ( 2 (Ф 6-Ф ?.І)2) Ѵ\ |
(59) |
г, j=1 |
|
где (p*’j — точное решение разностных уравнений. Вектор ошибки на t-ж итерации можно рассматривать как результат действия матричного оператора M (t) на вектор начальной ошибки е<0), т. е.
|
|
g№ = Л/ОТе(°). |
|
|
|
(60) |
|||
В некоторых процессах, |
например |
в SOR, |
М й) |
представляет |
|||||
собой результат |
^-кратного |
оператора, |
следовательно, |
= |
|||||
= (Ма)У. В других процессах, например |
в методе Чебышева, |
||||||||
М (и является полиномом |
от |
М а\ |
|
|
|
|
|
||
Взяв норму |
справа и |
слева, |
получим |
|
|
|
|
||
|
II ею II = |
II М |
I |
I |
< II |
II Ив<°> II. |
|
(61) |
|
Таким образом, |
||М (<>|| |
является |
точной |
верхней |
гранью |
мно |
жителя, который характеризует уменьшение начальной ошибки после t операций. Неравенство (61) обеспечивает выполнение двух условий. Во-первых, вне зависимости от начального при ближения (и, следовательно, от е<0>) норма ошибки уменьшается по крайней мере в || М ф || раз после t итераций. К сожалению, (61) обеспечивает также существование и некоторого начального приближения, для которого коэффициент уменьшения строго равен всего лишь ||M (t)||.
Чтобы показать, насколько неутешителен этот результат, мы приводим на фиг. 7 зависимость || М а) || от t для итерационного процесса SOR на сетке 128 X 128, в котором узлы во время ите раций берутся в нечетно-четном порядке. Это означает, что сначала корректируются значения потенциала во всех нечетных узлах [т. е. в узлах, для которых (і + j) нечетно], а затем во всех четных. Такой порядок аналогичен выбору сначала всех белых, а затем
всех |
черных полей |
шахматной доски. Для этого случая || М {і) || |
||
можно |
вычислить |
аналитически [22]: |
|
|
|
|
IIм т и= { т + ( ■ + 1) ' } к ' ■-1 >"2 • |
(62) |
|
|
|
|
||
где |
р = |
cos я In. |
|
|
176 |
Гл. 4. Методы расчета потенциала |
Фиг. 7 показывает, что для сетки 128 X 128 во время первых 20 итераций ошибка может вырасти в 30 раз по сравнению с ее первоначальным значением и что нужно п ( — 128) итераций для уменьшения ошибки до начальной величины. Чтобы обеспе чить уменьшение ошибки до ~1%, необходимы 233 итерации,
Ф и г . 7. Теоретические границы изменения максимальной возможной нормы вектора ошибок (по отношению к его начальному значению) в зависимости от числа итераций.
Оценки даны для методов SOR, Гаусса — Зайделя и Чебышева при использовании нечетно-четного порядка пересчета на сетке размером 128 х 128.
а для уменьшения ее до ІО-6 — 432 итерации. Эту зависимость следует сравнить с прямым методом, который дает решение с ошиб кой 10-12 за время пяти-шести итераций метода SOR.
Результат будет другим, если узлы корректируются в порядке, отличном от нечетно-четного. Естественнее и проще пересчитывать значение потенциала в узлах один за другим построчно, в той же последовательности, в которой расположены слова на странице книги (так называемый «машинописный порядок»), однако автору неизвестны аналитические оценки для || М а) || в этом случае.
Программа процесса SOR была написана для CDC 6600. Ее внутренний цикл был тщательно запрограммирован на автокоде COMPASS и целиком содержится в быстром восьмисловном бло