24小时热门版块排行榜    

CyRhmU.jpeg
查看: 8564  |  回复: 37
【奖励】 本帖被评价13次,作者zxzj05增加金币 10.9

[资源] 【分享】借助MS建立abinit结构文件

在MS下建模,得到原胞或超胞的参数(a,b,c大小, 各原子坐标等信息),将这些信息拷贝到abinit输入文件相应的位置。

比如想计算一个2×2×2的AB超胞能带结构:

1.在MS中import   AB,如果没有现成的,就找到AB的晶体学参数,手动建立。如果是import的,将AB转变成primitive cell,如果是手动建立的,估计你找到的晶体学参数就是按primitive cell给的。
2.将primitive cell转变成2×2×2 supercell,菜单上有这个功能。
3.export这个supercell的晶体结构参数,可以输出.car或.cif文件。

下例为一个.cif文件
--------
data_AB
_audit_creation_date              2008-11-21
_audit_creation_method            'Materials Studio'
_symmetry_space_group_name_H-M    'P1'
_symmetry_Int_Tables_number       1
_symmetry_cell_setting            triclinic
loop_
_symmetry_equiv_pos_as_xyz
  x,y,z
_cell_length_a                    6.1490
_cell_length_b                    6.1490
_cell_length_c                    6.1490
_cell_angle_alpha                 60.0000
_cell_angle_beta                  60.0000
_cell_angle_gamma                 60.0000
loop_
_atom_site_label
_atom_site_type_symbol
_atom_site_fract_x
_atom_site_fract_y
_atom_site_fract_z
_atom_site_U_iso_or_equiv
_atom_site_adp_type
_atom_site_occupancy
A1     A     0.12500   0.12500   0.12500   0.00000  Uiso   1.00
B2    B   -0.00000   0.00000  -0.00000   0.00000  Uiso   1.00
A3     A     0.62500   0.12500   0.12500   0.00000  Uiso   1.00
B4    B    0.50000   0.00000  -0.00000   0.00000  Uiso   1.00
A5     A     0.12500   0.62500   0.12500   0.00000  Uiso   1.00
B6    B   -0.00000   0.50000  -0.00000   0.00000  Uiso   1.00
A7     A     0.62500   0.62500   0.12500   0.00000  Uiso   1.00
B8    B    0.50000   0.50000   0.00000   0.00000  Uiso   1.00
A9     A     0.12500   0.12500   0.62500   0.00000  Uiso   1.00
B10   B   -0.00000   0.00000   0.50000   0.00000  Uiso   1.00
A11    A     0.62500   0.12500   0.62500   0.00000  Uiso   1.00
B12   B    0.50000  -0.00000   0.50000   0.00000  Uiso   1.00
A13    A     0.12500   0.62500   0.62500   0.00000  Uiso   1.00
B14   B    0.00000   0.50000   0.50000   0.00000  Uiso   1.00
A15    A     0.62500   0.62500   0.62500   0.00000  Uiso   1.00
B16   B    0.50000   0.50000   0.50000   0.00000  Uiso   1.00
loop_
---------
4.从.cif文件中找出supercell的a,b,c以及各原子坐标

_cell_length_a                    6.1490
_cell_length_b                    6.1490
_cell_length_c                    6.1490

_cell_angle_alpha                 60.0000
_cell_angle_beta                  60.0000
_cell_angle_gamma                 60.0000

A1     A     0.12500   0.12500   0.12500   0.00000  Uiso   1.00
B2    B   -0.00000   0.00000  -0.00000   0.00000  Uiso   1.00
A3     A     0.62500   0.12500   0.12500   0.00000  Uiso   1.00
B4    B    0.50000   0.00000  -0.00000   0.00000  Uiso   1.00
A5     A     0.12500   0.62500   0.12500   0.00000  Uiso   1.00
B6    B   -0.00000   0.50000  -0.00000   0.00000  Uiso   1.00
A7     A     0.62500   0.62500   0.12500   0.00000  Uiso   1.00
B8    B    0.50000   0.50000   0.00000   0.00000  Uiso   1.00
A9     A     0.12500   0.12500   0.62500   0.00000  Uiso   1.00
B10   B   -0.00000   0.00000   0.50000   0.00000  Uiso   1.00
A11    A     0.62500   0.12500   0.62500   0.00000  Uiso   1.00
B12   B    0.50000  -0.00000   0.50000   0.00000  Uiso   1.00
A13    A     0.12500   0.62500   0.62500   0.00000  Uiso   1.00
B14   B    0.00000   0.50000   0.50000   0.00000  Uiso   1.00
A15    A     0.62500   0.62500   0.62500   0.00000  Uiso   1.00
B16   B    0.50000   0.50000   0.50000   0.00000  Uiso   1.00
注意这里的a、b、c单位为埃,原子坐标为fractal 格式(见_atom_site_fract_x)

5 abinit输入文件

# computation of the total energy using a conventional cell(2 2 2)
# Computation of the band structure.
# First, a SCF density computation, then a non-SCF band structure calculation.

ndtset 2

#Dataset 1 : usual self-consistent calculation
kptopt1 1          # Option for the automatic generation of k points,
                   # taking into account the symmetry
nshiftk1 4
shiftk1  0.5 0.5 0.5  # These shifts will be the same for all grids
         0.5 0.0 0.0
         0.0 0.5 0.0
         0.0 0.0 0.5
ngkpt1  4 4 4  
prtden1  1         # Print the density, for use by dataset 2
toldfe1  1.0d-6

#Dataset 2 : the band structure
iscf2    -2
getden2  -1
kptopt2  -3
nband2   8
ndivk2   10 12 17      # 10, 12 and 17 divisions of the 3 segments, delimited
                       # by 4 points.
kptbounds2  0.5  0.0  0.0 # L point
            0.0  0.0  0.0 # Gamma point
            0.0  0.5  0.5 # X point
            1.0  1.0  1.0 # Gamma point in another cell.
tolwfr2  1.0d-12
enunit2  1             # Will output the eigenenergies in eV

#Definition of the unit cell
chkprim 0

acell 3*11.6199 # the primitive AB supercell(2 2 2) a= 11.61992783 Bohr
angdeg 60 60 60

#Definition of the atom types
ntypat 2          # There is two types of atoms
znucl A  B        # The keyword "znucl" refers to the atomic number of the
                  # possible type(s) of atom. The pseudopotential(s)
                  # mentioned in the "files" file must correspond
                 
                        

#Definition of the atoms
natom 16           # There are 16 atoms in the 2*2*2 supercell
typat 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2   #
xred              # This keyword indicate that the location of the atoms
                  # will follow, one triplet of number for each atom
0.12500   0.12500   0.12500
0.00000   0.00000   0.00000
0.62500   0.12500   0.12500  
0.50000   0.00000   0.00000  
0.12500   0.62500   0.12500  
0.00000   0.50000   0.00000  
0.62500   0.62500   0.12500
0.50000   0.50000   0.00000  
0.12500   0.12500   0.62500
0.00000   0.00000   0.50000
0.62500   0.12500   0.62500
0.50000   0.00000   0.50000
0.12500   0.62500   0.62500  
0.00000   0.50000   0.50000  
0.62500   0.62500   0.62500
0.50000   0.50000   0.50000

#Definition of the planewave basis set
ecut  10          # Maximal kinetic energy cut-off, in Hartree


#Definition of the SCF procedure
nstep 100          # Maximal number of SCF cycles
toldfe 1.0d-6     # Will stop when, twice in a row, the difference
                  # between two consecutive evaluations of total energy
                  # differ by less than toldfe (in Hartree)
diemac 12.0       # Although this is not mandatory, it is worth to
                  # precondition the SCF cycle. The model dielectric
                  # function used as the standard preconditioner
                  # is described in the "dielng" input variable section.
                  # Here, we follow the prescription for bulk silicon.
6 计算
7 分析结果
回复此楼

» 收录本帖的淘帖专辑推荐

第一原理资料汇编 MS资料 Abinit 相关资料 有意思的

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

kingsix

新虫 (小有名气)


★ ★
zxzj05(金币+2,VIP+0):3Q! 鼓励讨论! 10-13 13:44
在abint中有个脚本cell2abint可以直接将Ms的结构转换为abinit输入文件的结构
7楼2009-06-18 13:42:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

Minicheung

至尊木虫 (职业作家)


★★★★★ 五星级,优秀推荐

学习,呵呵
2楼2009-04-29 09:17:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

狼狼乾坤

铁杆木虫 (职业作家)


★★★★★ 五星级,优秀推荐

楼主真敞亮
3楼2009-04-29 16:41:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
谢谢各位捧场!
4楼2009-04-29 22:12:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

★★★ 三星级,支持鼓励

不错哈……
5楼2009-04-29 22:49:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yjr

铁杆木虫 (正式写手)


★★★ 三星级,支持鼓励

多谢提供参考,谢谢!!
8楼2009-06-18 14:45:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

freshgirl

木虫 (正式写手)


★★★★★ 五星级,优秀推荐

先顶~

然后问个问题,定义unit cell时
acell 3*11.6199 # the primitive AB supercell(2 2 2) a= 11.61992783 Bohr
这个11.6199是怎么得到的?
是你建完supercell以后,发现a=b=c=11.6199?
那要是abc不同怎么办?也就是不是cubic怎么办?
10楼2009-09-28 18:47:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenyun0876

木虫 (正式写手)


嘿嘿……好方法,早就想这样用了,不过还没装MS。
13楼2009-10-13 11:02:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by freshgirl at 2009-9-28 18:47:
先顶~

然后问个问题,定义unit cell时
acell 3*11.6199 # the primitive AB supercell(2 2 2) a= 11.61992783 Bohr
这个11.6199是怎么得到的?
是你建完supercell以后,发现a=b=c=11.6199?
那要是abc不同 ...

国际单位转原子单位,
1Bohr=0.529177249A
14楼2009-10-13 13:45:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by kingsix at 2009-6-18 13:42:
在abint中有个脚本cell2abint可以直接将Ms的结构转换为abinit输入文件的结构

是吗!
没搞过,
你用的是哪个版本的?
对于用于cell2abint的MS文件,在从 MS保存出来时,是用 primitive cell 还是conventional cell?
15楼2009-10-13 13:50:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuan2017

新虫 (小有名气)


引用回帖:
Originally posted by zxzj05 at 2009-4-28 20:51:
在MS下建模,得到原胞或超胞的参数(a,b,c大小, 各原子坐标等信息),将这些信息拷贝到abinit输入文件相应的位置。

比如想计算一个2×2×2的AB超胞能带结构:

1.在MS中import   AB,如果没有现成的,就找到 ...

请问楼主,这里的rprim怎么设?
16楼2009-11-21 10:19:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuan2017

新虫 (小有名气)


楼主,我遇到了一个问题,我在MS中将GaAs的原胞的结构文件保存为cif,打开后
cell_length_a                    7.9948
_cell_length_b                    3.9974
_cell_length_c                    3.9974
所得到的是各个原胞基矢的长度,这与我们平时所定义acell为晶胞scale不同,这样cell_length_a  cell_length_b cell_length_c  可以直接用来做acell吗?
17楼2009-11-21 11:48:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by liuhuan2017 at 2009-11-21 11:48:
楼主,我遇到了一个问题,我在MS中将GaAs的原胞的结构文件保存为cif,打开后
cell_length_a                    7.9948
_cell_length_b                    3.9974
_cell_length_c                    3.9974
...

这得看你哦abinit里面的单位如何规定的
有一个关键词是定义单位的
18楼2009-11-21 14:07:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuan2017

新虫 (小有名气)


引用回帖:
Originally posted by zxzj05 at 2009-11-21 14:07:


这得看你哦abinit里面的单位如何规定的
有一个关键词是定义单位的

楼主可能误解我的意思了,我的意思是利用MS建模,然后保存为cif格式打开后,获得的_length_a    _length_b  _length_c是原胞的各个长度,而abinit里面的acell是晶胞的长度,所以应该不能直接拿来做acell吧?
20楼2009-11-21 17:50:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
单位一致就可以
21楼2009-11-23 14:24:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuan2017

新虫 (小有名气)


引用回帖:
Originally posted by zxzj05 at 2009-11-23 14:24:
单位一致就可以

楼主的意思就是acell设为晶胞和原胞的长度均可以?
22楼2009-11-23 16:30:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
23楼2009-11-25 14:38:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuan2017

新虫 (小有名气)


引用回帖:
Originally posted by liuhuan2017 at 2009-11-23 16:30:

楼主的意思就是acell设为晶胞和原胞的长度均可以?

楼主啊,如果是超晶胞,它的aell是什么啊?
24楼2009-11-25 16:25:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wanglianli136

铁杆木虫 (著名写手)


引用回帖:
Originally posted by zxzj05 at 2009-4-28 20:51:
在MS下建模,得到原胞或超胞的参数(a,b,c大小, 各原子坐标等信息),将这些信息拷贝到abinit输入文件相应的位置。

比如想计算一个2×2×2的AB超胞能带结构:

1.在MS中import   AB,如果没有现成的,就找到 ...

问问楼主怎么输入空间群,例如有对称性的结构,Mg的cif文件中的
_symmetry_equiv_pos_as_xyz
  x,y,z
  -y,x-y,z
  -x+y,-x,z
  -x,-y,z+1/2
  y,-x+y,z+1/2
  x-y,x,z+1/2
  y,x,-z
  x-y,-y,-z
  -x,-x+y,-z
  -y,-x,-z+1/2
  -x+y,y,-z+1/2
  x,x-y,-z+1/2
  -x,-y,-z
  y,-x+y,-z
  x-y,x,-z
  x,y,-z+1/2
  -y,x-y,-z+1/2
  -x+y,-x,-z+1/2
  -y,-x,z
  -x+y,y,z
  x,x-y,z
  y,x,z+1/2
  x-y,-y,z+1/2
  -x,-x+y,z+1/2

怎么在输入文件中体现?
25楼2009-12-30 11:23:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by wanglianli136 at 2009-12-30 11:23:

问问楼主怎么输入空间群,例如有对称性的结构,Mg的cif文件中的
_symmetry_equiv_pos_as_xyz
  x,y,z
  -y,x-y,z
  -x+y,-x,z
  -x,-y,z+1/2
  y,-x+y,z+1/2
  x-y,x,z+1/2
  y,x,-z
  x-y,-y,-z
  - ...

这个信息是对称操作
在cif文件最后才是原子占位、空间群、晶格常数等信息

许多cif文件空间群并不准确
最好在文献中查找,
或者在MS等可以画晶体结构的软件折中核实。

之后再按照本帖最开始的方法设置各个参数
详细参数解释还是得多看看说明书
或者结合别人的输入文件建立
26楼2010-01-03 18:55:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hometownlove

金虫 (小有名气)


★★★ 三星级,支持鼓励

赞,相当不错!
27楼2010-03-26 16:19:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanny0007

金虫 (小有名气)


★★★★★ 五星级,优秀推荐

楼主,你有没有试过计算CaO,我也是按照你这个方法建立supercell来算的,结果显示是直接带隙,而用primitivecell 计算出来是间接带隙。这是为什么啊?楼主给点意见吧,我为这个事已经头大了一周了,已经到山穷水尽的地步了……l
28楼2011-03-18 16:30:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanny0007

金虫 (小有名气)


引用回帖:
Originally posted by liuhuan2017 at 2009-11-21 17:50:10:
楼主可能误解我的意思了,我的意思是利用MS建模,然后保存为cif格式打开后,获得的_length_a    _length_b  _length_c是原胞的各个长度,而abinit里面的acell是晶胞的长度,所以应该不能直接拿来做acell吧?

我也觉得,abinit中的acell是晶包长度,然后比如2*2*2由rprim来定义

比如原来
rprim 1 0 0
        0 1 0
       0 0 1

经过2*2*2超晶包后acell保持不变,而rprim变为:
rprim  2 0 0
        0 2 0
        0 0 2

我的理解对吗??
29楼2011-03-18 16:35:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

awmc2008

至尊木虫 (文坛精英)


★★★★★ 五星级,优秀推荐

学习学习。谢谢楼主。
30楼2011-03-18 17:16:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by liuhuan2017 at 2009-11-21 17:50:10:
楼主可能误解我的意思了,我的意思是利用MS建模,然后保存为cif格式打开后,获得的_length_a    _length_b  _length_c是原胞的各个长度,而abinit里面的acell是晶胞的长度,所以应该不能直接拿来做acell吧?

我用MS试了一下,在MS中建成什么样的模型,导出的cif文件里的数据就是相应模型的数据啊。是可以直接拿到abinit中来用的啊。

关于acell和rprim我觉得没必要纠结于acell是原胞长度还是晶胞长度,只要二者放在一起能够给出三个基矢的长度和方向就行了。
即:acell(1)*rprim(1,*) 给出第一个基矢;
    acell(2)*rprim(2,*) 给出第二个基矢;
    acell(3)*rprim(3,*) 给出第三个基矢;
接着,再由xred给出各个原子相对于这三个基矢的分数坐标,这样整个体系就算建成了啊。


呵呵,个人愚见,还望更多讨论。
31楼2011-03-18 17:27:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanny0007

金虫 (小有名气)


引用回帖:
Originally posted by mazuju028 at 2011-03-18 17:27:16:
我用MS试了一下,在MS中建成什么样的模型,导出的cif文件里的数据就是相应模型的数据啊。是可以直接拿到abinit中来用的啊。

关于acell和rprim我觉得没必要纠结于acell是原胞长度还是晶胞长度,只要二者放在一 ...

说的有道理,我是觉得,acell是晶胞长度,由你说的方法乘rprim得到超晶胞的基矢,xred由如楼主的方法MS得到即可。

你觉得呢?
32楼2011-03-21 12:26:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by fanny0007 at 2011-03-21 12:26:31:
说的有道理,我是觉得,acell是晶胞长度,由你说的方法乘rprim得到超晶胞的基矢,xred由如楼主的方法MS得到即可。

你觉得呢?

是这样的。
33楼2011-03-21 12:56:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanny0007

金虫 (小有名气)


引用回帖:
Originally posted by fanny0007 at 2011-03-21 12:26:31:
说的有道理,我是觉得,acell是晶胞长度,由你说的方法乘rprim得到超晶胞的基矢,xred由如楼主的方法MS得到即可。

你觉得呢?

R1p(i)=scalecart(i)rprim(i,1)*acell(1)
R2p(i)=scalecart(i)rprim(i,2)*acell(2)
R3p(i)=scalecart(i)rprim(i,3)*acell(3)

这是我在abinit网上看到的,解释rprim变量。这里面scalecart是什么,没见用过,scalecart 和acell有什么区别??

你用的那个公式怎么么有定义scalecart这个变量呢?
34楼2011-03-21 15:05:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanny0007

金虫 (小有名气)


引用回帖:
Originally posted by mazuju028 at 2011-03-21 12:56:48:
是这样的。

R1p(i)=scalecart(i)rprim(i,1)*acell(1)
R2p(i)=scalecart(i)rprim(i,2)*acell(2)
R3p(i)=scalecart(i)rprim(i,3)*acell(3)

这是我在abinit网上看到的http://www.abinit.org/documentat ... s/varbas.html#rprim,解释rprim变量。这里面scalecart是什么,没见用过,scalecart 和acell有什么区别??

你用的那个公式怎么么有定义scalecart这个变量呢?
35楼2011-03-21 15:05:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
Originally posted by fanny0007 at 2011-03-21 15:05:59:
R1p(i)=scalecart(i)rprim(i,1)*acell(1)
R2p(i)=scalecart(i)rprim(i,2)*acell(2)
R3p(i)=scalecart(i)rprim(i,3)*acell(3)

这是我在abinit网上看到的[url]http://www.abinit.org/documentation/hel ...

scalecart这个变量,是在最近的两个版本才引入的,根据定义:
R1p(i)=scalecart(i)rprim(i,1)*acell(1)
R2p(i)=scalecart(i)rprim(i,2)*acell(2)
R3p(i)=scalecart(i)rprim(i,3)*acell(3)

假设scalecart为(a,b,c),acell为(j,k,l),
rprim为1 2 3
          4 5 6
          7 8 9
那么:
R1=j*(1*a, 2*b, 3*c)
R2=k*(4*a, 5*b, 6*c)
R3=l*(7*a, 8*b,9*c)
相当于scalecart的三个分量分别与笛卡尔坐标的三个分量求积。

个人觉得,由rprim和acell表达就够了。
36楼2011-03-22 09:16:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Langmuir11

银虫 (初入文坛)


太棒了!
37楼2011-04-09 14:55:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liu_gang

银虫 (小有名气)


★★★★★ 五星级,优秀推荐

顶一下
我建立了LiNbO3的4 4 2的supercell,为什么caculation的时候报失败呢?就是用Ms上的那个水波纹按钮
38楼2011-12-05 11:08:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
zdhlover6楼
2009-05-08 20:52   回复  
 
wanggq049楼
2009-09-27 21:58   回复  
 
akakcolin11楼
2009-09-28 22:39   回复  
 
mrd-8112楼
2009-09-30 20:07   回复  
hao
aylayl0819楼
2009-11-21 15:42   回复  
 
相关版块跳转 我要订阅楼主 zxzj05 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复(可上传附件)
信息提示
请填处理意见