2. 量子力学基础回顾

在动手写任何一行数值求解代码之前,有必要把薛定谔方程所依赖的数学对象重新梳理一遍。数值方法不会替我们修正物理概念上的偏差:如果对波函数的归一化约定、算符的作用方式、本征值问题的边界条件理解不清,那么离散化之后得到的矩阵再漂亮,解出来的能级和波函数也可能是错的。本节围绕四个核心对象展开——波函数、算符、本征值问题、含时与定态方程的标准形式,并说明它们如何直接决定后续数值求解的输入与输出。

波函数:状态的全部信息载体

在非相对论量子力学中,一个粒子的状态由波函数 ψ(x, t) 描述。它是复值函数,本身不可直接观测,可观测意义来自玻恩规则:|ψ(x, t)|² dx 给出在 t 时刻于 x 附近 dx 区间内找到粒子的概率。由此引出第一条硬约束——归一化:

∫ |ψ(x, t)|² dx = 1   (全空间积分)

对数值计算而言,归一化不是可选项。离散化后波函数变成一个长度为 N 的复向量,归一化条件变成 Σ|ψ_i|²·Δx = 1。很多数值实验中出现“概率总量漂移”,往往不是算法发散,而是归一化因子或网格步长 Δx 处理不一致。此外,波函数必须满足物理上合理的边界条件:束缚态要求在无穷远处趋于零,实际计算中截断为有限区间 [x_min, x_max] 时,就要求在端点处 ψ ≈ 0(狄利克雷边界),这直接决定了哈密顿矩阵的边界行如何填写。

波函数还必须是单值的、连续的,且其一阶导数在势能有限处连续。这些光滑性要求在选择差分格式时很关键:二阶中心差分天然满足一阶导连续,而某些高阶格式在势能跳变处(如方势阱边缘)会产生虚假振荡,需要在网格上对势能跳变位置做对齐处理。

算符:可观测量的数学表示

量子力学中的可观测物理量由厄米算符表示,作用在波函数上。最常用的几个算符及其一维坐标表象形式如下:

物理量算符坐标表象形式
位置x̂x(乘以 x)
动量p̂−iℏ ∂/∂x
动能T̂ = p̂²/2m−(ℏ²/2m) ∂²/∂x²
哈密顿量Ĥ = T̂ + V̂−(ℏ²/2m) ∂²/∂x² + V(x)

算符的核心性质是厄米性(自伴性),它保证本征值为实数、本征函数构成完备正交基。数值实现时,这一性质必须被离散格式继承:用中心差分构造的动能矩阵是实对称的,加上对角势能后仍是实对称矩阵,因此可以用对称矩阵本征求解器;若改用非对称的前向或后向差分,厄米性被破坏,本征值可能出现复数,这就是格式选择不当的直接后果。另一个常被忽略的点是动量算符的离散化:中心差分给出的动量矩阵是纯虚的反对称矩阵,与位置算符的对易关系 [x̂, p̂] = iℏ 在离散网格上只能近似成立,误差量级与 Δx² 相关,这会影响后续计算不确定度关系的精度。

本征值问题:定态能量的来源

当哈密顿量不显含时间时,可以分离变量 ψ(x, t) = φ(x)·e^(−iEt/ℏ),代入含时方程后得到定态薛定谔方程,即本征值问题:

Ĥ φ(x) = E φ(x)
−(ℏ²/2m) φ''(x) + V(x) φ(x) = E φ(x)

这里 E 是能量本征值,φ(x) 是对应的本征函数(定态波函数)。离散化后,微分算符变成 N×N 矩阵 H,问题转化为求解 H·φ = E·φ 的矩阵本征值问题。以均匀网格 x_i = x_min + i·Δx、二阶中心差分为例,动能部分的矩阵元为:

H[i][i]   =  ℏ²/(m·Δx²) + V(x_i)
H[i][i±1] = −ℏ²/(2m·Δx²)
其余元素为 0

边界行按狄利克雷条件处理:令 φ_0 = φ_(N+1) = 0,即不把边界点作为未知量,或把边界行设为对角元为 1、其余为 0 的约束行。求解后得到 N 个本征值,按从小到大排序,最低的几个对应束缚态能级。这里有一个实用的判断依据:随着网格数 N 增大,低能级应快速收敛,若某个能级随 N 变化剧烈,通常说明该态的空间尺度小于网格分辨率,或者截断区间太窄导致波函数在边界处尚未衰减到零。

含时方程与定态方程的标准形式

完整的含时薛定谔方程为:

iℏ ∂ψ/∂t = Ĥ ψ = [−(ℏ²/2m) ∂²/∂x² + V(x, t)] ψ

它是一阶时间、二阶空间的复系数偏微分方程,描述波函数的演化。定态方程则是它在 V 不显含时间时的本征值形式。两者的数值处理路线不同:定态问题归结为矩阵对角化,含时问题则需要时间步进(如 Crank–Nicolson 或分裂算符法)。但二者共享同一套空间离散:含时演化中每一步都要作用 Ĥ,其离散矩阵与定态问题完全一致。因此工程上的合理做法是先构造并验证 H 矩阵(检查对称性、边界行、量纲),再用同一个 H 去做本征求解或时间演化,避免两套离散不一致引入系统误差。

量纲一致性也值得在编码前确认。若采用原子单位制(ℏ = 1, m = 1, e = 1),则动能系数简化为 −1/2,长度单位为玻尔半径,能量单位为哈特里;若保留 SI 单位,ℏ²/2m ≈ 3.81×10⁻³⁸ J·m²,与网格步长平方相除后数值极小,容易在浮点运算中损失精度。教学示例中通常取 ℏ = 1、m = 1 的无量纲形式,此时 H 的对角元为 1/Δx² + V_i,次对角元为 −1/(2Δx²),便于直接观察 Δx 对能级收敛的影响。

从物理对象到离散矩阵:本节四个核心对象的衔接关系 波函数 ψ(x,t) 复值 · 归一化 ∫|ψ|²dx=1 边界:ψ(x_min)=ψ(x_max)=0 离散:长度 N 的复向量 Σ|ψ_i|²·Δx = 1 算符 Ĥ = T̂ + V̂ T̂ = −(ℏ²/2m)∂²/∂x² V̂ = V(x)(对角) 厄米性 → 实对称矩阵 中心差分保持对称 本征值问题 Ĥφ = Eφ 离散:H·φ = E·φ E 实数,φ 正交完备 低能级随 N 增大收敛 算符作用于 求本征解 含时薛定谔方程 iℏ ∂ψ/∂t = Ĥψ 一阶时间 + 二阶空间,复系数 数值路线:时间步进 Crank–Nicolson / 分裂算符 每步作用同一个离散 Ĥ 定态薛定谔方程 Ĥφ = Eφ(V 不显含 t) 分离变量 ψ = φ·e^(−iEt/ℏ) 数值路线:矩阵对角化 对称本征求解器 输出:能级 E_n 与定态 φ_n 共享同一离散哈密顿矩阵 H 工程要点:先构造并验证 H(对称性、边界行、量纲),再分别用于本征求解或时间演化,避免两套离散不一致

把上述关系落到可执行的检查上,可以在编码前完成三件事。第一,明确单位制与参数:选定 ℏ、m 的取值,写出动能系数 c = ℏ²/(2m),并确认网格步长 Δx 与截断区间长度 L = x_max − x_min 满足 N = L/Δx + 1。第二,写出离散哈密顿矩阵的构造规则并逐项核对:对角元为 2c/Δx² + V_i(若采用 H[i][i] = ℏ²/(mΔx²) + V_i 的等价写法),次对角元为 −c/Δx²,边界行按约束处理。第三,设定验证判据:对已知解析解的模型(如无限深方势阱,E_n = n²π²ℏ²/(2mL²)),比较数值最低能级与解析值的相对误差,并观察误差随 N 增大是否按 Δx² 下降。若误差不按预期收敛,优先检查边界行与势能采样位置,而不是急于更换算法。

本节的概念约定将贯穿后续所有数值章节:波函数用复向量表示、哈密顿量用实对称矩阵表示、定态问题用本征分解、含时问题用时间步进。后续讨论截断误差、稳定性与收敛阶时,都默认以这套离散约定为基准。