Fedorenko-RP-Vvedenie-v-vychislitelnuyu-fiziku (810773), страница 39
Текст из файла (страница 39)
огизлижзнные методы вычислительной ьизики (ч, и )9з (Иногда ортогонализацию и нормировку проводят не на каждой итерации, а периодически, например через пять-десять итераций.) Собственное значение Луэ (г'-е приближение) вычисляется по той же формуле: Л~п = (Аи', и')/(и', и'). Ускорение степенного метода. Один из наиболее часто употребляемых приемов ускорения степенного метода состоит в варьировании итерационного параметра т.
Вычисления ведутся практически по той же самой схеме, но с переменным т: и'+' = (Е+ .с,. „,А)и'. Разлагая ио в ряд Фурье по собственным векторам, получаем для и' формулу ! и' =" с П (1+ т,.Л )1р„. 9 =! Здесь, конечно, тоже следует использовать идею чебышевского метода, но с некоторой модификацией. Мы заинтересованы в том, чтобы полином П (1+ т,.Ль) был как можно меньше на всем спектре, за исключением точки Л,, Для реализации этой идеи необходимо располагать некоторой информацией.
Прежде всего нужно иметь оценку (сверху) для максимального (по модулю) собственного числа Ь и оценку для второго собственного числа. Достаточно знать число 1, разделяющее Л, и Л, т.е. должно быть Ль Е ~ — Е,!1 (й = 2, 3, 4...,), Л, > Е Дара- метры т. следует брать обратными к корням полинома Чебышева (некоторой назначенной степени 1) на интервале [ — Ь, 1). Эффект ускорения тем выше, чем ближе 1 к Ли Есть еще один простой прием, позволяющий ускорить сходимостзк сдвиг спектра.
Пусть имеется некоторая оценка первого собственного числа Л'. Она может быть получена на первом этапе решения задачи, т.е. является не очень точной. Уточнение осуществляется теми же итерациями, но с небольшим изменением: используется оператор со сдвинутым спектром А — Л" Е, т.е. и'+~ = и'+ т,,(А — Л'Е)и'. Оператор А — Л'Е имеет те же собственные векторы, что и А, а спектр его получается из спектра А сдвигом на Л'. В идеальном случае (Л' = Л, и для Л известна достаточно хорошая оценка) чебышевское ускорение действует только на компоненты с ~рь при й= 2, 3, 4, ...; компонента с,~р, не меняется. Случай 9 |Ы ГлАВнАя спвктРАльнАя зАЛАчА для КРАЯВЪ|Х 3АдАч |99 Х' < йп когда первое сдвинутое число Х, — Х' > О, тоже достаточно благоприятен при условии, конечно, что А — Х' < б.
В этом случае значение чебышевского полинома в точке Х = А, велико и это способствует более быстрому выделению в функции и' главной компоненты. (Палиномы Чебышева обладают многими экстремальными свойствами, в том числе и самым быстрым среди полиномов той же степени ростом за пределами яитервала, на котором расположены корни.) Применяется и часто дает хорошие результаты метод, иногда называемый методом регуляризации. В этом случае итерации проводятся по формуле гм В =Аи', 1 где  — «легко-обратимый» оператор (не в том смысле, что легко найти В ', а в том, что легко решить уравнение Ве = г).
Очевидно, такие итерации можно изучать в форме и|+' = (Е + тВ 'А) и'. Таким образом, можно говорить о методе простой итерации для оператора В 'А, Эффект ускорения достигается в том случае, если число обусловленности (или, другими словами, отношение минимального собственного значения к максимальному) у матрицы В 'А близко к единице, т.е. В 'А Е. Однако применение этого метода связано с двумя неприятностями. Первая состоит в том, что если матрицы В и А не перестановочны (а это типичный в приложениях случай), то собственные векторы В 'А (именно один из таких векторов выделяется рассматриваемым итерационным процессом), вообще говоря, не совпадают с собственными векторами А.
Для борьбы с этим недосФатком используется метод сдвига спектра. Имея и', можно вычислить оценку для |ь, (считая, что в и' искомая компонента |р, является уже доминирующей): Х' (Аи', и')/(и', и'). Следующая итерация проводится по формуле В(и'+' — и|)/т = (А — й'Е) и'. Смысл этого приема в том, что' прн Л' Х, собственный вектор р, матрицы А, соответствующий точке спектра йп является и собственным вектором матрицы В '(А — А'Е) при любом В. Укажем и на вторую опасность, которую тоже надо иметь в виду.
Пусть для простоты А и В перестановочны, а собственный вектор |р, соответствует точкам спектра А, и р, операторов А и В соответственно. При этом для А точка А, являегся крайней правой в спектре, и именно поэтому она нас интересует. Однако собственное число Х,Гр,оператора В 'А может оказаться не крайней, а внутренней ПРИБЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИКИ ~ч.
и точкой спектра, и степенной метод с таким регуляризатором выде- лит не зр„а какой-то другой собственный вектор, соответствующий крайней точке множества ХВ/рь (к = 1, 2, 3, ...). Оператор Шредингера с периодическим потенциалом. Рассмотрим характерную спектральную задачу квантовой теории твердого тела. Ниже описан опыт ее решения в ИПМ им. М. В. Келдыша. Физическая задача связана с исследованиями возможности существования так называемого «металлического водорода». Для иас наиболее интересными будут вопросы вычислительной технологии; они характерны для задач квантовой механики. Итак, рассматривается задача определения собственных чисел и функций оператора шредингера — й + У, где У(х, у) — потенциач, являющийся периодической функцией переменных х, у: У(х, у) = ~~, ~~; Р(х+ йа„у+ /а ), Ь-- (5) Р"(х, у) = е т/»т«Р /1/хт+ уз.
(б) Такой потенциал возникает в периодической прямоугольной решетке (аы аз — периоды по х, у соответственно). В центре каждой ячейки находится полюс потенциала. По теореме Блоха, используя замену и(х, у) = ец" "+Вя» р(х, у), можно свести проблему к спектральной задаче Нр = Х р, где Н = — Л+ гз й, — ' + й, — ' + (йз+ й3) + К (7) Функция 'р(х, у), определенная в ячейке ~х~ и а /2, ~у~ и ат/2, является периодической по х, у.
Зкдачу надо решать многократно для значений х„ /Бз из некотоРой сетки, покРывающей так называемУю зону Бриллюэиа. Задача решается методом конечных разностей. Ячейка покрывается сеткой Д/хФ, оператор (7) аппроксимируется стандартным конечно-разностным. Первая неприятность состоит в том, что функция //(х, у) может обратиться в бесконечность в каком-то узле сетки. Ее легко избежать, немного сдвигая ячейку, что допустимо в периодической задаче, Но это плохой выход: опыт показывает, что при тех небольших значениях Ф, которыми приходилось ограничиваться в практической работе, результат сильно зависит от сдвига и от числа узлов сетки Ф. Вторая проблема связана с вычислением потенциала У по формуле (5). Вычисление таких сумм осложняется очень медленной сходимостью, необходима разработка методов ее ускорения.
Один из часто й !ь! ГЛАВНАЯ СПЕКТРАЛЬНАЯ ЗАДАЧА ДЛЯ КРАЕВЫХ ЗАЯА4 20! применяемых приемов состоит в том, что члены медленно сходящего- ся ряда ~ч' а„разбивают на две части; ~~; ад = ~', а„'+ '«~ ад', ад = ад + а„", А д Е таким образом, чтобы ряд ~х' ад суммировался аналитически, а остаток ~х, 'ада был быстро сходящимся. Подобрать такое разбиение— это уже искусство. Поэтому в данном случае говорят не о методе, а о приеме. В следующем ниже алгоритме потенциал У(х, у) нужно вычислять в каждом узле сетки, что вынуждает использовать относительно грубые сетки. В расчетах с успехом был использован характерный для задач с особенностями прием регуляризации, или выделения особенности.
Он основан на том, что часто бывает известно решение близкой задачи, содержащее такую же особенность. Решение ищется в виде Р(х, у) =о(х, у)1а(х, у), где 5= в '/-" ут. Смысл замены переменных заключается в том, что функция Б удовлетворяет уравнению — /ГЯ= (1 — 1/~Гх~+ у1)б, отличающемуся от (7) и!ьздшими дифференциальными членами. Другими словами, особенность в потенциале 1/~5~+ уз порождает в решении слабую особенность типа б(х, у). Поэтому ищем решение, уже содержащее такую особенность, полагая, что после замены переменных искомая функция ар должна быть гладкой. В результате простых преобразований, которые мы опустим, получаем для р уравнение где дифференциальный оператор / х д у д а / ! а+ а дх ТГ а+ а ду) ~.Да а «Потенциал» 1Мх"+ уа — У(х, у) — 1 особенности при х = у 0 уже не имеет.
коэффициенты типа х/!/хз+ уз, у/чх~+ уз также остаются ограниченными всюду. Заметим, что для функции ар(х, у) краевые условия не являются условиями периодичности, как это было для Р(х У) пгвзлнжвнныв мвтодм вычнслнтяльно» «нзнхн 1ч. и Чтобы иметь дело с хорошо освоенной в вычислениях периодической задачей, будем трактовать замену переменных следующим образом: Мы имеем уравнение НР = Ьр. Используя замену Р = Я р, / и' т получаем 2,~р= Ьр. Обратная замена ~р»» е "+т р дает е-«х +У 1 е1~~т+У у )~~р ге Н в-ь» +У г е»~ +У Практически это следует понимать так.
Расчет ведется в терминах р „— периодической, но «негладкой» функции, которая имеет ,дт+ з «особенность» типа е " +г . Действие на нее оператора Н состоит .~/ 3+ 2 из следующих операций. Функция р умножаегся на е " +т и превращается в гладкую функцию, На эту гладкую функцию действует разностный оператор, аппроксимирующий дифференциальный оператор Е.
Затем результат умножается на е ~+т . Относительно оператора Н нзвеспю, что он самосопряжениый. Для вычисления главной собственной функции и собственного числа оператора Н применяется степенной метод с регулярнзатором В и параметром т: мч В~ —:-~- =(и — Л'Е) р~, Х'+'= (Нр'+', р'+'У(р'+', р+~), <Р'+ ' = Р' + тВ '(Н вЂ” Ъ.'Е) р~. Здесь 1 — номер итерации. В качестве оператора В использовались В~ — Е, Вз — Š— о — Š— о —, В и«(Š— оЬ). эх~ ) ~ ау~ Разумеется, имеется в виду разностная аппроксимация дифференциального оператора. Оператор Вз легко обращается (сначала прогонкой по х, затем по у).