|
|
【答案】應(yīng)助回帖
★ ★ ★ ★ ★ ★ ★ ★ franch: 金幣+5, 鼓勵(lì)交流 2013-05-20 20:45:15 菲頂頂: 金幣+3, ★★★很有幫助 2013-05-22 08:56:07
轉(zhuǎn)貼——用Material Studio構(gòu)建復(fù)雜模型及轉(zhuǎn)換成poscar的2種方法
我發(fā)現(xiàn)做表面的還不少。這里我也給大家介紹一點(diǎn)經(jīng)驗(yàn),簡(jiǎn)單點(diǎn)表面構(gòu)建法前面介紹了,那么這里我介紹“用Material Studio構(gòu)建稍微復(fù)雜的表面模型”。這里介紹的是構(gòu)造一個(gè)根號(hào)3x2的pt(111)表面。
用MS Modeling制作slab模型結(jié)構(gòu)圖
1, 打開MS modeling,建立一個(gè)項(xiàng)目,如test;
2, 右擊test項(xiàng)目,在下拉菜單中選擇import,在彈出的菜單中選擇Structures/metals/pure-metals/Pt;
3, 在主菜單中的Build選擇surfaces/Cleave surface,
4, 在彈出的菜單中處理數(shù)據(jù)
(i)在surface box界面下
a)你所要做的表面,如[111]; 也就是將cleave plane [h k l]修改成 [1 1 1];
b) 修改深度,即將depth修改成你所需要的原子層數(shù), 如4;
(ii)在options界面下
將Orientation standard選項(xiàng)改成U矢量沿x軸方向,V在xy平面
(iii)在surface Mesh的界面下
修改U,V矢量。
如保持U不變,將V矢量修改成 0.5 0.5 -1
5,點(diǎn)擊cleave,產(chǎn)生一個(gè)[1 1 1]的表面模型,
6,在主菜單中的Build選擇Crystals/Build Vaccum Slab
7,在彈出的菜單中修改相應(yīng)的參量,比如將真空厚度修改成14angstrom, 點(diǎn)擊build產(chǎn)生一個(gè)Slab模型;
8,在主菜單中的Build選擇Symmetry/supercell,將單胞修改成你所需要的大小,如將A修改成2,點(diǎn)擊Create supercell
這樣產(chǎn)生了你所要的表面
在該表面,你可以非常簡(jiǎn)單的看出hcp與fcc的差別,以及top,bridge位置。
如果你需要產(chǎn)生vasp的poscar文件,那么你可以從ms模塊導(dǎo)出這個(gè)文件為.car文件(它是卡迪爾坐標(biāo)),簡(jiǎn)單進(jìn)行處理下就變成vasp了。
比如我這里有個(gè)。car坐標(biāo):
Quote:
!BIOSYM archive 3
PBC=2D
Materials Studio Generated CAR File
!DATE Thu Nov 16 09:42:17 2006
PBC 11.5352 4.9949 90.0000(p 1)
Au1 0.000000000 2.679917131 -2.354607603 XXXX 1 xx Au 0.000
Au2 5.767587171 2.679917131 -2.354607603 XXXX 1 xx Au 0.000
Au3 2.883793586 2.679917131 -2.354607603 XXXX 1 xx Au 0.000
Au4 8.651380757 2.679917131 -2.354607603 XXXX 1 xx Au 0.000
Au5 1.441896793 0.182478626 -2.354607603 XXXX 1 xx Au 0.000
Au6 7.209483964 0.182478626 -2.354607603 XXXX 1 xx Au 0.000
Au7 4.325690379 0.182478626 -2.354607603 XXXX 1 xx Au 0.000
Au8 10.093277550 0.182478626 -2.354607603 XXXX 1 xx Au 0.000
Au9 1.441896793 1.847437629 0.000000000 XXXX 1 xx Au 0.000
Au10 7.209483964 1.847437629 0.000000000 XXXX 1 xx Au 0.000
Au11 4.325690379 1.847437629 0.000000000 XXXX 1 xx Au 0.000
Au12 10.093277550 1.847437629 0.000000000 XXXX 1 xx Au 0.000
Au13 0.000000000 4.344876134 -0.000000000 XXXX 1 xx Au 0.000
Au14 5.767587171 4.344876134 0.000000000 XXXX 1 xx Au 0.000
Au15 2.883793586 4.344876134 0.000000000 XXXX 1 xx Au 0.000
Au16 8.651380757 4.344876134 0.000000000 XXXX 1 xx Au 0.000
end
end
要轉(zhuǎn)換成vasp,下面貼出我的程序是:
CODE: [Copy to clipboard] parameter(nsum=16,nsun=0,n=16)
real x(n),y(n),z(n)
real lx(3),ly(3),lz(3)
real lattice
character p
character*18 selective
character*6 direct
lx=0.0
ly=0.0
lz=0.0
lattice=4.64
lx(1)= 11.8800/lattice
ly(2)= 6.5761/lattice
lz(3)= 15.8554/lattice
open(1,file="Au (1 1 1) (4).car"
do i=1,5
read(1,*)
enddo
do i=1,n
read(1,*)p,x(i),y(i),z(i)
enddo
do i=1,2
read(1,*)
enddo
close(1)
open(2,file="POSCAR"
write(2,*)"rutile.TiO2(110)"
write(2,15)lattice
15 format(f15.8)
write(2,16)lx
write(2,16)ly
write(2,16)lz
16 format(3f15.8)
write(2,17)nsum,nsun
17 format(2I5)
Selective="Selective dynamics"
direct="direct"
write(2,171)Selective
write(2,172)"direct"
171 format(A18)
172 format(A6)
do i=1,n
write(2,18)x(i)/lx(1)/lattice,y(i)/ly(2)/lattice,z(i)/lz(3)/lattice
18 format(3f15.8," T T T"
enddo
close(2)
end
那么產(chǎn)生的poscar文件:
Quote:
rutile.TiO2(110)
4.64000000
2.56034500 .00000000 .00000000
.00000000 1.41726300 .00000000
.00000000 .00000000 3.41711200
16 0
Selective dynamics
direct
.00000000 .40752380 -.14850510 T T T
.48548710 .40752380 -.14850510 T T T
.24274360 .40752380 -.14850510 T T T
.72823070 .40752380 -.14850510 T T T
.12137180 .02774876 -.14850510 T T T
.60685890 .02774876 -.14850510 T T T
.36411530 .02774876 -.14850510 T T T
.84960250 .02774876 -.14850510 T T T
.12137180 .28093210 .00000000 T T T
.60685890 .28093210 .00000000 T T T
.36411530 .28093210 .00000000 T T T
.84960250 .28093210 .00000000 T T T
.00000000 .66070720 .00000000 T T T
.48548710 .66070720 .00000000 T T T
.24274360 .66070720 .00000000 T T T
.72823070 .66070720 .00000000 T T T
如果覺(jué)得有用的話,大家就拍下磚啊,讓更多的同志們能探討和學(xué)習(xí)表面構(gòu)建.支持下我的嘔心原創(chuàng) ^_^!
第二種構(gòu)建poscar進(jìn)階方法,可構(gòu)建高指數(shù)面,納米線管等復(fù)雜結(jié)構(gòu)
在ms模塊中搭建好所需要的的結(jié)構(gòu),然后點(diǎn)一個(gè)模塊比如castep下拉菜單中的“calcualtion”,出現(xiàn)一個(gè)菜單,在該菜單最下方出現(xiàn)三個(gè)選項(xiàng),run,files,help,我們選擇點(diǎn)擊“files”,然后點(diǎn)擊“save files”。這個(gè)時(shí)候你建立的結(jié)構(gòu)就會(huì)默認(rèn)保存在項(xiàng)目下。你到項(xiàng)目下打開你保存的文件。會(huì)看到一個(gè)*.cell文件,如果看不到,你就到工具欄下設(shè)置下顯示隱藏的文件,*.cell是隱藏的文件。打開這個(gè)cell文件,你會(huì)看到前面是坐標(biāo)文件,比如:
CODE: [Copy to clipboard] %BLOCK LATTICE_CART
2.555294556406364 -1.475300000000001 0.000000000000000
0.000000000000000 2.950600000000000 0.000000000000000
0.000000000000000 0.000000000000000 4.678800000000000
%ENDBLOCK LATTICE_CART
%BLOCK POSITIONS_FRAC
Ti 0.3333333333333334 0.6666666666666667 0.2500000000000000
Ti -0.3333333333333334 -0.6666666666666667 0.7500000000000001
%ENDBLOCK POSITIONS_FRAC
%BLOCK KPOINTS_LIST
-0.5000000000000000 -0.5000000000000000 0.4166666666666666 0.010000000000000
-0.5000000000000000 -0.5000000000000000 0.2500000000000000 0.010000000000000
-0.5000000000000000 -0.5000000000000000 0.0833333333333333 0.010000000000000
-0.5000000000000000 0.4000000000000000 0.4166666666666666 0.040000000000000
-0.5000000000000000 0.4000000000000000 0.2500000000000000 0.040000000000000
-0.5000000000000000 0.4000000000000000 0.0833333333333333 0.040000000000000
cell文件第2行到第5行的數(shù)字顯示的是晶格矢量,對(duì)應(yīng)就是poscar前面的第3行到第6行的基矢量,不過(guò)這個(gè)時(shí)候poscar的第二行的晶格常熟要設(shè)置為1,因?yàn)閏ell文件的晶格矢量包含了晶格常數(shù)進(jìn)去了。
cell文件第7行空格,第8行顯示說(shuō)是坐標(biāo)了,而且是分?jǐn)?shù)坐標(biāo),呵呵,很清楚了,在poscar的基矢量接著寫下“direct”,表示是分?jǐn)?shù)坐標(biāo),然后把cell文件第9行到第10行(這里是針對(duì)我給出的簡(jiǎn)單例子只有2個(gè)原子,多原子的類推就可以了)copy到poscar下就可以了。
一個(gè)poscar就完成了!就算很復(fù)雜的結(jié)構(gòu)比如高指數(shù)表面,納米線,納米管,使用這種方法構(gòu)建,非常簡(jiǎn)單!不過(guò)以上方法都是我個(gè)人摸索出來(lái)的,是否可行,有待大家評(píng)點(diǎn)!
對(duì)于很多納米結(jié)構(gòu),比如納米碳管,不管什么類型的管,現(xiàn)在高版本的ms都可以直接輸出。特別很方便,大家也可以看看。 |
|