24小时热门版块排行榜    

查看: 2275  |  回复: 11

xiaowu787

木虫 (正式写手)

[交流] 【求助】如何根据cell文件写poscar 已有3人参与

刚开始学ASP,看论坛上高手说过可以通过MS写OSCAR。从MS 导出cell文件,还是不知道该如何写出基矢?请高手指点一下。原子的个数就是BLOCK POSITIONS_FRAC中的原子个数吗?谢谢!!

Al2O3
PBC    4.7590    4.7590   12.9910   90.0000   90.0000  120.0000 (P1)

cell文件如下:

%BLOCK LATTICE_CART
       2.747609931073429       0.000000000000000       4.330333333333333
      -1.373804965536714       2.379500000000001       4.330333333333333
      -1.373804965536714      -2.379500000000000       4.330333333333333
%ENDBLOCK LATTICE_CART

%BLOCK POSITIONS_FRAC
  O   0.5559999999999998  -0.0559999999999999   0.2500000000000000
  O   0.2500000000000000   0.5559999999999998  -0.0559999999999999
  O  -0.0559999999999999   0.2500000000000000   0.5559999999999998
  O  -0.5559999999999998   0.0559999999999999  -0.2500000000000000
  O  -0.2500000000000000  -0.5559999999999998   0.0559999999999999
  O   0.0559999999999999  -0.2500000000000000  -0.5559999999999998
Al   0.3519999999999999   0.3519999999999999   0.3519999999999999
Al   0.1480000000000001   0.1480000000000001   0.1480000000000001
Al  -0.3519999999999999  -0.3519999999999999  -0.3519999999999999
Al   0.8520000000000000   0.8520000000000000   0.8520000000000000
%ENDBLOCK POSITIONS_FRAC
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

bingmou

金虫 (著名写手)

★ ★
xiaowu787(金币+5):谢谢答复! 2010-11-03 11:35:12
cenwanglai(金币+2):谢谢回复! 2010-11-03 13:22:21
示例:
Al2O3
1.0
      2.747609931073429       0.000000000000000       4.330333333333333
      -1.373804965536714       2.379500000000001       4.330333333333333
      -1.373804965536714      -2.379500000000000       4.330333333333333
6 4 !前面为O的个数,后面为Al的个数,这个顺序要和POTCAR对应
Direct !MS的都是Direct
   0.5559999999999998  -0.0559999999999999   0.2500000000000000
   0.2500000000000000   0.5559999999999998  -0.0559999999999999
  -0.0559999999999999   0.2500000000000000   0.5559999999999998
  -0.5559999999999998   0.0559999999999999  -0.2500000000000000
  -0.2500000000000000  -0.5559999999999998   0.0559999999999999
   0.0559999999999999  -0.2500000000000000  -0.5559999999999998
   0.3519999999999999   0.3519999999999999   0.3519999999999999
   0.1480000000000001   0.1480000000000001   0.1480000000000001
  -0.3519999999999999  -0.3519999999999999  -0.3519999999999999
   0.8520000000000000   0.8520000000000000   0.8520000000000000
3楼2010-11-03 11:17:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

xiaowu787

木虫 (正式写手)

这是从其他地方查到的信息,请高手指点一下,是不是问题太简单了?可是我没做过这方面的。

•Prototype: αAl2O3
•Pearson Symbol: hR10
•Strukturbericht Designation: D51
•Space Group: R3c (Cartesian and lattice coordinate listings available)
•Number: 167
•Reference: Villars and Calvert, Pearson's Handbook, Vol. I, pp. 970-1
•Primitive Vectors:
A1  =  b X + a Y + a Z
A2  =  a X + b Y + a Z
A3  =  a X + a Y + b Z
2楼2010-11-03 11:07:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaowu787

木虫 (正式写手)

引用回帖:
Originally posted by bingmou at 2010-11-03 11:17:57:
示例:
Al2O3
1.0
      2.747609931073429       0.000000000000000       4.330333333333333
      -1.373804965536714       2.379500000000001       4.330333333333333
      -1.373804965536714       ...

由于基失包含了晶格常数,只需把晶格缩放系数设为1是吧。再问一下,晶格缩放系数设为1和通过转换变成较大的数有区别吗?谢谢!
4楼2010-11-03 11:34:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cenwanglai

荣誉版主 (知名作家)

老和山猥琐派九段

优秀版主

★ ★ ★
bingmou(金币+3):感谢分享 2010-11-03 14:06:48
xiaowu787(金币+5):谢谢分享!! 2010-11-03 15:45:25
#Script for Linux. Font Code: UTF-8
#把该文件保存到/usr/bin/目录下,必要时运行dos2unix和chmod
#删除原有poscarfromcell,删除前询问
#*.cell为MS running后立即停止中生成的隐藏文件,显示隐藏文件夹后就可以看到。把该文件放到linux下工作目录内。
#运行本脚本前,需要删除.cell文件%ENDBLOCK POSITIONS_FRAC后面的所有内容,如有必要,运行dos2unix *.cell
#运行时确保当前目录下仅有一个*.cell文件。
#在命令提示符下输入cell2poscar回车,生成文件为poscarfromcell.
#有好的修改建议或脚本请发邮件给:cenwanglai@163.com

rm -i poscarfromcell

echo "SYSTEM COMMENTS">>poscarfromcell
echo 1 >>poscarfromcell

#查找并输出格矢坐标
cat *.cell | grep -e '^[ ]\+[0-9]\+'>>poscarfromcell

#数氧原子个数
L=$(grep -cw "O" *.cell)

#数铈原子个数
M=$(grep -cw "Ce" *.cell)

#数X原子个数,如果需要,删掉下一行开始的#,并替换“X”
#N=$(grep -cw "X" *.cell)

#输入各类原子个数,如果需要,下行中增加$N
echo $L $M >> poscarfromcell

echo "Selective Dynamic" >>poscarfromcell
echo "Direct" >>poscarfromcell

#找氧原子O坐标。根据实际情况替换"O"
cat *.cell | awk '$1=="O" {print $2,$3,$4,"T T T"}'>>poscarfromcell

#找Ce原子坐标。根据实际情况替换"Ce"
cat *.cell | awk '$1=="Ce" {print $2,$3,$4,"T T T"}'>>poscarfromcell

#找X原子坐标,如果需要,删掉下一行开头的#,根据实际情况替换"X"
#cat *.cell | awk '$1=="X" {print $2,$3,$4,"T T T"}'>>poscarfromcell
5楼2010-11-03 13:26:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cenwanglai

荣誉版主 (知名作家)

老和山猥琐派九段

优秀版主

读一下这个脚本,根据你的情况修改一下就可以。
6楼2010-11-03 13:28:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bingmou

金虫 (著名写手)


zzy870720z(金币+1):谢谢提示 2010-11-03 14:14:21
引用回帖:
Originally posted by xiaowu787 at 2010-11-03 11:34:49:



由于基失包含了晶格常数,只需把晶格缩放系数设为1是吧。再问一下,晶格缩放系数设为1和通过转换变成较大的数有区别吗?谢谢!

在计算能带的时候取K点的时候小心一点,理解好K点的坐标就行了
7楼2010-11-03 14:07:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaowu787

木虫 (正式写手)

引用回帖:
Originally posted by cenwanglai at 2010-11-03 13:26:17:
#Script for Linux. Font Code: UTF-8
#把该文件保存到/usr/bin/目录下,必要时运行dos2unix和chmod
#删除原有poscarfromcell,删除前询问
#*.cell为MS running后立即停止中生成的隐藏文件,显示隐藏文件夹后就 ...

这个脚本没有声明shell,脚本运行不必拷到/usr/bin/目录下,一般只需要更改一下运行权限就可以了。正准备测试一下,谢谢
8楼2010-11-03 16:14:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cenwanglai

荣誉版主 (知名作家)

老和山猥琐派九段

优秀版主


小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by xiaowu787 at 2010-11-03 16:14:15:



这个脚本没有声明shell,脚本运行不必拷到/usr/bin/目录下,一般只需要更改一下运行权限就可以了。正准备测试一下,谢谢

呵呵,刚学习linux的时候编写的一个脚本,很久没有检查了。幸苦!你测试后帮修改再发一个吧。
9楼2010-11-03 16:17:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiaowu787

木虫 (正式写手)


bingmou(金币+1):感谢交流 2010-11-03 19:54:13
引用回帖:
Originally posted by cenwanglai at 2010-11-03 16:17:16:



呵呵,刚学习linux的时候编写的一个脚本,很久没有检查了。幸苦!你测试后帮修改再发一个吧。

谢谢了,简单修改了一下测试通过,保存后改一下权限就会用了。
CODE:
#!/bin/sh
#Script for Linux. Font Code: UTF-8
#把该文件保存到/usr/bin/目录下,必要时运行dos2unix和chmod
#删除原有poscarfromcell,删除前询问
#*.cell为MS running后立即停止中生成的隐藏文件,显示隐藏文件夹后就可以看到。把该文件放到linux下工作目录内。
#运行本脚本前,需要删除.cell文件%ENDBLOCK POSITIONS_FRAC后面的所有内容,如有必要,运行dos2unix *.cell
#运行时确保当前目录下仅有一个*.cell文件。
#在命令提示符下输入cell2poscar回车,生成文件为poscarfromcell.
#有好的修改建议或脚本请发邮件给:[email]cenwanglai@163.com[/email]

rm -i poscarfromcell

echo "SYSTEM COMMENTS">>poscarfromcell
echo 1 >>poscarfromcell

#查找并输出格矢坐标
cat *.cell | grep -e '^[ ]\+[0-9]\+'>>poscarfromcell

#数氧原子个数
L=$(grep -cw "O" *.cell)

#数铈原子个数
M=$(grep -cw "Ce" *.cell)

#数X原子个数,如果需要,删掉下一行开始的#,并替换“X”
#N=$(grep -cw "X" *.cell)

#输入各类原子个数,如果需要,下行中增加$N
echo $L $M >> poscarfromcell

echo "Selective Dynamic" >>poscarfromcell
echo "Direct" >>poscarfromcell

#找氧原子O坐标。根据实际情况替换"O"
cat *.cell |awk '$1=="O" {printf "%20.16f %20.16f %20.16f %s",$2,$3,$4,"T T T\n"}'>>poscarfromcell
#找Ce原子坐标。根据实际情况替换"Ce"
cat *.cell |awk '$1=="Ce" {printf "%20.16f %20.16f %20.16f %s",$2,$3,$4,"T T T\n"}'>>poscarfromcell

#找X原子坐标,如果需要,删掉下一行开头的#,根据实际情况替换"X"
#cat *.cell | awk '$1=="X" {print $2,$3,$4,"T T T"}'>>poscarfromcell

暂时还有读基失时,负号的读不出来

[ Last edited by xiaowu787 on 2010-11-3 at 19:28 ]
10楼2010-11-03 18:27:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xiaowu787 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 系统查不到 +9 董八千 2026-08-26 9/450 2026-08-26 12:30 by yanmofang
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 能否退出参与的面上项目解除限项 +22 koalala 2026-08-24 25/1250 2026-08-26 11:14 by dxcharlary
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 牛来!米来!面来! +8 beefly 2026-08-26 8/400 2026-08-26 08:37 by xuzhipiao
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +24 木水思豆 2026-08-25 27/1350 2026-08-26 08:26 by yanchen918
[基金申请] 2026国自然函评费到账 +21 羊腰板 2026-08-21 24/1200 2026-08-26 07:20 by finnigan
[基金申请] 在坚冰还盖着北海的时候,我看到了怒放的梅花。 (金币+10) +6 ziyangfang 2026-08-25 9/450 2026-08-25 20:26 by huagongfeihu
[基金申请] 明天应该可查了!? +6 chengyan1220 2026-08-23 6/300 2026-08-25 19:45 by zfd97
[基金申请] 放榜前的不淡定 20+4 snowwithsea 2026-08-19 19/950 2026-08-25 17:57 by chick875
[基金申请] 今日不放榜?网传国自然预计 8 月 27 日可查结果 +17 医学老男孩 2026-08-20 22/1100 2026-08-25 15:36 by 医学老男孩
[基金申请] 我面上完蛋了 +13 且听虎啸 2026-08-20 14/700 2026-08-25 09:10 by mrkang
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
[基金申请] 时间戳今天,20号变了 +5 archvillain 2026-08-20 5/250 2026-08-22 06:12 by hui_daxiao
[基金申请] 看来今天不会放榜了? +8 chengyan1220 2026-08-21 11/550 2026-08-21 17:52 by dcqxinyang
[基金申请] 应该是下周三26日公布了吧? +4 哈哈蛤? 2026-08-21 4/200 2026-08-21 10:58 by Vivilian
信息提示
请填处理意见