| 查看: 2782 | 回复: 12 | |||
| 【奖励】 本帖被评价10次,作者小虫009增加金币 9.2 个 | |||
[资源]
【分享】一个将CASTEP的.cell文件转换为POSCAR的简单脚本
|
|||
|
在CASTEP下建立好结构模型,保存文件,找到*.cell文件(存有结构信息) 拷贝到LINUX下,输入perl cell2poscar.pl 或者将 cell2poscar.pl放在~/bin下,输入chmod +x cell2poscar.pl转为可执行形式,直接输入cell2poscar.cell 目前只是半成品,生成的POSCAR没有告诉原子数,可以自己手动加上去,不支持Selective模式 不过基本达到转换目的。 哎偶的perl水平太太菜了,希望各位高手多提宝贵意见! ![]() ![]() cell2poscar.pl脚本内容: eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' && eval 'exec perl -S $0 $argv:q' if 0; #;-*- Perl -*- # used to convert .cell(Castep) to POSCAR(vasp) # # usage: cell2poscar.pl # @args=@ARGV; @args==1 || die "usage: cell2poscar.pl open (IN,@args[0]) || die ("Can't open the file $!" ;open (OUT,">POSCAR" ;print " Please input the first line of your POSCAR\n"; $filename= print " Plesse tell me what you want for (Direct) or (Selective dynamic) \n"; $Direct_or_selectivedynamic="Direct"; chomp($yourchose= if ($yourchose=~ m/^(d|D)/) {$Direct_or_selectivedynamic="Direct";} elsif($yourchose=~m/^(s|S)/) {$Direct_or_selectivedynamic="Selective dynamic";} else{$Direct_or_selectivedynamic="Direct";} $i=1; while( { @header[0]=$filename; @header[1]="1\n"; if (/\%BLOCK LATTICE_CART/) { $_="\n";} elsif (/\%ENDBLOCK POSITIONS_FRAC/) { $_="\n"; last;} elsif (/\%ENDBLOCK LATTICE_CART/) {$_=" ";} elsif (/\%BLOCK POSITIONS_FRAC/) {@header[6]="$Direct_or_selectivedynamic\n"; $i++;} else { if(/[a-z]/i){ s/[a-z][a-z]//i;@header[$i+1]=$_; $i++;} else{@header[$i+1]=$_; $i++;} } } print OUT @header; close OUT; close IN; [ Last edited by zxzj05 on 2009-12-4 at 21:42 ] |
» 收录本帖的淘帖专辑推荐
VASP资料 |
» 猜你喜欢
垃圾破二本职称评审标准
已经有19人回复
职称评审没过,求安慰
已经有53人回复
毕业后当辅导员了,天天各种学生超烦
已经有5人回复
26申博自荐
已经有3人回复
A期刊撤稿
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
如何在CASTEP 中建立一个氧气分子的结构
已经有16人回复
同一个原胞用vasp和castep结构优化后为什么能量差距很大
已经有6人回复
关于计算完后 输出文件 _BandStr.castep文件里内容的疑问
已经有4人回复
【求助】如何根据cell文件写poscar
已经有11人回复
【求助】castep计算应力应变曲线结果文件中的两个stress tensor
已经有5人回复
【原创】将POSCAR转化为cif文件的一个脚本
已经有145人回复
【原创】通过CASTEP产生POSCAR文件【已搜索“CASTEP”+“POSCAR”,无重复】
已经有20人回复
2楼2009-12-04 21:37:14
4楼2009-12-05 00:08:35
9楼2010-02-05 04:52:29
12楼2012-05-03 14:20:53
13楼2014-10-20 09:58:05
简单回复
zxzj053楼
2009-12-04 21:42
回复


2009-12-05 11:19
回复
谢谢分享
2009-12-05 13:12
回复





2009-12-06 09:34
回复


0303deer8楼
2009-12-07 10:16
回复
谢谢分享!



xiaozhigang10楼
2011-04-01 11:09
回复
五星好评 







huyuxiav11楼
2011-04-15 11:28
回复
五星好评 谢谢分享!













;
回复此楼