[Pw_forum] My phonon dispersion curves are jagged too
Serge Nakhmanson
nakhmanson at anl.gov
Tue Oct 28 16:44:05 CET 2008
Dear All,
I am learning how to compute phonon dispersion curves across the BZ and
right now I am trying to reproduce the results of a simple calculation
for cubic perovskites that Philippe, Karin and company have done a long
time ago [PRB 60, 836 (1999)].
I take cubic (Pm-3m) PbTiO3 five-atom cell relaxed to zero forces (these
are exactly zero by symmetry) and stresses, and compute DM(k) on a 6x6x6
k-point grid. Going from Gamma to X (0,0,1/2), such grid gives 0, 1/6,
2/6, 3/6 = 1/2.
I do the Gamma --> X --> M --> Gamma --> R BZ route (see the middle panel
of Fig 1). The grid used in the paper is a bit worse than mine but all
the dispersion curves are smooth with no breaks anywhere.
Again, after I get all the DM(k) on the grid, I FFT them into an IFCM(r),
which can be used to compute phonons at any k-point. I use it to draw the
dispersion curves. Here's what I get (this is a 2.7 Mb file):
http://home.comcast.net/~sercat/Work_Files/c-PbTiO3_pd/PbTiO3_cp_GXMGR.pdf
or the xmgrace source (~1Mb):
http://home.comcast.net/~sercat/Work_Files/c-PbTiO3_pd/PbTiO3_cp_GXMGR.xmgr
Here the dispersion curves between each pair of high-symmetry k-points are
computed using IFCM(r) on a grid of a 1000 k-points (which is probably an
insane resolution that works out just for this tiny sample calculation)
without any interpolations involved. As you can see, there are numerous
"breaks" in the dispersion curves, which are aligned vertically at certain
k-points. The one at ~100 cm-1 around M-point looks pretty ugly. My
impression is that breaks happen at k-points where two levels cross each
other, i.e., my DM(k) has some degenerate eigenvalues (of certain symmetry?),
which suggests a numerical instability in a routine that diagonalizes the DMs
or, possibly, a routine that constructs the DM(k) prior to its diagonalization.
So my question is: are such breaks in dispersion curves something to be
expected or something unusual? If the former is true, then I'm wondering
what kind of postprocessing I should do to get rid of them and produce nice
plots? For example, are coarser grids (say 20 points instead of 1000) +
spline interpolation the method of choice?
If the latter is true, the problem could be in my lapack library. I am
using ifort 10.1.015 with MKL 10.0.4.023 and FFTW 2.1.5 to compile
matdyn.x; make.sys is here:
http://home.comcast.net/~sercat/Work_Files/c-PbTiO3_pd/make.sys
but I will now try linking against something else to see if this problem
goes away.
My whole calculation (pw_scf+ph+q2r+matdyn+xmgrace_plot) is here:
http://home.comcast.net/~sercat/Work_Files/c-PbTiO3_pd/PbTiO3_cp_phonon_dispersion.tgz
I have asked a few friends about that, and the general consensus is that
such breaks in dispersion curves should not happen no matter what. However,
since many members of this forum are experts in such calculations, I would
very much appreciate your comments on this.
Finally, PLZ note that the lattice consts here and in Philippe's paper
are used in a somewhat different spirit, so that I am not worried
too much that our results are not identical.
Thank you very much,
Serge
--
*********************************************************
Serge M. Nakhmanson phone: (630) 252-5205
Assistant Scientist fax: (630) 252-4798
MSD-212, Rm. C-224
Argonne National Laboratory
9700 S. Cass Ave.
Argonne, IL 60439
*********************************************************
--
*********************************************************
Serge M. Nakhmanson phone: (630) 252-5205
Assistant Scientist fax: (630) 252-4798
MSD-212, Rm. C-224
Argonne National Laboratory
9700 S. Cass Ave.
Argonne, IL 60439
*********************************************************
More information about the users
mailing list