计算化学公社

标题: 求助:QE使用ph计算声子报错npert exceeds 3,求指教 [打印本页]

作者
Author:
物竞天择2333    时间: 2025-11-14 12:49
标题: 求助:QE使用ph计算声子报错npert exceeds 3,求指教
各位老师好!
如题,计算一个比较复杂的体系时,ph.x计算到一半寄了,报错点附近的输出为:
(此前的不可约表示都收敛正常,之前的表示最多也就3个模式,这个是第一个有4个模式的不可约表示)

Representation #  33 modes #  47  48  49  50

     Self-consistent Calculation

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     Error in routine ef_shift (1):
     npert exceeds 3
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%




ph.x的输入文件如下:
&inputph
  tr2_ph=1.0d-9,
  prefix='pwscf',
  fildvscf='NaMoSe',
  amass(1)=22.98977,
  amass(2)=95.94,
  amass(3)=78.96,
  outdir='./tmp',
  fildyn='NaMoSe.dyn',
  electron_phonon='interpolated',
  el_ph_sigma=0.005,
  el_ph_nsigma=10,
  trans=.true.,
  ldisp=.true.
  nq1=4, nq2=4, nq3=4
/


此前scf计算的输入文件如下:
(, 下载次数 Times of downloads: 0)

第一次发帖,麻烦各位大佬指教,这里提前给大家磕一个~

作者
Author:
物竞天择2333    时间: 2025-11-20 17:39
本帖最后由 物竞天择2333 于 2025-11-20 17:41 编辑

已自行解决,经验证造成该问题的原因是:改不可约表示简并度超过3,QE无法处理这种情况。可能因为这个q点在0,0,0对称性较好导致部分不可约表示具有很高的简并度。
发现的解决办法为:在进行ph.x计算前计算scf时,在system部分添加nosym=.true.和noinv=.true.(尚未验证是否只需要其中一个就行),同时在计算ph.x时添加参数:search_sym=.false.,即可解决简并度过高的问题。
本质上是通过关闭scf和ph计算的对称性,引入一些微扰来破坏原高对称q点的对称性,这样就不会出现高简并的不可约表示了。

个人经验分享如上,欢迎指正。





欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3