Dao động tử điều hoà - Phần 1

Dao động tử cổ điển

Dao động tử điều hoà là hạt dao động trong hố thế bậc hai, tức có hình dạng của một parabol:

\begin{equation}
U(x)=\frac{1}{2}kx^2,
\label{eq:U_x_parabol}
\end{equation}

trong đó k - hệ số đàn hồi. Trong cơ học cổ điển, hạt sẽ chịu tác dụng của lực hồi phục tỉ lệ thuận với li độ:

F=-\frac{dU(x)}{dx}=-kx,

và dao động qua lại dưới đáy hố theo quy luật điều hoà:

x=A\sin(\omega_{classic}t+\varphi),

với tần số

\omega_{classic}=\sqrt{\frac{k}{m}}.

Trong cơ học cổ điển, hạt bị cầm tù ở đáy hố với ranh giới hết sức rõ ràng: luôn nằm dưới mức năng lượng toàn phần.

 

Dao động tử lượng tử

Trong thế giới lượng tử ở tầm cỡ kích thước nguyên tử, vi hạt không xác định là một chất điểm dao động qua về quanh hố thế, mà loang ra thành đám mây orbitan. Sóng của đám mây này vận động tuân theo phương trình dừng Schrodinger:

\begin{equation}
-\frac{\hbar^2}{2m}\frac{\partial^2}{\partial x^2}\Psi(x)+U(x)\Psi(x)=E\Psi(x),
\label{eq:ptschrodinger_thuchanh}
\end{equation}

với thế năng U(x) có dạng bậc hai như hàm \eqref{eq:U_x_parabol}. Sử dụng các phương pháp giải phương trình dừng Schrodinger với sự trợ giúp của máy tính, ta hoàn toàn có thể tìm ra được phổ năng lượng (rời rạc) mà tại những mức năng lượng ấy, sóng đạt trạng thái dừng. Hình 1 miêu tả một trong số những trạng thái dừng ấy.

Hình 1: Sóng trong hố thế parabol

Theo hình 1 ta thấy, đám mây hạt trong thế giới lượng tử cũng bị gom lại quanh đáy hố thế. Nhưng vẫn có một phần nhỏ của sóng thấm qua phần hố thế cao hơn mức năng lượng toàn phần (màu xanh). Tuy vậy, sự thấm này chỉ là tạm thời, xảy ra trước khi sóng phản xạ toàn phần vào trung tâm hố thế.

 

Phổ năng lượng

Giải phương trình Schrodinger \eqref{eq:ptschrodinger_thuchanh} trên máy tính, có thể rút ra được phổ năng lượng thích hợp có khả năng tạo nên sóng dừng hay trạng thái dừng như hình 2.

Hình 2: Các mức năng lượng khả dĩ trong hố thế parabol

Phân tích chi tiết cho thấy, hoá ra phổ năng lượng này có giá trị tính được theo công thức:

\begin{equation}
E_n=\hbar\omega_{classic}\left(n-\frac{1}{2}\right),\qquad n=1,2,3,\ldots
\label{eq:phonangluong_hoparabol}
\end{equation}

với \omega_{classic}=\sqrt{k/m}. Theo đó, hai mức năng lượng liên tiếp nhau bất kì đều cách nhau một khoảng không đổi:

\Delta E=\hbar\omega_{classic}.

Đó cũng chính là năng lượng của photon bắn ra khi hạt di chuyển giữa hai trạng thái có mức năng lượng nằm liên tiếp.

Code chương trình Matlab

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
function standing_wave_parabol_potential_well
% Created by Tran Hai Cat
% 2018.05.15
clc;
clear variables
close all

global E k k_parabol

%% CONSTANTS
h = 1.054e-34;
m = 9.1095e-31;
q_element = 1.6e-19;
Angstrom = 1e-10;
k = 2*m/h/h;

%% INPUT PARAMETRS
n = 2; % n = 1,2,3... index of stationary state
k_parabol = 400;

Emin = -20*q_element;
Emax = 200*q_element;
xmin = -6*Angstrom;
xmax = 6*Angstrom;
x_inter = 0.5769*Angstrom;

%% DATA PROCESSING
omega = sqrt(k_parabol/m);
E = h*omega*(n-1/2);

psi = 1e-10;
psi1 = 0;

%% CALCULATION
[x_left,psi_left] = ode45(@Schrodinger_equation,linspace(xmin,x_inter,500),[psi psi1]);
[x_right,psi_right] = ode45(@Schrodinger_equation,linspace(xmax,x_inter,500),[psi psi1]);
psi_right = sign(psi_left(end,2)*psi_right(end,2))*psi_right;
X = [x_left;flipud(x_right)];
Psi = [psi_left(:,1);flipud(psi_right(:,1))];
Psi_max = max(Psi);
Psi_draw = 0.15*Psi/Psi_max*Emax/q_element;
psi_psi = 0.25*(Psi.^2/Psi_max/Psi_max*Emax/q_element);

T = 2*pi/omega;
dt = T/1000;
t = 0;

%% FIGURE
x_plot = linspace(xmin,xmax,1000);
U_plot = U_parabol(k_parabol,x_plot);

figure('name','Standing_wave_potential_well',...
'color','black','numbertitle','off');
hold on
plot(x_plot/Angstrom,U_plot/q_element,'linewidth',2,'color','w');
line([xmin/Angstrom,xmax/Angstrom],[E/q_element,E/q_element],...
'linewidth',2,'color','b');
line_psi = plot(X/Angstrom,E/q_element+Psi_draw,'linewidth',1,'color','y');
plot(X/Angstrom,E/q_element+psi_psi,'linewidth',1);
title(sprintf('E = %0.3f [eV]',E/q_element),'color','w');
axis([xmin/Angstrom xmax/Angstrom Emin/q_element Emax/q_element]);
set(gca,'color','k','xcolor','w','ycolor','w')
xlabel('x [Angstrom]');
ylabel('E, U [eV]');

while 1
t = t+dt;
Psi_time = Psi_draw*exp(-1i*omega*t);
set(line_psi,'ydata',E/q_element+real(Psi_time));
pause(0.001);
end

function dy = Schrodinger_equation(x,y)
%% Schrodinger Equation
global E k k_parabol
dy = zeros(2,1);
dy(1) = y(2);
dy(2) = -k*(E-U_parabol(k_parabol,x))*y(1);

function y = U_parabol(k_parabol,x)
%% Potential Energy
lenx = length(x);
y = zeros(1,lenx);
for i = 1:lenx
y(i) = 0.5*k_parabol*x(i)*x(i);
end