计算化学公社

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

[理论与算法] 求助:xyz转cif过程中坐标转换的问题

[复制链接 Copy URL]

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
各位老师,在使用CP2K优化结构后,产生的xyz文件,本人想用Fortran写一个由xyz文件转cif的小程序,通过如图所示的vectora/b/c我可以计算得到a/b/c三边的长度以及alpha/beta/gamma。但是在坐标转换的过程中犯了难,xyz中的坐标该如何转换成cif文件中的分数坐标形式,希望有老师指点一二,谢谢各位老师。

202303281517269135..png (14.2 KB, 下载次数 Times of downloads: 28)

202303281517269135..png

306

帖子

2

威望

3253

eV
积分
3599

Level 5 (御坂)

2#
发表于 Post on 2023-3-28 16:32:17 | 只看该作者 Only view this author
你写Fortran,直接参考Multiwfn源码中各种文件格式转换的代码不就行啦。

487

帖子

1

威望

4035

eV
积分
4542

Level 6 (一方通行)

3#
发表于 Post on 2023-3-28 20:10:44 | 只看该作者 Only view this author
本帖最后由 北大-陶豫 于 2023-3-28 20:22 编辑

乘以晶胞参数矩阵的逆就行了。
设晶胞基矢为 abc,原子的笛卡尔坐标r与分数坐标x的关系为
r = x1a + x2b + x3c
写成矩阵的形式:
r = [a b c] x
其中rx是列向量,A=[a b c]是晶胞基矢(列向量)拼成的晶胞参数矩阵。所以如果已知r要求x的话,乘以晶胞参数矩阵 A 的逆就行了。
如果对性能要求较高的话,可以直接求解方程组 r = A x,但一般来说3维问题的话恐怕不需要这么做。
现代化学以狄拉克的一句“一切化学问题业已解决”为嚆矢。滥觞于经验主义传统的期望正失去它们的借鉴意义。但面对看似不可达的通往天堂之阶梯,我想循伍德沃德“最好的模型是你底物的对映异构体”的信仰好过过早地振翮。
我们怀揣热忱的灵魂天然被赋予对第一性的追求,不屑于单一坐标的约束,钟情于势能面彼端的芬芳。但

5万

帖子

99

威望

5万

eV
积分
112374

管理员

公社社长

4#
发表于 Post on 2023-3-28 23:58:21 | 只看该作者 Only view this author
根本用不着你自己额外搞程序去转。别舍近求远
按下文说的,在xyz文件里手动加入晶胞矢量,比如Tv_1: 7.426 0.0 0.0 Tv_2: 3.6 6 6.40 0.0 Tv_3: 0.0 0.0 10.0,Multiwfn载入时直接也就有了盒子信息,用主功能100的子功能2直接就能导出cif,没法更方便
使用Multiwfn非常便利地创建CP2K程序的输入文件
http://sobereva.com/587http://bbs.keinsci.com/thread-21668-1-1.html

最最最最最最简单的方法莫过于让Multiwfn直接载入优化任务产生的restart文件,用主功能100的子功能2导出cif,整个操作几秒钟的事

如果你就是想了解坐标转换的内部算法,Multiwfn源代码包里PBC.f90里搜subroutine Cart2fract和subroutine fract2Cart

北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2023-3-29 13:46:18 | 只看该作者 Only view this author
lyj714 发表于 2023-3-28 16:32
你写Fortran,直接参考Multiwfn源码中各种文件格式转换的代码不就行啦。

有道理,谢谢!

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

6#
 楼主 Author| 发表于 Post on 2023-3-29 13:46:40 | 只看该作者 Only view this author
北大-陶豫 发表于 2023-3-28 20:10
乘以晶胞参数矩阵的逆就行了。
设晶胞基矢为 a,b,c,原子的笛卡尔坐标r与分数坐标x的关系为
r = x1a +  ...

我就是想了解这个,谢谢老师啦!

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2023-3-29 13:47:01 | 只看该作者 Only view this author
sobereva 发表于 2023-3-28 23:58
根本用不着你自己额外搞程序去转。别舍近求远
按下文说的,在xyz文件里手动加入晶胞矢量,比如Tv_1: 7.426 ...

谢谢社长!

178

帖子

0

威望

645

eV
积分
823

Level 4 (黑子)

8#
发表于 Post on 2024-3-8 17:24:57 | 只看该作者 Only view this author
Dopamine 发表于 2023-3-29 13:46
我就是想了解这个,谢谢老师啦!

请问您成功了吗?可以分享下脚本吗?

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

9#
 楼主 Author| 发表于 Post on 2024-3-13 10:08:13 | 只看该作者 Only view this author
chen0201 发表于 2024-3-8 17:24
请问您成功了吗?可以分享下脚本吗?

我该怎么发给你

16

帖子

0

威望

830

eV
积分
846

Level 4 (黑子)

10#
 楼主 Author| 发表于 Post on 2024-3-13 10:12:13 | 只看该作者 Only view this author
chen0201 发表于 2024-3-8 17:24
请问您成功了吗?可以分享下脚本吗?

我当时比较复杂,后来也没改,你可以参考一下,测试的例子也一并附上

coord.cif

10.28 KB, 下载次数 Times of downloads: 2

coord.latvecs

114 Bytes, 下载次数 Times of downloads: 3

coord.xyz

14.14 KB, 下载次数 Times of downloads: 2

xyz2cif.f90

5.41 KB, 下载次数 Times of downloads: 14

178

帖子

0

威望

645

eV
积分
823

Level 4 (黑子)

11#
发表于 Post on 2024-3-18 15:21:04 | 只看该作者 Only view this author
Dopamine 发表于 2024-3-13 10:12
我当时比较复杂,后来也没改,你可以参考一下,测试的例子也一并附上

非常感谢您的分享!

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 23:46 , Processed in 0.206526 second(s), 23 queries , Gzip On.

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