24小时热门版块排行榜    

查看: 609  |  回复: 1

souledge

专家顾问 (著名写手)

[求助] 如何在Abinit中固定特定原子的优化方向?

帮同学计算在BN单层片上垂直吸附氢气分子时,距离与键能的关系,考虑到同学不会使用也没安装Linux,于是就准备用Abinit的批量计算功能来解决问题。
计算的模型如下:

由于BN的模型已经测试过收敛了,所以就固定所有的B、N原子。而下面的氢原子由于要作为自变量用,所以也固定,只有上面的氢原子可以沿着Z轴方向移动,以达到最小力的状态。
查看了一下Abinit的输入参数,发现有iatfix,iatfixx,iatfixy,iatfixz四个参数可以控制变化方向,但是说明中不是那么清楚(好吧,我承认我英语也不是怎么好),而且找了半天连个使用这些参数的例子都没有找到……
就根据自己的理解来用了:
CODE:
ndtset 11
natom  20
ntypat  3
znucl  5  7  1
typat  9*1  9*2  2*3
acell  2*xxxxx  xxxxx  Angstrom
angdeg  90  90  120
xred:
  0.2222222288449608   0.1111111144224802   0.5000000000000000  # B
, 1
  ..........................................
  0.7777777810891470   0.8888888955116270   0.5000000000000000  # N, 18
  0.5555555621782941   0.4444444477558135   0.5500000000000000  # H, 19
  0.5555555621782941   0.4444444477558135   0.6000000000000000  # H, 20
xred+
  0.0000000000000000   0.0000000000000000   0.0000000000000000  # B, 1
  ...........................................
  0.0000000000000000   0.0000000000000000   0.0200000000000000  # H, 20
iatfix  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19
iatfixx  20
iatfixy  20
iscf  7
ionmov  11
kptopt  1
nshiftk  1
shiftk  0.0  0.0  0.5
ngkpt  xx  xx  1
ixc  xx
ecut  xxx
ecutsigx  xxx
nstep  xxx
ntime  xxx
tolvrs  xxx

本着对他人负责的态度,在放到同学的Win7 64-bit下计算前,先放在借的物理系的集群中试了试,结果就晕了,不仅仅是上面的氢原子在移动,那是所有的原子都在动……
难道我的iatfix参数使用的方式不对么?这些个参数应该怎样使用才算对呢~
最后很无奈的使用PWscf在集群上批量计算了……但是还是想解决一下Abinit中的问题~
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

» 本主题相关价值贴推荐,对您同样有帮助:

思想重于技巧,内涵重于表象
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

souledge

专家顾问 (著名写手)

uuv2010: 期待将解决办法与大家分享,呵呵 2012-02-03 13:09:37
ben_ladeng(专家考核): 2012-02-03 13:28:27
木有人回复,不过问题已经解决了……申请版主退还虫币……
思想重于技巧,内涵重于表象
2楼2012-02-03 12:34:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 souledge 的主题更新
信息提示
请填处理意见