调节层间距(shell语言,笔记)


    POSCAR
	Generated by VASPKIT code               
     2	   1.00000000000000     
     3	     3.1784544126510399    0.0000000000000000    0.0000000000000000
     4	    -1.5892272107420524    2.7526222656242099    0.0000000000000000
     5	     0.0000000000000013    0.0000000000000022   21.0793861084031207
     6	   V    S 
     7	     2     4
     8	Direct
     9	  0.0000000000000000 -0.0000000000000000  0.3555211209875906
    10	0.6666666699999979 0.3333333300000021 0.6459019790124094
    11	  0.6666666699999979  0.3333333300000021  0.4257010942339575
    12	  0.6666666699999979  0.3333333300000021  0.2847563410611897
    13	0.0000000000000000 -0.0000000000000000 0.7166667589388103
    14	-0.0000000000000000 -0.0000000000000000 0.5757220057660424

pre.sh 调节层间距脚本

7,8,9 列程序修改上层原子c轴坐标:POSCAR 上层原子的c方向+(层间距变化值/C轴大小)

E=$(seq  -0.5 0.1 3.0 )      #层间距变化值(层间s-s之间)
for i in $E                
do
   mkdir a.$i
   cp -r scf a.$i/       # 明确指定需要复制的文件
   cp -r band a.$i/
   z=$(awk 'NR==5{printf ("%.4f\n", $3)}' scf/POSCAR)            #c轴大小位置五行三列 
   awk '{if(NR==10) print $1,$2,$3 +'$i/$z'; else print $0}'  scf/POSCAR >a.$i/scf/POSCARtep                                              #10行三列,上层 V
   awk '{if(NR>12)  print $1,$2,$3 +'$i/$z'; else print $0}' a.$i/scf/POSCARtep >a.$i/scf/POSCAR                                                 #13,14 行三列上层S
   rm a.$i/scf/POSCARtep
   cp a.$i/scf/POSCAR  a.$i/band/POSCAR
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值