error while interpolation of 2x2x2 SSCHA dyn_mat using a 4x4x4 harmonic dyn_mat #74
-
Hi, The workaround suggested by Dr. Lorenzo in an earlier thread worked well. In order to avoid SSCHA -ve frequencies at finite q points one has to interpolate SSCHA dyn_mat using a harmonic dyn_mat calculated on a finer q-mesh than SSCHA q-mesh. However, when I try this interpolation way to avoid -ve freq error, for tetragonal SrTiO3, I getting this below error: ....
Convergence reached within threshold: 0.100000E-11 Total FC relative variation: 0.128277E+00 Time elapsed for imposing ASR: 186.2998547554016 s ============================================================ SUPERCELL SIZE: 2 2 2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% stopping ... I couldn't able to figure out the reason for this. Need your help. Input script: from future import print_function import cellconstructor as CC import sscha, sscha.Ensemble import cellconstructor as CC import numpy as np import ase dyn = CC.Phonons.Phonons("../dyn_pop3_",6) d3 = np.load("d3_realspace_sym.npy")*2.0 tensor3.Center(Far=2) k_grid=[10, 10, 10] harm_dyn = CC.Phonons.Phonons("../../../matdyn", 6) Regards, |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 5 replies
-
Ho, sorry for the delay in my reply. It seems there is an error when applying the acoustic sum rule. The code does 128 iterations, which is really too much. tensor3.Center(Far=3) |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
I got this error too
think the error is from PHonon/PH/SUBROUTINE frc_blk
If you use the 222 dynamic matrices perform the operation of drawing the phonon spectrum of QE
[q2r.x <q2r.in>q2r.out
matdyn.x < matdyn.in > matdyn.out]
you will get the same error
The solution is change [/home/zwb/qe-6.8/PW/src/wsweight.f90/function wsweight(r,rws,nrws) parameter (eps=1.0d-6)] from 1.0d-6 to 1.0d-7
This is the code where the error occurs
In my test,I found in one point the right way is
ck=-5.403862182618013E-006 < 1e-6 not return
abs(ck)=5.403862182618013E-006 > 1e-6 nreq=nreq
but in my dynamic matrix
ck = -4.229048151671577E-007 < 1e-6 not return
abs(ck)= 4.229048151671577E-007 < 1e-6 nreq=nreq+1
…