2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Численное решение уравнения Шредингера, H=H(t)
Сообщение20.12.2014, 16:09 
Аватара пользователя


16/07/10
141
Украина/Харьков
Добрый день!

Возникла такая задача. Гамильтониан для системы с конечным числом степеней свободы (2 и больше) зависит от времени.
$\hat H = \hat H(t)$
Это означает, что и собственные функции и собственные значения также зависят от времени:
$\hat H(t) \varphi_n(t) = E_n(t)\varphi_n(t)$ (1)

Нужно численно найти решение нестационарного уравнения Шредингера:

$i\dot\psi(t) = \hat H(t)\psi(t)$ (2)

Очевидно, что это решение может быть, как обычно, представлено в виде суперпозиции собственных функций (1) для кажого момента времени:

$\psi(t) = \sum_n c_n(t)\varphi_n(t)$

Численное решение (1) трудности не представляет - время тут просто параметр, одна строчка в Python и мы получаем набор собственных векторов и собственных значений для заданного $t$. И таким образом в итоге имеем систему дифференциальных уравнений для величин $ c_n(t)$.

Я это все вручную программирую на Python, но формулы получаются большие, если использовать не наивный метод Эйлера, а модифицированный или Рунге-Кутта. И к тому же, я не контролирую этап решения задачи на собственные значения (1), а здесь важен тот порядок, в котором собственные значения и вектора выдаются встроенной функцией. Дабы не было на каких то шагах перескоков и перепутывания.

Вопрос такой: а есть ли уже готовые пакеты для Python, которые решают поставленную задачу?

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group