Визуализация задачи квантовой физики «частица в коробке»

devops

Administrator
Команда форума

Уравнение Шрёдингера​

В 1926 году Эрвин Шрёдингер вывел знаменитое волновое уравнение, связывающее энергию системы с её волновыми свойствами. Его применение к атому водорода довольно сложно, поэтому сначала воспользуемся волновым уравнением, чтобы решить задачу о «частице в коробке». Выраженное в одномерном пространстве волновое уравнение Шрёдингера имеет вид:

d1cdf300dee4e29fa782f723e943b74e.png

Визуализация частицы в коробке​

Теперь для упрощения мы предположим о частице в коробке, что:

Частица в коробке
Частица в коробке
Задача о «частице в коробке» не соответствует ни одной реальной химической системе. Её полезность в контексте ситуации заключается в иллюстрировании нескольких квантово-механических особенностей. Потенциальная энергия на барьере по условию бесконечна (т. е. частица не может вырваться), а потенциальная энергия внутри коробки равна 0. В этих условиях классическая механика предсказывает, что частица имеет равную вероятность оказаться в любой точке коробки, а кинетическая энергия частицы может оказаться любой. Принимая во внимание это предположение, мы получаем различные уравнения энергии частицы у барьера и внутри коробки. На барьере V бесконечно, и, следовательно, частица не существует:

35905dd24643d580ae286da467faf6e1.png

Внутри коробки V равно нулю, и, следовательно, волна может иметь любое конечное значение:

6d867eb0ae8399ca4b7833ccda2a0ecd.png

Уравнение условий внутри коробки можно переписать так:

94e6f42d7ee5a966536491dc67024103.png

Выше видно, что волновая функция окажется такой, что при двойном дифференцировании получится та же функция, умноженная на E. Таким поведением обладает функция синуса:

5e0b2ff6fc95eb23c48b5ba49db4dfa3.png
4e18d53e6307ab34d153810e7b04c10d.png



c67387fb498040f3ea06230c98b2e149.png

Теперь нужно вычислить значения констант α и A. В случае воспользуемся волновыми уравнениями на барьерах, где волновые функции равны 0.

6471b72ea84da1c0c7a54064ce7a39f0.png
53f0c4a9183c8475f4d2a1728973048d.png

Подставляем значение для α:

3269d4a39e0b2dc274df162587a6191d.png



5fad3aba4ab48aaa74054d0c536c050a.png

Требуя нормализации волновой функции можно определить значение A. Это утверждение верно потому, что частица должна существовать где-то в коробке. Следовательно, сумма вероятностей нахождения частицы в коробке равна 1:

36d2cd6e3e0913e1b49add1aece3160e.png





0e7eb4679345fcd1d2b072684b7ad53b.png

Подставляя значения, получаем окончательные уравнения волны и энергии:

f1657d03da784abb9aa6cc9bc7a48f8c.png



2ac8e7ed8e786cfb88f209817fcca9bb.png

Визуализируем энергию и волновые функций при помощи Python:

import matplotlib.pyplot as plt
import numpy as np
#Constants
h = 6.626e-34
m = 9.11e-31
#Values for L and x
x_list = np.linspace(0,1,100)
L = 1
def psi(n,L,x):
return np.sqrt(2/L)*np.sin(n*np.pi*x/L)
def psi_2(n,L,x):
return np.square(psi(n,L,x))
plt.figure(figsize=(15,10))
plt.suptitle("Wave Functions", fontsize=18)
for n in range(1,4):
#Empty lists for energy and psi wave
psi_2_list = []
psi_list = []
for x in x_list:
psi_2_list.append(psi_2(n,L,x))
psi_list.append(psi(n,L,x))
plt.subplot(3,2,2*n-1)
plt.plot(x_list, psi_list)
plt.xlabel("L", fontsize=13)
plt.ylabel("Ψ", fontsize=13)
plt.xticks(np.arange(0, 1, step=0.5))
plt.title("n="+str(n), fontsize=16)
plt.grid()
plt.subplot(3,2,2*n)
plt.plot(x_list, psi_2_list)
plt.xlabel("L", fontsize=13)
plt.ylabel("Ψ*Ψ", fontsize=13)
plt.xticks(np.arange(0, 1, step=0.5))
plt.title("n="+str(n), fontsize=16)
plt.grid()
plt.tight_layout(rect=[0, 0.03, 1, 0.95])
4238e45ba3d903f8c0dabde58e8a8512.png
ec85f2e330557f96f6dc959dbc4e5256.png

Обратите внимание, что есть области, где одновременно Ψ и Ψ * Ψ равны нулю. Они известны как узлы. Уровни энергии орбиталей не являются непрерывными. Они существуют на разных уровнях, что демонстрируется их расположением. Кроме того, с увеличением значения n плотность волны внутри коробки также увеличивается.

Визуализация орбиталей​

Теперь, чтобы получить волновое уравнение относительно квантовых чисел, мы должны привести его в следующий трёхмерный формат:

96255b1efd4b521e94236fea7b684fd1.png

Разделение переменных зависит от типа атома, и для данной статьи оно слишком сложно. Вместо этого просто запишем решение непосредственно для построения графика. Далее воспользуемся функциями R и Y для атома водорода, не выводя их. Сначала рассмотрим орбиталь 1s:

f6ca3ae8338a3cb0d08c88242f18b798.png

Волновая функция 1s-орбитали показывает, что вероятность появления электрона по мере удаления от ядра экспоненциально уменьшается. Она также демонстрирует сферическую форму орбитали.

import matplotlib.pyplot as plt
import numpy as np
#Probability of 1s
def prob_1s(x,y,z):
r=np.sqrt(np.square(x)+np.square(y)+np.square(z))
#Remember.. probability is psi squared!
return np.square(np.exp(-r)/np.sqrt(np.pi))
#Random coordinates
x=np.linspace(0,1,30)
y=np.linspace(0,1,30)
z=np.linspace(0,1,30)
elements = []
probability = []
for ix in x:
for iy in y:
for iz in z:
#Serialize into 1D object
elements.append(str((ix,iy,iz)))
probability.append(prob_1s(ix,iy,iz))

#Ensure sum of probability is 1
probability = probability/sum(probability)
#Getting electron coordinates based on probabiliy
coord = np.random.choice(elements, size=100000, replace=True, p=probability)
elem_mat = [i.split(',') for i in coord]
elem_mat = np.matrix(elem_mat)
x_coords = [float(i.item()[1:]) for i in elem_mat[:,0]]
y_coords = [float(i.item()) for i in elem_mat[:,1]]
z_coords = [float(i.item()[0:-1]) for i in elem_mat[:,2]]
#Plotting
fig = plt.figure(figsize=(10,10))
ax = fig.add_subplot(111, projection='3d')
ax.scatter(x_coords, y_coords, z_coords, alpha=0.05, s=2)
ax.set_title("Hydrogen 1s density")
plt.show()
e579b2e7a4b0b2bb1640869bd2d2299a.png

Разглядеть её на графике электронной плотности выше немного затруднительно, однако сферу в целом увидеть возможно. Плотность уменьшается по мере удаления от центра. Как правило, точкой отсчёта является момент, когда вероятность появления электрона составляет 99 %. Такие же графики плотности возможно получить и для других орбиталей: s, p, d и f.

Источник статьи: https://habr.com/ru/company/skillfactory/blog/564822/
 
Сверху