Wolfram 语言

偏微分方程

观察箱中的量子粒子

一个在以 为边的二维矩形内自由移动的量子粒子,由二维含时薛定谔方程,加上使波函数在边界处为 0 的边界条件来描述.

In[1]:=
Click for copyable input
eqn = I D[\[Psi][x, y, t], t] == -\[HBar]^2/(2 m) Laplacian[\[Psi][x, y, t], {x, y}];
In[2]:=
Click for copyable input
bcs = {\[Psi][0, y, t] == 0, \[Psi][xMax, y, t] == 0, \[Psi][x, yMax, t] == 0, \[Psi][x, 0, t] == 0};

这种方程有一个一般解,就是被称为本征态的无限形式和.

In[3]:=
Click for copyable input
DSolveValue[{eqn, bcs}, \[Psi][x, y, t], {x, y, t}]
Out[3]=

定义初始条件为一个归一化的本征态.

In[4]:=
Click for copyable input
initEigen = \[Psi][x, y, 0] == 2 /Sqrt[xMax yMax] Sin[(\[Pi] x)/xMax] Sin[(\[Pi] y)/yMax];

在这个情况下,方程的解就是初始条件的一个随时间变化的乘数(模为一).

In[5]:=
Click for copyable input
DSolveValue[{eqn, bcs, initEigen}, \[Psi][x, y, t], {x, y, t}]
Out[5]=

定义初始条件为本征态的和. 由于初始条件不是某个本征态,所以粒子位置的概率密度随时间变化.

In[6]:=
Click for copyable input
initSum = \[Psi][x, y, 0] == Sqrt[2]/Sqrt[ xMax yMax] (Sin[(2 \[Pi] x)/xMax] Sin[(\[Pi] y)/yMax] + Sin[(\[Pi] x)/xMax] Sin[(3 \[Pi] y)/yMax]);

用新的初始条件求解.

In[7]:=
Click for copyable input
sol = DSolveValue[{eqn, bcs, initSum}, \[Psi][x, y, t], {x, y, t}]
Out[7]=

计算概率密度,代入约化普朗克常数、电子质量的值以及原子大小的箱的尺寸,单位使用电子质量的单位、纳米和飞秒(femtoseconds).

In[8]:=
Click for copyable input
\[HBar] = QuantityMagnitude[Quantity[1., "ReducedPlanckConstant"], "ElectronMass" * ("Nanometers")^2/"Femtoseconds"]
Out[8]=
In[9]:=
Click for copyable input
\[Rho][x_, y_, t_] = FullSimplify[ComplexExpand[Conjugate[sol] sol]] /. {m -> 1, xMax -> 1, yMax -> 1}
Out[9]=

可视化箱中随时间变化的概率密度.

In[10]:=
Click for copyable input
ListAnimate[ Table[Plot3D[\[Rho][x , y , t], {x, 0, 1}, {y, 0, 1}, PlotTheme -> {"Scientific", "SolidGrid"}, AxesLabel -> {"\!\(\* StyleBox[\"x\", \"SO\"]\) (nm)", " \!\(\* StyleBox[\"y\", \"SO\"]\) (nm)", "\!\(\* StyleBox[\"\[Rho]\", \"SO\"]\) (\!\(\*SuperscriptBox[\(nm\), \ \(-2\)]\))"}, ImageSize -> Medium, PlotRange -> {0, 7}], {t, 0, 19, .5}]]
播放动画
停止播放动画

相关范例

de en es fr ja ko pt-br ru