24小时热门版块排行榜    

查看: 11336  |  回复: 70
【奖励】 本帖被评价35次,作者csfn增加金币 30.25
当前主题已经存档。
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

csfn

荣誉版主 (知名作家)


[资源] 用Material Studio构建复杂模型及转换成poscar的2种方法

此帖已被多个论坛、博客转载,但原创就为此帖。相信大家读后会有所受益!
今后如有转载,请注明作者及来源


前面有xinjiang介绍一个用Material Studio构建表面模型(zz)”的帖子,我发现做表面的还不少。这里我也给大家介绍一点经验,简单点表面构建法前面介绍了,那么这里我介绍“用Material Studio构建稍微复杂的表面模型”。这里介绍的是构造一个根号3x2pt(111)表面。
用MS Modeling制作slab模型结构图
1, 打开MS modeling,建立一个项目,如test;
2, 右击test项目,在下拉菜单中选择import,在弹出的菜单中选择Structures/metals/pure-metals/Pt;
3, 在主菜单中的Build选择surfaces/Cleave surface,
4, 在弹出的菜单中处理数据
(i)在surface box界面下
a)你所要做的表面,如[111];  也就是将cleave plane [h k l]修改成 [1 1 1];
b) 修改深度,即将depth修改成你所需要的原子层数, 如4;
(ii)在options界面下
将Orientation standard选项改成U矢量沿x轴方向,V在xy平面
(iii)在surface Mesh的界面下
修改U,V矢量。
如保持U不变,将V矢量修改成 0.5 0.5 -1
5,点击cleave,产生一个[1 1 1]的表面模型,
6,在主菜单中的Build选择Crystals/Build Vaccum Slab
7,在弹出的菜单中修改相应的参量,比如将真空厚度修改成14angstrom, 点击build产生一个Slab模型;
8,在主菜单中的Build选择Symmetry/supercell,将单胞修改成你所需要的大小,如将A修改成2,点击Create supercell
这样产生了你所要的表面
在该表面,你可以非常简单的看出hcp与fcc的差别,以及top,bridge位置。


如果你需要产生vasp的poscar文件,那么你可以从ms模块导出这个文件为.car文件(它是卡迪尔坐标),简单进行处理下就变成vasp了。
比如我这里有个。car坐标:
引用回帖:
!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

要转换成vasp,下面贴出我的程序是:
CODE:
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

那么产生的poscar文件:
引用回帖:
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



如果觉得有用的话,大家就拍下砖啊,让更多的同志们能探讨和学习表面构建.支持下我的呕心原创 ^_^!


第二种构建poscar进阶方法,可构建高指数面,纳米线管等复杂结构
在ms模块中搭建好所需要的的结构,然后点一个模块比如castep下拉菜单中的“calcualtion”,出现一个菜单,在该菜单最下方出现三个选项,run,files,help,我们选择点击“files”,然后点击“save files”。这个时候你建立的结构就会默认保存在项目下。你到项目下打开你保存的文件。会看到一个*.cell文件,如果看不到,你就到工具栏下设置下显示隐藏的文件,*.cell是隐藏的文件。打开这个cell文件,你会看到前面是坐标文件,比如:
CODE:
%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行的数字显示的是晶格矢量,对应就是poscar前面的第3行到第6行的基矢量,不过这个时候poscar的第二行的晶格常熟要设置为1,因为cell文件的晶格矢量包含了晶格常数进去了。
cell文件第7行空格,第8行显示说是坐标了,而且是分数坐标,呵呵,很清楚了,在poscar的基矢量接着写下“direct”,表示是分数坐标,然后把cell文件第9行到第10行(这里是针对我给出的简单例子只有2个原子,多原子的类推就可以了)copy到poscar下就可以了。

一个poscar就完成了!就算很复杂的结构比如高指数表面,纳米线,纳米管,使用这种方法构建,非常简单!不过以上方法都是我个人摸索出来的,是否可行,有待大家评点!
对于很多纳米结构,比如纳米碳管,不管什么类型的管,现在高版本的ms都可以直接输出。特别很方便,大家也可以看看。

欢迎拍砖!



[ Last edited by woshilsh on 2009-6-13 at 22:12 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

eboat

木虫 (小有名气)


引用回帖:
Originally posted by 搞理论的 at 2007-12-6 22:05:
请问楼主,如果想构造一个做输运的模型,比如典型的:metal+molecule+metal模型的话,你的方法是否适用呢?那一般情况下需要手动计算坐标然后输入进去的。

这个用ms可能比较困难吧!

用Virtual NanoLab软件应该比较好!
http://www.atomistix.com/index.php?id=vnl
10楼2007-12-06 22:23:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 71 个回答

cometring

木虫 (著名写手)


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

强!学习一下!
2楼2007-12-03 22:50:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

eboat

木虫 (小有名气)


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

多谢,有个问题想请教!
我也是用ms构建模型,但一般都用默认u,v的默认设置.

(ii)在options界面下
将Orientation standard选项改成U矢量沿x轴方向,V在xy平面
(iii)在surface Mesh的界面下
修改U,V矢量。
如保持U不变,将V矢量修改成 0.5 0.5 -1

你这里面u,v设置有什么特别意义,能否详细讲解里面的u,v相关参数的意思及设置技巧,多谢?
6楼2007-12-06 12:46:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

csfn

荣誉版主 (知名作家)


★ ★ ★
spur(金币+3,VIP+0):谢谢贡献经验!!
引用回帖:
Originally posted by eboat at 2007-12-6 12:46:
多谢,有个问题想请教!
我也是用ms构建模型,但一般都用默认u,v的默认设置.

(ii)在options界面下
将Orientation standard选项改成U矢量沿x轴方向,V在xy平面
(iii)在surface Mesh的界面下
修改U,V矢量 ...

这里设置确实有一些含义在里面。默认构造出来的面是1x1,当然是可以的。我这里主要是我要构造出一个非1x1,带根号的面,所以要修改U,V。我这个修改参数就是可以得出我文中需要的的面了。具体什么意义,我说不清楚。由于不用ms算,我并没仔细读过说明书,只是拿着软件摆弄出我需要的结构而已。当时是仔细观察每修改u,v结构都会怎么变化 :-)  
“(ii)在options界面下
将Orientation standard选项改成U矢量沿x轴方向,V在xy平面”  这一步一般影响不大,但是这步(iii)很重要,数字改变,方向,大小都改变,你试试就明白了,也不是任何数字都可以的
7楼2007-12-06 16:06:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复(可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 是否上会都不知道的三无人员,翻论坛想看会评消息 +3 sparknow 2024-06-27 3/150 2024-06-27 20:12 by 龙的船人
[硕博家园] 联培博士文章第一单位署名问题交流~ +11 橙成成c 2024-06-23 24/1200 2024-06-27 18:51 by keyaner23
[基金申请] 基金评审时,评审专家还回去看申请人代表作之外的文章吗? +12 孤单12站 2024-06-26 18/900 2024-06-27 18:30 by 孤单12站
[公派出国] CSC博士联培对将来就业有用吗 +6 也就这样 2024-06-22 6/300 2024-06-27 16:55 by zhenggui12
[育儿交流] 暑假孩子一个人在家可以干什么 +9 唠叨的映 2024-06-25 10/500 2024-06-27 16:12 by 水冰月月野兔
[硕博家园] 夏至,要不要硕博联谊 +7 我是王小帅 2024-06-21 10/500 2024-06-27 13:41 by 我是王小帅
[基金申请] 请问三个字的中文名字,在文中到底怎么表示? 5+3 zhongyuan764 2024-06-22 7/350 2024-06-27 11:28 by f1yfish
[基金申请] 博后面上今天下午会公布吗?大家有无消息? +10 地理学1995 2024-06-24 14/700 2024-06-27 11:24 by jackiddd
[基金申请] 博后网上办公系统维护 +14 取名字烦人 2024-06-25 22/1100 2024-06-26 22:15 by tuanbao2023
[有机交流] 做什么表征可以检测塑料中碳氢氧的含量 5+3 pzr的sci之路 2024-06-25 7/350 2024-06-26 19:32 by wrgeng
[基金申请] 基你太美 +13 lyfbangong 2024-06-24 15/750 2024-06-26 17:12 by lyfbangong
[基金申请] 省基金对国自然申请是有利还是有弊 +6 zycumt04 2024-06-26 7/350 2024-06-26 15:02 by 潇湘之迷
[基金申请] 要持续整治滥发“帽子”、“牌子”之风 +6 babu2015 2024-06-25 6/300 2024-06-26 14:52 by felicity6056
[基金申请] 今天能不能出来名单 +8 地理学1995 2024-06-25 10/500 2024-06-26 09:46 by msjy
[有机交流] 过柱子,产品,杂质在是 pe:ea=100:1 也一起出来? +5 w256 2024-06-25 5/250 2024-06-26 09:31 by 小木木cc
[硕博家园] 申博雅思求助 +6 刘嘉研究究 2024-06-24 7/350 2024-06-26 07:08 by 小李醒yy
[教师之家] 复旦夏同学退学理由说明,哪儿可以下载? +7 苏东坡二世 2024-06-21 8/400 2024-06-25 12:42 by 药嘿1233
[考博] 申请25博士,可以提前进组做科研助理 +6 逐梦途中w 2024-06-22 8/400 2024-06-24 21:49 by keyaner23
[金属] 寻找钛合金热压缩代做 +4 liuyang358 2024-06-23 4/200 2024-06-24 13:50 by 搬砖狗不放弃
[基金申请] 说博后基金7月出的真打电话了吗? +12 antonysole 2024-06-24 14/700 2024-06-24 13:39 by sizhouyi
信息提示
请填处理意见