24小时热门版块排行榜    

Znn3bq.jpeg
查看: 2890  |  回复: 12
【奖励】 本帖被评价10次,作者小虫009增加金币 9.2
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

小虫009

金虫 (初入文坛)


[资源] 【分享】一个将CASTEP的.cell文件转换为POSCAR的简单脚本

在CASTEP下建立好结构模型,保存文件,找到*.cell文件(存有结构信息)
拷贝到LINUX下,输入perl cell2poscar.pl .cell, 生成POSCAR文件;
或者将 cell2poscar.pl放在~/bin下,输入chmod +x cell2poscar.pl转为可执行形式,直接输入cell2poscar.cell .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 \n";

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 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wjhwoods

铜虫 (正式写手)


t

对不起,本贴要求 金币高于 500 个 才可浏览,请返回
9楼2010-02-05 04:52:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 13 个回答

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

呵呵,不错!!!
2楼2009-12-04 21:37:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fanchen021

铁杆木虫 (正式写手)


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

呵呵,我发过一个类似的帖子,LZ可以去看一下
http://muchong.com/bbs/viewthread.php?tid=1663483&fpage=1
4楼2009-12-05 00:08:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

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

★★★★★ 五星级
13楼2014-10-20 09:58:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
0303deer8楼
2009-12-07 10:16   回复  
 谢谢分享!
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 291求调剂 +11 关忆北. 2026-04-14 11/550 2026-04-19 17:16 by 中豫男
[考研] B区0809 ,数一英一,290 求调剂 +4 泠潍1111 2026-04-12 5/250 2026-04-19 16:54 by 中豫男
[考研] 求调剂 +6 苦命人。。。 2026-04-18 7/350 2026-04-19 16:27 by 中豫男
[考研] 307中医考研调剂 +9 于以采蘩 2026-04-14 9/450 2026-04-19 08:41 by 烟雨流涯
[考研] 300求调剂 +12 橙a777 2026-04-15 12/600 2026-04-18 23:51 by 路病情
[考研] 一志愿沪9,326求生物学调剂 +12 刘墨墨 2026-04-13 12/600 2026-04-18 23:31 by 路病情
[考研] 320求调剂 +5 深郊akm 2026-04-17 5/250 2026-04-18 19:52 by 王珺璞
[考研] 收到复试调剂但是去不了 +8 小蜗牛* 2026-04-16 8/400 2026-04-18 11:15 by zixin2025
[考研] 化工学硕294分,求导师收留 +33 yzyzx 2026-04-12 37/1850 2026-04-17 23:00 by wunaiy88
[考研] 一志愿中科大材料与化工,353分还有调剂学校吗 +10 否极泰来2026 2026-04-15 12/600 2026-04-17 17:54 by mapenggao
[考研] 322求调剂 +6 tekuzu 2026-04-17 6/300 2026-04-17 13:48 by Espannnnnol
[考博] 申博自荐 +3 Linxia林夏 2026-04-13 3/150 2026-04-16 12:55 by 墨荷之露
[基金申请] RY:中国产出的科学垃圾论文,绝对数量和比例都世界第一 +7 zju2000 2026-04-14 18/900 2026-04-16 11:36 by 欢乐颂叶蓁
[考研] 药学求调剂 +14 喽哈加油 2026-04-14 16/800 2026-04-16 10:15 by beilsong20
[考研] 一志愿A区211,22408 321求调剂 +6 随心所欲☆ 2026-04-15 7/350 2026-04-15 21:45 by lbsjt
[考研] 297工科调剂? +14 河南农业大学-能 2026-04-13 15/750 2026-04-15 13:25 by 黑科技矿业
[考研] 求调剂 +12 何气正 2026-04-13 13/650 2026-04-14 14:47 by zs92450
[考研] 考研调剂 +13 长弓傲 2026-04-13 14/700 2026-04-14 14:44 by zs92450
[考研] 考研英一数一338分 +9 长江大学东校区 2026-04-13 10/500 2026-04-14 00:41 by 王珺璞
[考研] 302求调剂 +10 易!? 2026-04-13 10/500 2026-04-13 19:04 by lbsjt
信息提示
请填处理意见