紧束缚近似下,用 Matlab 模拟三维简单立方晶格 s 态电子在[1 1 0]方向上的电子有效质量分布曲线。(设晶格常数为 a ,交叠积分为J1) 思路: 首先确定简单立方晶格 s 态电子的能带函数表达式/[110]方向的能带函数,从而得到[110]方向的电子有效质量,绘制出电子有效质量分布曲线。
时间: 2024-03-21 10:44:13 浏览: 146
首先,简单立方晶格的布拉维格子常矢量为 $\boldsymbol{a}_1=a\hat{x},\boldsymbol{a}_2=a\hat{y},\boldsymbol{a}_3=a\hat{z}$,其中 $a$ 为晶格常数。对于 s 态电子,能带函数为 $E(\boldsymbol{k})=-2J_1(\cos(k_xa)+\cos(k_ya)+\cos(k_za))$。其中,$\boldsymbol{k}=k_x\boldsymbol{a}_1+k_y\boldsymbol{a}_2+k_z\boldsymbol{a}_3$ 为晶格动量矢量,$J_1$ 为交叠积分常数。
我们考虑在 $[1\ 1\ 0]$ 方向上计算电子有效质量分布曲线。$[1\ 1\ 0]$ 方向的布拉维格子常矢量为 $\boldsymbol{b}=\frac{2\pi}{a}(1\ 1\ 0)$。在 $[1\ 1\ 0]$ 方向上,电子能带函数可以写成 $E(\boldsymbol{k})=-2J_1(\cos(k_xa)+\cos(k_ya))$,其中 $\boldsymbol{k}=k_x\boldsymbol{a}_1+k_y\boldsymbol{a}_2$。
为了计算电子有效质量,我们需要求解能带曲线在 $[1\ 1\ 0]$ 方向上的二阶导数。由于 $E(\boldsymbol{k})$ 对 $k_x$ 和 $k_y$ 的依赖是相同的,因此我们只需要计算其中一个方向上的二阶导数即可。在 $[1\ 1\ 0]$ 方向上,能带曲线可以写成 $E(k)= -2J_1(\cos(ka)+\cos(ka))=-4J_1\cos(ka)$。因此,电子有效质量可以表示为 $m^*=\hbar^2\left(\frac{d^2E(k)}{dk^2}\right)^{-1}$。
在 Matlab 中,我们可以通过以下代码实现以上计算过程:
```
a = 1; % 晶格常数
J1 = 1; % 交叠积分常数
b = 2*pi/a*[1 1 0]; % [110] 方向的布拉维格子常矢量
k = linspace(0,pi/a,100); % 在第一布里渊区内取 100 个点
E = -4*J1*cos(a*k); % 能带函数
m_star = (hbar^2)./diff(diff(E))./(b(1)^2); % 电子有效质量
plot(k(2:end),m_star); % 绘制电子有效质量分布曲线
```
其中,`hbar` 为普朗克常数除以 $2\pi$。最终的电子有效质量分布曲线将在绘图窗口中显示。
阅读全文