OpenMX能带打开仿真

在OpenMX当中,可以将晶胞的多条近似重叠的能带打开成原胞仿真结果。构建大一些的晶胞可以方便我们对体系进行赝原子轨道分解,还可以仿真缺陷和掺杂的情况。

先上一个石墨烯的原胞版的能带打开范例。在这个范例当中,由于使用的是原胞,所以仿真结果和晶胞一致,即使不设置参考晶格矢量。

文件名为Graphen_C_Primitive.dat

仿真结果文件有unfold_orbup,这里面第一列是k点,第二列是对应的能量,可以用gnuplot来画1:2出(打开版的)能带。可以验证这样算出的能带和普通方式算出的能带是一样的。

OpenMX3.8用户手册第50节插图,仿真SiC的能带打开。(a)红线是普通方式算的能带,绿色圆圈代表用能带打开的方式算的。(b)用2*2晶胞算的加上了赝原子轨道分解的内容,绿色代表s轨道+px+py轨道的对比分量,紫色代表pz对比分量。

接着说上面代码的结果,上面的代码是最简单的石墨烯的能带打开仿真。出现的文件中有一个.unfold_plotexample文件。文件名为Graphene_C_Primitive_Te.dat,部分内容如下:

只要仿真没错,都会有这个文件。

可以用gnuplot 的load命令直接load这个文件

就可以画出图

貌似为了仿真倒带性质,OpenMX用户手册在SiC的例子里添加了一个Te空原子。我们也在石墨烯的仿真文件中照猫画虎,添加一个Te空原子,修改后的部分文件内容和仿真结果如下:

将晶胞扩充为原胞

我们继续将晶胞扩充为原胞,诸多细节不再列举。代码如下:

用上面介绍的gnuplot方法画出结果:

plot ‘graphene_c_nsp_p.unfold_totup’ using 1:2:($3)*0.05 notitle with circles lc rgb ‘red’

带隙还在,可以接受。再进一步,填入空隙,结果如下。可以发现,圆圈多了很多。代码放在附录里面。Graphene_C_NSP_P_Te.dat

上面的是总的totup文件的数据。要获得赝原子轨道分解的数据需要将unfold_plotexample文件的代码写成如下这样:

得到的图形如下:

仿真掺杂

在石墨烯表面掺入一个磷原子,能带的移动可以用上面的理论与方法直观地看到了。对应的仿真文件为名为Graphene_C_NSP_V.dat。该文件也放在附录当中。

而画出它这个图的plotexample文件为:

使用Band.kpath和Band.Nkpath命令来控制产生能带数据。如果不要能带,这个就可以不写。产生的.Band文件要用gnuband13处理。

处理之后,把BANDDAT1的数据和unfold_orbup文件画在一个图中

附注

Graphene_C_NSP_P_Te.dat

Graphene_C_NSP_V.dat

留下评论