这是本文档旧的修订版!
石墨烯纳米带(GNRs)对于新奇电子学应用是很有意思的体系。根据带边的形状,纳米带可以具有金属特性或者半导体特性。我们在本实例中将看到(正如从文献[SCL06]中所被大家熟知),自旋也对GNRs的输运性质起到一个很重要的作用。
您将使用VNL和ATK的功能来研究一个锯齿形GNR的自旋分辨能带结构。如果执行计算不考虑自旋这些纳米带是金属的,但当考虑自旋时会打开一个能隙。通过绘出不同k点的导带和价带的Bloch态,您将看到两个自旋分量如何定域于纳米带的两侧。
注意!
本实例包括的计算将会在一个普通笔记本电脑上最多花费5-10分钟,所以没有必要使用一个分开的,更有力的电脑或者使用并行计算来运行任务。
这里假定您对软件中的基本操作熟悉到对应于完成基础VNL和ATK实例中得到的经验水平。没必要精通编程。
我们将以构造一个石墨烯zigzag纳米带和计算能带结构作为开始。自旋将在下一个部分添加。
开启VNL,创建一个新的项目并命名,然后选择它并点击Open。点击工具栏上的Builder按钮 来启动Builder。
在Builder中,点击Add ‣ From Plugin ‣ Nanoribbon。这启动石墨烯带构建工具。
保留所有参数为默认值并点击Build。
重复被自动地设置为最小值。这减少了计算时间并使得能带结构的分析更容易。
垂直纳米带方向有周期性边界条件,单胞的填充距离自动设置为10Å,以减少纳米带周期构象的剩余静电相互作用。
现在通过点击窗口右手边下角落的“发送”按钮 将结构送至Script Generator,并从弹出菜单中选择Script Generator(默认选项,粗体高亮)。 在Script Generator中,
gnr_bandstructure.nc
。Script Generator现在看起来应像这样:
双击打开New Calculator。
多数默认参数是足够好的,但其中一些需要调整。
在C方向选择50个k点。 这是计算时间和精度的一个很好的权衡。沿着横向A和B方向您只需要一个k点,因为系统在这些方向不是周期性的。
计算器对话应该有如下的设置
为了指定能带结构计算,双击Bandstructure模块。
提示!
当设置脚本时,标签“G”在ATK(和VNL)中被用来指定$\Gamma$点。在能带结构绘图中,正确的希腊标签将会被显示(见下)。
现在通过点击按钮 并在弹出菜单选择Job Manager来运行计算。将Python脚本以一个合适的名字保存,比如gnr_bandstructure.py
并点击OK。
返回VNL主窗口。文件gnr_bandstructure.nc
现在应在左列“Project Files”中可见。在中间列,叫做LabFloor,选择Group by Item Type。
在LabFloor上,您可以看到文件包含两项:计算的Bandstructure和BulkConfiguration本身。后一项不仅包括了几何构型,也包括了计算的完整状态。我们将在下一章使用这个来计算Bloch函数,而并不必须要重新运行自洽计算。对此,您将需要知道BulkConfiguration的Id,它显示于文件名后;在这里它是gID000。 现在,为了绘出能带结构,选择Bandstructure项(gID001),并点击在右侧插件面板上的Bandstructure Analyzer按钮。
结果绘图如下图所示。注意对于高kz值的导带和价带是如何粘在一起的。这是锯齿形纳米带(在我们的模型中)一个典型特征并明显地使我们的纳米带呈现金属性。
在ATK中一个非常有用的特点是它计算和绘出Bloch态的能力,这可被用来研究特定能带的对称性和如何与输运性质相联系。您现在将使用这个性能来看接近$\Gamma$点的Bloch态如何非定域化地穿过纳米带,与此同时具有高kz的态向边界更加局域化。
纳米带在每个单胞中包括8个碳原子和2个氢原子。一个碳原子贡献4个价电子(2s22p22)而氢原子只贡献一个(1s)。所以在体系中有34个电子。每条能带是双重简并(由于自旋)所以将会有17条价带。从0开始数,最高价带的能带指数是16而最低导带的指数将为17。
您现在将设置一个脚本来计算这两条能带在三个不同k点的Bloch函数。纳米带的自洽态被保存于gnr_bandstructure.nc
文件中,您可以为这个分析恢复它,而不是再度运行自洽循环。这是一个非常便捷的方法来分开实际的自洽计算-对此您也许喜欢在一个集群上运行(至少对于一个更大的体系),和通常需要更少资源并可以通过在VNL中的Job Manager直接运行的后续分析。
gnr_bandstructure.nc
。现在,我们需要设置Bloch态的计算。
gnr_bloch.nc
。Script Generator窗口现在看起来如下:
分别双击前三个Bloch state按钮,在Quantum number中键入16(也就是能带指数),但分别给它们不同的k点:
在第二个实例中,BlochState窗口看起来应如下图:
对剩下的三个Bloch state按钮重复此过程,但这次键入17作为Quantum number的值。 最后,像之前,将任务送至Job Manager并开始任务的执行。
提示!
这个计算非常快,但产生的NetCDF文件将会非常大(大约120Mb),这就是为什么数据被保存在一个分开的文件中。通过这种方法,我们避免包含自洽计算的初始文件过大(如果您想做一些其他的分析,过大会使得对它的读取变慢)。
当任务完成时,返回主VNL窗口。gnr_bloch.nc的结果应自动地被包含在LabFloor中(看到gnr_bloch.nc
在Project Files中是被选中的)。选择按照Item Type来分组并展开BlochState模块。
点击六个当中的最后一个BlochState项(gnr_bloch.nc
gID005)并选择Viewer,在点击OK前确保Plot type为Isosurface。为其它项做同样的操作,继续做gID004,直到全部6项在Viewer窗口中显示。现在,在Viewer窗口顶部的菜单中选择Scenes ‣ Tile,以便整齐地排列这些绘图。注意到这些绘图现在以在左上角最新的窗口排列出,意味着我们使价带在顶排而使导带在底排,伴随着gamma点在左边和Z点在右边。
提示!
您也可以通过拖放来添加随后的Bloch state项到Viewer窗口。然而,在本例中您需要确保不要将项放到已存的绘图上,因为这将添加到已存绘图上而不是创建出一个分开的绘图。
为了调整每幅图的性能,点击菜单右边的Properties。这必须对每个窗口分别地完成。
下面是在viewer中显示的6个不同Bloch态的可视化。上面三个的quantum number是16而下面三个是17,从左到右的k点坐标为: (0,0,0),(0,0,0.35)和(0,0,0.5)。
观察各自的Bloch函数,首先注意在G和Z点的波函数是实数(正如预期),其次在价带和导带Bloch函数之间有一个明显的不同。占据的价带态显现为在纳米带方向“连接”,而非占据的导带态更导向于穿越纳米带。在Z点, 态逐渐朝向纳米带边缘局域化。
在下一个部分,您将看到在Z点附近自旋如何劈裂简并,和两个自旋态如何在相对边缘变得局域化。
提示!
为了纳米带的几何构型叠加在绘图上,从文件gnr_bandstructure.nc
将BulkConfiguration项拖到打开的Viewer窗口中的一个BlochState窗口上。