[QE-users] symmetrization of charge density (pw)

Roland Winkler rwinkler at niu.edu
Thu Mar 12 19:20:26 CET 2026


Dear Users

I am trying to understand how quantum espresso (pw) is symmetrizing
the charge density rhog in reciprocal space.  My understanding is
that for a nonmagnetic symmorphic crystal structure all components
of rhog in a star should be equal [Streitwolf, Group Theory in
Physics, Eq. (6.8)].

For systems with zincblende structure this is, indeed, what I get.
However, for systems with wurtzite structure half of the components
in some stars have opposite signs.

More specifically, I have checked that sym_rho_init_shells
identifies the stars as expected.  However, sym_rho_serial then
gives opposite signs for half of the components in some stars.

The code in sym_rho_init_shells is quite straightforward, using
integer arithmetic for the transformations of the reciprocal lattice
vectors.  This code is doing what I expect, and it gives the results
I expect.  However, I have not yet got the same level of
understanding for sym_rho_serial.  The latter routine is doing
something more complicated, implementing the transformations of the
reciprocal lattice vectors via floating point arithmetic where I do
not understand the reason for this different approach.  I can merely
say that I have instrumented sym_rho_serial to write out the density
after symmetrization and I do not get what I expect as described
above.  [For example, for the job attached below, the components
12,14,16,18,20,22 and 13,15,17,19,21,23 of rhog form two stars
(according to sym_rho_init_shells), but the corresponding values of
rhog in each of these stars are not equal.]

Am I missing something?  Any help is appreciated.

My input file for pw.x is attached.  I am using version 7.5.

Roland Winkler


&CONTROL
  calculation='scf'
  verbosity='high'
  prefix='zns' ! Output files are named according to prefix
/
&SYSTEM
  space_group=186 ! Space group number
  a=3.811  ! Lattice parameter a in angstroms
  c=6.234  ! Lattice parameter c in angstroms
  nat=2    ! Number of atoms in the asymmetric unit
  ntyp=2   ! Number of different atom types. Here, Zn and S.
  ecutwfc=40  ! Kinetic energy cutoff for wavefunctions (Ry)
  ecutrho=200 ! Kinetic energy cutoff for charge density and potential (Ry)
/
&ELECTRONS
/
&IONS
/
&CELL
/
ATOMIC_SPECIES
  Zn 65.38 zn_pbe_v1.uspp.F.UPF
  S  32.065 s_pbe_v1.4.uspp.F.UPF
ATOMIC_POSITIONS crystal_sg
Zn 1/3 2/3 0.00000
S  1/3 2/3 0.38500
K_POINTS automatic 
2 2 2  0 0 0 


More information about the users mailing list