Дипломная работа: Численное решение уравнения Шредингера средствами Java
(3.1)
где оператор полной энергии системы. Для одномерного случая
Общее решение уравнения (1) формально можно записать в виде
(3.2)
где - волновая функция системы в момент времени
- оператор эволюции (пропагатор).
Особенностью выражения (3.2) является то, что в показателе экспоненты стоит оператор. Определить действие оператора эволюции на волновую функцию можно, например, разложив ее по собственным функциям оператора . Так, в случае дискретного спектра выражение для волновой функции в произвольный момент времени имеет вид
(3.3)
Аналогичное выражение может быть получено и для непрерывного спектра.
Разложение (3.3) удобно использовать в тех случаях, когда решения стационарного уравнения Шредингера для конкретной задачи являются известными. Но к сожалению круг таких задач очень ограничен. Большинство современных численных методов решения уравнения (3.1) основаны на использовании различных аппроксимаций оператора эволюции . Так, например, разложение оператора эволюции в ряд Тейлора с сохранением первых двух членов дает следующую схему
,(3.4)
здесь номер шага по времени. Существенным недостатком этого алгоритма является необходимость знать волновую функцию в моменты и . Кроме того, для оценки действия оператора на функцию нужно вычислять вторую производную по координате. Простейшая конечно-разностная аппроксимация второй производной
(3.5)
дает неудовлетворительный результат. (См. программный блок 1)[3]
2.2 Преобразование Фурье
Начнем с комплексного ряда Фурье
Рассмотрим случай L.Тогда сумму можно преобразовать в интеграл следующим образом: определим и =g(y).Так как возрастает каждый раз на единицу ,то
где .
Таким образом, полученные выше формулы приобретают вид
(4.1)
Величина называется преобразованием Фурье от и наоборот. Положение множителя довольно произвольно; часто величины и определяют более симметрично:
(4.2)
Выражения (4.1) или (4.2) можно скомбинировать следующим образом:
(4.3)