如果有多个原子,则后面是各个原子的态密度。各列分别为s,p,d的态密度。 每个原子的态密度都有700行。 通过这一方法可以找出每个原子的态密度,用origin画出总态密度和分波态密度。
四,能带结构。
在Si目录下建立文件夹band mkdir band
在band文件夹下准备INCAR,POSCAR, POTCAR, KOINTS, ma, run 6个文件。 1, 在做能带结构之前必须先进行静态计算。产生WAVECAR和CHGCAR文件。如果已产生,将它们拷贝到band目录下。
INCAR中和静态计算比较需要修改的地方:
ISTART = 1 此处表示将读已有的CHGCAR文件 LWAVE=F
LCHARG=F
KPOINTS文件需要修改。
计算能带结构时,选择的是高对称点。而静态计算是在k空间均匀撒点。 高对称点的选取可以从MS中得到,点击Modules-->CASTEP-->calculation, 出来一个对话框,点击properties, 勾选Band structure, 点击More, 即产生高对称性点坐标。选择合适的坐标写入KPOINTS文件。
k-points along high symmetry lines 10 10 10 5 ! 10 intersections Line-mode
rec
-points along high symmetry lines 10 ! 10 intersections Line-mode
rec 各k点相对于倒格子基矢来写的。 0.0 0.0 0.5 ! A k点的坐标 0.0 0.5 0.5 ! L
0.0 0.5 0.5 ! L
-0.3333333 0.6666667 0.5 ! H
-0.3333333 0.6666667 0.5 ! H 0.0 0.0 0.5 ! A
0.0 0.0 0.5 ! A 0.0 0.0 0.0 ! Gamma
0.0 0.0 0.0 ! Gamma
-0.3333333 0.6666667 0.0 ! K
-0.3333333 0.6666667 0.0 ! K 0.0 0.5 0.0 ! M
0.0 0.5 0.0 ! M
0.0 0.0 0.0 ! Gamma
此处计算的是沿着A-L-H-A-G-K-M的能带。每一段上都选择了10个k点。
KPOINTS文件写好之后,在提示符下运行 ./run ,即进行能带结构计算。
对产生的OUTCAR文件进行分析:
从OUTCAR的文件末尾搜索“fermi”关键字, 即看到
此即计算得到的A(0,0,0.5)点的本征能级。
可以看到总共有8个本征能级。4个被占据,4个空的。
将“k-point 1”前面部分的文字全部删去(dgg命令),再翻到文件末尾(shift+G),搜索“k-point”关键字(?k-point),将这段包含70个k点的本征能级的部分保存下来 在vi中写入: :1, XXX w ! band
XXX代表这一部分的行数。 则将这一部分文件存为“band” 文件。
为便于画图,需运行 ExtractBand.awk 脚本文件。 修改ExtractBand.awk脚本文件: #!/usr/bin/awk -f /k-point/ {
printf \ getline
for ( i=1; i<=8; i++ ) { getline printf \ }
printf \
修改i<= 的数值为每个k点对应的本征能级数目。 此处是为“8”。
在提示符下运行 ./ ExtractBand.awk < band > band.dat band.dat即为能带结构数据。可以用origin画图。
这个数据的费米能级并没有取在零点。如果需要将费米能级取在零点,需将所有能量减去费米能级的数值。
补充:
1, 需要重点学习的: 1)几个参数:
ENCUT, ISMEAR, SIGMA(计算金属时需注意)如何选取。 KPOINTS文件中k点的选取。
2)OUTCAR输出文件的内容。
2, 文件的传输
1) 从服务器到本地电脑(需要通过中转IP)
在服务器ssh终端提示符下输入
sftp XXX@中转IP
XXX 为用户账户名,
在提示符下输入 cd 目录名 put 文件
即可向 中转IP传送文件。
再通过winscp从中转IP向本地电脑传送文件即可将该文件传到本地电脑。
2) 从本地电脑向服务器传送文件,则 先通过winscp传到中转IP,再 在服务器上终端提示符输入
sftp XXX@中转IP XXX 为用户账户名,
输入密码后,在提示符下输入: cd 目录名 (放置文件的地方) get 文件名 (需要的目标文件名) 即可。
**********************************************

