news 2026/6/10 10:45:34

正确获得连续声子:VASP6.5.1+VASPKIT直接计算声子谱与PHONOPY对比

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
正确获得连续声子:VASP6.5.1+VASPKIT直接计算声子谱与PHONOPY对比

我们在往期内容里讨论过了绘制声子声学支的问题

欢迎讨论:如何正确绘制声子谱声学支

这里非常感谢 云里悟理不能自理 和 振振有声子 两个公众号的运营者对前期相关问题的探讨。

自VASP6.3.2版开始中更新了对于声子色散计算的功能,可以不再需要PHONOPY即可直接计算得到声子谱,同时VASPKIT也同步更新了功能支持处理获得声子谱的数据。

参考:不调用Phononpy也能得到声子谱?

本文同样以Si为例,准备最小原胞结构

Generated by VASPKIT code1.0000000.00000000000000002.73308195786599712.73308195786599712.73308195786599710.00000000000000002.73308195786599712.73308195786599712.73308195786599710.0000000000000000Si2Direct0.50000000000000000.50000000000000000.5000000000000000 Si0010.75000000000000000.75000000000000000.7500000000000000 Si002

然后使用VSAPKIT进行扩胞处理,这里使用400/401功能

同时,将生成的TRANSMAT文件重命名为TRANSMAT.in文件,用于后续数据处理,读出声子谱。

​​​​​​​

Read transformation matrix from the TRANSMAT.in file if it exists.2 0 0 # must be three integers0 2 0 # must be three integers0 0 2 # must be three integers

计算INCAR可以使用VASPKIT(大于1.5版本)生成的Phonon-Calculation默认模版

INCAR详细内容如下

ISMEAR = 0 (Gaussian smearing)SIGMA = 0.01 (Smearing value in eV)EDIFF = 1E-08 (SCF energy convergence, in eV)PREC = Accurate (Precision level)# ENCUT = 500 (Cut-off energy for plane wave basis set, in eV)IALGO = 38 (Davidson block iteration scheme)LREAL = .FALSE. (Projection operators: false)LWAVE = .FALSE. (Write WAVECAR ornot)LCHARG = .FALSE. (Write CHGCAR ornot)ADDGRID= .TRUE. (Increase grid, helps GGA convergence)IBRION = 6 (Calculate phonon frequencies using finite differences approach)LPHON_DISPERSION = T (Calculate phonon dispersion along the q-point path supplied in file QPOINTS)PHON_NWRITE = -3 (Both phonon eigenvectors and phonon frequencies are written for each q point)

同时准备需要的QPOINTS文件,可以直接使用VASPKIT的303功能生成KPATH.in文件,对的是之前用于计算能带的高对称点路径的文件,这时候直接把KPATH.in复制为QPOINTS文件就好了

    K-Path Generated by VASPKIT.20Line-ModeReciprocal0.0000000000 0.0000000000 0.0000000000 GAMMA0.5000000000 0.0000000000 0.5000000000 X0.5000000000 0.0000000000 0.5000000000 X0.6250000000 0.2500000000 0.6250000000 U0.3750000000 0.3750000000 0.7500000000 K0.0000000000 0.0000000000 0.0000000000 GAMMA0.0000000000 0.0000000000 0.0000000000 GAMMA0.5000000000 0.5000000000 0.5000000000 L0.5000000000 0.5000000000 0.5000000000 L0.5000000000 0.2500000000 0.7500000000 W0.5000000000 0.2500000000 0.7500000000 W0.5000000000 0.0000000000 0.5000000000 X

    使用VASP(大于6.3.2版本)计算后(计算量与之前的IBRION = 6下的任务基本一样,增加的QPOINTS并不会增加太多计算量。)

    OUTCAR的最下方,会生成声子的频率信息以及QPOINTS路径下每个声子的色散。

    GAMMA点频率信息

    Q点路径下所有声子的频率信息(包含THz、meV、cm-1等单位)以及振动模式

    使用VASPKIT处理数据前,要通过TRANSMAT.in文件告诉VASPKIT 对于VSAP计算的POSCAR和要处理获得的原胞的对应矩阵关系,这里使用扩胞过程中的输入文件,可以直接获得原胞的声子谱,这样也省去了phonopy中声子谱折叠的过程,同时如果需要对于不同基元的声子谱,可自行调整为TRANSMAT.in文件。

    使用VASPKIT里的95功能来实现声子谱的数据导出,这里VSAPKIT会严格依据声子的编号进行读取和输出每个声子谱的路径和频率。

    同时也可照旧使用phonopy进行一次数据处理。

    phonopy默认产生的声子谱的PDF如图

    再用vaspkit进行声子谱每个声子的的拆分(怎么都少不了VASPKIT)

    从完整的声子谱的对比来说并没有太大的区别。

    往期我们讨论过声学支的画法,这里我们怀疑过在处理phonopy的声子谱的时候,VASPKIT并不能完全做好声子谱的连续

    事实上也的确如此

    phonopy+VASPKIT的789功能依旧不能正确处理声学支在布里渊区边界处的连续的问题。

    而VASP在计算声子谱的时候已经将单个声子在整个路径中完全连续的计算过了,所以每个声子再通过VASPKIT的952功能就可以正确处理出来。

    同时,结合OUTCAR里每个声子在路径上的振动模式,可以更准确的对每个声子的表示进行区分。

    版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
    网站建设 2026/6/10 12:25:48

    【Java毕设全套源码+文档】基于springboot的高校“智慧党建”管理系统的设计与实现(丰富项目+远程调试+讲解+定制)

    博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

    作者头像 李华
    网站建设 2026/6/6 1:38:00

    用sticky定位5分钟打造阅读目录导航

    快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个文章目录导航组件原型。功能要求:1. 左侧显示带标题层级的目录树 2. 右侧显示长篇文章内容(h2-h4标题结构) 3. 滚动时左侧目录自动高亮当前阅读章节 4. 点击…

    作者头像 李华
    网站建设 2026/6/10 12:31:21

    5分钟验证:云端PDF打印解决方案原型

    快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 构建一个云端PDF打印服务原型,用户无需安装本地驱动即可通过网页生成PDF。要求包含文件上传接口、云端打印队列管理、PDF生成引擎和下载功能。前端使用响应式设计&#…

    作者头像 李华
    网站建设 2026/6/10 12:30:54

    基本布局(layout)

    总目录 布局就是layout文件中的一种标签&#xff0c;定义了一个容器。不同的布局有不同的特性。 1. LinearLayout&#xff08;线性布局&#xff09; 线性布局是一种顺序布局&#xff0c;是一个从上到下或从左到右的布局。 <?xml version"1.0" encoding"utf-…

    作者头像 李华
    网站建设 2026/6/10 12:30:53

    Flink学习笔记:如何做容错

    现在我们已经了解了 Flink 的状态如何定义和使用&#xff0c;那 Flink 是如何做容错的呢&#xff1f;今天我们一起来了解一下。 先来回答问题&#xff0c; Flink 是通过状态快照来做容错的&#xff0c;在 Flink 中状态快照分为 Checkpoint 和 Savepoint 两种。 Checkpoint Chec…

    作者头像 李华