计算化学公社

 找回密码 Forget password
 注册 Register
Views: 21572|回复 Reply: 12
打印 Print 上一主题 Last thread 下一主题 Next thread

[VASP] VASP中Direct坐标转换成Cartesian坐标的小脚本

[复制链接 Copy URL]

3

帖子

0

威望

49

eV
积分
52

Level 2 能力者

跳转到指定楼层 Go to specific reply
楼主
1 python 脚本
2 适用于VASP,默认读取Direct坐标的POSCAR, 如果想转换CONTCAR, 先 mv CONTCAR POSCAR
3 如果POSCAR已经是Cartesian坐标,就没必要再运行了,否则结构就会出错
4 把脚本放到服务器的 bin 文件夹里
5 chmod u+x ~/bin/dire2cart.py
6 进入POSCAR所在的文件夹,在终端运行命令即可: dire2cart.py
7 第5步没有进行的话,需要把脚本放到和POSCAR同一个文件夹里,然后敲命令: python dire2cart.py
8 转换后的POSCAR被命名成 POSCAR_C
9 脚本很容易,大家可以用vim打开,随意修改

dire2cart.py

2.01 KB, 下载次数 Times of downloads: 369

评分 Rate

参与人数
Participants 7
eV +28 收起 理由
Reason
古巷呀呀 + 4
阿锋001 + 3 谢谢
GuoBa2011 + 3 赞!
Jojen + 3 谢谢
江月照相似 + 5 谢谢
物理小笨 + 5 精品内容
sobereva + 5

查看全部评分 View all ratings

20

帖子

0

威望

398

eV
积分
418

Level 3 能力者

2#
发表于 Post on 2017-5-11 20:04:44 | 只看该作者 Only view this author
谢谢分享,确实好用,但是想请教一下,什么时候会需要用到Direct坐标转换为Cartesian坐标的功能呢?有时候我倒是希望反过来把Cartesian坐标改成Direct坐标,这个可以实现吗?

3

帖子

0

威望

49

eV
积分
52

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2017-6-7 22:08:43 | 只看该作者 Only view this author
可以实现的,一般VASP的输出文件是direct坐标形式的。 Cartesian 坐标在调节原子位置的时候比较形象直观一些。p4vasp 也可以实现两者的切换。

评分 Rate

参与人数
Participants 2
eV +4 收起 理由
Reason
GuoBa2011 + 2
sobereva + 2

查看全部评分 View all ratings

11

帖子

0

威望

99

eV
积分
110

Level 2 能力者

4#
发表于 Post on 2019-12-23 10:56:53 | 只看该作者 Only view this author
报错了哎,楼主大大有什么解决办法么
Traceback (most recent call last):
  File "/root/bin/dire2cart.py", line 33, in <module>
    x_cartesian.append(float(line[i].split()[0]) * a1 + float(line[i].split()[1]) * a2 + float(line[i].split()[2]) * a3)
ValueError: could not convert string to float: Direct

21

帖子

0

威望

353

eV
积分
374

Level 3 能力者

5#
发表于 Post on 2020-7-22 17:15:11 | 只看该作者 Only view this author
GuoBa2011 发表于 2019-12-23 10:56
报错了哎,楼主大大有什么解决办法么
Traceback (most recent call last):
  File "/root/bin/dire2cart. ...

您好,这个报错您解决了没有,我也遇到一样的问题。

11

帖子

0

威望

99

eV
积分
110

Level 2 能力者

6#
发表于 Post on 2021-5-20 19:07:45 | 只看该作者 Only view this author
小仙女fantastic 发表于 2020-7-22 17:15
您好,这个报错您解决了没有,我也遇到一样的问题。

没有,但是用vesta可以做到这个,我现在用这个

20

帖子

0

威望

887

eV
积分
907

Level 4 (黑子)

7#
发表于 Post on 2021-6-30 15:10:49 | 只看该作者 Only view this author
lqcata 发表于 2017-6-7 22:08
可以实现的,一般VASP的输出文件是direct坐标形式的。 Cartesian 坐标在调节原子位置的时候比较形象直观一 ...

请问有Cartesian坐标转换为Direct坐标的脚本吗

11

帖子

0

威望

99

eV
积分
110

Level 2 能力者

8#
发表于 Post on 2021-11-5 19:53:21 | 只看该作者 Only view this author
哈库那摩塔塔 发表于 2021-6-30 15:10
请问有Cartesian坐标转换为Direct坐标的脚本吗

vesta一样能做到啊

20

帖子

0

威望

128

eV
积分
148

Level 2 能力者

9#
发表于 Post on 2023-12-1 17:43:37 | 只看该作者 Only view this author
本帖最后由 sun0615 于 2023-12-1 17:45 编辑
小仙女fantastic 发表于 2020-7-22 17:15
您好,这个报错您解决了没有,我也遇到一样的问题。

雖然很久的帖子了還是回復一下
可能是不同版本的軟件產生POSCAR格式不同的問題
座標開始的行數不同。
把dire2cart.py中的start_num從9,8改成10,9就好了。

另外這是python2的語法,print沒有(),用python3執行也會報錯,加個()就好了

21

帖子

0

威望

353

eV
积分
374

Level 3 能力者

10#
发表于 Post on 2023-12-4 22:41:05 | 只看该作者 Only view this author
sun0615 发表于 2023-12-1 17:43
雖然很久的帖子了還是回復一下
可能是不同版本的軟件產生POSCAR格式不同的問題
座標開始的行數不同。

好的,谢谢您

32

帖子

0

威望

357

eV
积分
389

Level 3 能力者

11#
发表于 Post on 2024-5-18 09:29:53 | 只看该作者 Only view this author
sun0615 发表于 2023-12-1 17:43
雖然很久的帖子了還是回復一下
可能是不同版本的軟件產生POSCAR格式不同的問題
座標開始的行數不同。

谢谢!

5

帖子

0

威望

126

eV
积分
131

Level 2 能力者

12#
发表于 Post on 2024-9-30 13:09:44 | 只看该作者 Only view this author
在之前的基础上稍微改了一点点,现在可以在vasp5.4之类的的版本上直接用了记得用python2运行

dtc.py

2.01 KB, 下载次数 Times of downloads: 9

13

帖子

0

威望

85

eV
积分
98

Level 2 能力者

13#
发表于 Post on 2024-10-29 18:48:41 | 只看该作者 Only view this author
请问有没有关于XDATCAR的转换脚本呀 谢谢大佬

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-23 10:35 , Processed in 0.255667 second(s), 31 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list