BdG 哈密顿量在不同基矢下面的形式会略有不同,但二者计算的结果都是等价的,因为二者的基矢之间也只是幺正变换联系的,这里就展示一下具体的实例。
基矢选择一
选择 Nambu 基矢
构建 BdG 哈密顿量
其中$h(\mathbf{k})$是正常态哈密顿量,$\Delta(\mathbf{k})$是配对矩阵($2\times 2$)。费米统计要求电子交换反对易
配对矩阵的一般形式为
其中$\psi(\mathbf{k})$是自旋单态分量,是一个标量;$\mathbf{d}(\mathbf{k}) = (d_x, d_y, d_z)$是自旋三重态配对的$\boldsymbol{d}$矢量,$is_y$保证自旋部分是反对称的。根据方程$\eqref{eq:delta}$,对于自旋单重态有
自旋单态的空间部分是偶函数;对于自旋三重态
因此三重态配对的空间部分是奇函数。
基矢选择二
现在考虑第二种基矢选择
从形式看,就是将配对矩阵$\eqref{eq:p1}$中的$is_y$吸收到了基矢中,因为配对矩阵是成对电子产生或者湮灭对应的分量,所以此时就只需要对 Nambu 基矢的空穴部分做变换即可,将因子吸收进来。首先要说明的是这个操作其实也是一个幺正变换
在这个基矢下配对矩阵形式就很简单的
所以在新的基矢$\eqref{eq:basis2}$下配对矩阵就变成了
其中$\psi(\mathbf{k})$是标量函数,是自旋单重态的空间部分;$\mathbf{d}(\mathbf{k}) \cdot \mathbf{s}$是矢量函数,是自旋三重态部分。所以在新基矢下面写超导配对就很方便,比如一个 helical 的$p_x\pm ip_y$超导体
因此配对项处在反对角线上,所以直接就是$\tau_x$了,这种基矢下写配对项来就很方便了。但是这种基矢下正常态在写到空穴空间的时候,又不能像基矢$\eqref{eq:basis1}$下那样简洁,直接由$-H^*(-\mathbf{k})$来得到,有利就有弊吧。
实例
首先在基矢$\eqref{eq:basis}$下给出一个哈密顿量
能谱为
可以通过幺正矩阵$\eqref{eq:U1}$变换就得到
用程序直接验证
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ClearAll["`*"]; {s0, sx, sy, sz} = PauliMatrix[{0, 1, 2, 3}]; g1 = KroneckerProduct[sz, sz]; g2 = KroneckerProduct[sz, sy]; g3 = KroneckerProduct[sy, sy]; g4 = KroneckerProduct[sz, s0]; ham = d1 g1 + d2 g2 + d3 g3 - d4 g4; U0 = KroneckerProduct[(sz + s0)/2, s0] + KroneckerProduct[(s0 - sz)/2, -I sy]; Style[MatrixForm[U0], FontSize -> 24, Blue] func1[mat_] := Style[MatrixForm[U0 . mat . Inverse[U0]], FontSize -> 20, Blue] Style[MatrixForm[#], FontSize -> 20, Red] & /@ {KroneckerProduct[sz, sz], KroneckerProduct[sz, sy], KroneckerProduct[sy, sy], KroneckerProduct[sz, s0]} func1[#] & /@ {g1, g2, g3, g4}
Style[MatrixForm[#], FontSize -> 20, Green] & /@ {KroneckerProduct[s0, sz], KroneckerProduct[sz, sy], KroneckerProduct[sx, s0], KroneckerProduct[sz, s0]}
|
两种基矢下得到的能谱都是相同的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ClearAll["`*"]; {s0, sx, sy, sz} = PauliMatrix[{0, 1, 2, 3}]; g1 = KroneckerProduct[sz, sz]; g2 = KroneckerProduct[sz, sy]; g3 = KroneckerProduct[sy, sy]; g4 = KroneckerProduct[sz, s0]; ham1 = d1 g1 + d2 g2 + d3 g3 - d4 g4; vals1 = Eigenvalues[ham1] // FullSimplify vals1 = vals1 /. {d1 -> (V0 + V1 Cos[k]), d2 -> \[Lambda]0 Sin[k], d3 -> \[CapitalDelta]0, d4 -> \[Mu]}; gg1 = KroneckerProduct[s0, sz]; gg2 = KroneckerProduct[sz, sy]; gg3 = KroneckerProduct[sx, s0]; gg4 = KroneckerProduct[sz, s0]; ham2 = d1 gg1 + d2 gg2 + d3 gg3 - d4 gg4; vals2 = Eigenvalues[ham2] // FullSimplify vals2 = vals2 /. {d1 -> (V0 + V1 Cos[k]), d2 -> \[Lambda]0 Sin[k], d3 -> \[CapitalDelta]0, d4 -> \[Mu]};
|
完整的 Mathematica 文件点击这里下载
鉴于该网站分享的大都是学习笔记,作者水平有限,若发现有问题可以发邮件给我
也非常欢迎喜欢分享的小伙伴投稿