Численные методы в квантовой механике: решение уравнения Шредингера
Вычислительная квантовая физика
Квантовая механика радикально изменила наше понимание микромира. В основе нерелятивистской квантовой механики лежит уравнение Шредингера. В отличие от классической механики Ньютона, где мы ищем точные координаты и скорости частиц, уравнение Шредингера описывает эволюцию волновой функции. Квадрат модуля этой функции дает плотность вероятности обнаружить квантовую частицу в определенной точке пространства. Аналитическое (точное) решение уравнения Шредингера возможно лишь для горстки идеализированных систем: атом водорода, квантовый гармонический осциллятор и частица в прямоугольной потенциальной яме.
Для всех остальных случаев — от многоэлектронных атомов и сложных молекул до кристаллических решеток полупроводников — точных решений не существует. Более того, добавление в систему даже одного лишнего электрона (например, в атоме гелия) делает задачу аналитически неразрешимой из-за кулоновского отталкивания между электронами. Именно здесь на арену выходит вычислительная физика и численные методы, позволяющие рассчитывать энергетические спектры и химические свойства материалов с беспрецедентной точностью.
Метод Нумерова для одномерных задач
Когда мы ищем стационарные (не зависящие от времени) состояния системы, уравнение Шредингера сводится к задаче на собственные значения. Для одномерных задач (например, частица в сложном потенциальном поле) классическим и крайне элегантным подходом является метод Нумерова. Это специализированный метод интегрирования обыкновенных дифференциальных уравнений второго порядка вида y'' = f(x)y, к которому и относится стационарное уравнение Шредингера.
Метод Нумерова базируется на разложении Тейлора и обладает впечатляющим четвертым порядком точности O(h^4), при этом требуя вычисления потенциала только в узлах сетки (без необходимости рассчитывать промежуточные точки, как в методе Рунге-Кутты). Алгоритм используется вместе с методом пристрелки (стрельбы). Мы задаем пробное значение энергии (которое является искомым собственным значением) и интегрируем уравнение с двух сторон (от плюс и минус бесконечности) навстречу друг другу. Точное значение энергии соответствует тому случаю, когда обе ветви решения гладко сшиваются в точке встречи. Этот подход до сих пор активно применяется для расчета состояний двухатомных молекул.
Временная эволюция и схема Кранка-Николсон
Если же нас интересует динамика (нестационарное уравнение Шредингера) — например, как электронный пакет туннелирует сквозь потенциальный барьер или как атом реагирует на лазерный импульс, — нам необходимо моделировать эволюцию волновой функции во времени. Это уравнение относится к параболическому типу (с мнимой единицей перед производной по времени).
Использование явных разностных схем для уравнения Шредингера приводит к вычислительной катастрофе: они не сохраняют норму волновой функции (то есть полная вероятность обнаружить частицу перестает быть равной единице) и часто безусловно неустойчивы. Спасением является схема Кранка-Николсон. Она является полунеявной разностной схемой второго порядка точности по времени и пространству. Ее важнейшее математическое свойство — унитарность. Оператор перехода во времени в схеме Кранка-Николсон является строго унитарным, что гарантирует абсолютное сохранение нормы волновой функции на любом временном шаге. На каждом шаге алгоритм требует решения системы линейных уравнений с трехдиагональной (или блочно-трехдиагональной) матрицей, что легко реализуется алгоритмом прогонки. Схема Кранка-Николсон стала индустриальным стандартом для одномерной и двумерной квантовой динамики.