quantum-espresso/Doc/release-notes

2134 lines
106 KiB
Plaintext

New in development version:
* Experimental support for pseudopotentials in PSML format
Incompatible changes in development version:
* None known
Fixed in development version:
* Incorrect PP_SEMILOCAL field written for old-style pseudopotentials.
May cause crashes (but not bad numbers). Reported by Jibiao Li.
* Wrong output from Libxc-based gga-exchange functionals (gga_x) due to
a bad multiplicative factor (v7.2 only, noticed by Peter Kraus).
The exchange+correlation ones (gga_xc) were not affected.
* The seed for random numbers was not set after the first run. As a result,
all subsequent runs used the same sequence of random numbers. Affects only
thermostats in Verlet dynamics for pw.x. Noticed by Han Hsu, NCU Taiwan.
New in v.7.2:
* Oxidation state constrained DFT [Ku and Sit, JCTC 15, 4781 (2019)]
* Self-consistent calculation with a two-chemical potential approach
by G. Marini, M. Calandra [Phys. Rev. B 104, 144103(2021)].
* Polaron localization with semi-local functionals via correction of
self interaction (S. Falletta, A. Pasquarello):
https://journals.aps.org/prl/abstract/10.1103/PhysRevLett.129.126401
https://journals.aps.org/prb/abstract/10.1103/PhysRevB.106.125119
* GPU-accelerated phonon code (CINECA Team)
* First steps towards GPU acceleration for AMD and Intel via OpenMP
* More CUDA Fortran code removed and replaced by ACC (Ivan Carnimeo)
* EPW v.5.7.
(1) Polaron
For the full list of new features, bug fixes, and changes leading to backward incompatibility issues,
please visit the Releases page of the EPW documentation site [https://docs.epw-code.org/doc/Releases.html].
Incompatible changes in v.7.2:
* None known
Fixed in v.7.2:
* Mysterious MPI errors in "custom" parallel diagonalization, produced
on some MPI libraries by destruction of nonexistent communicators
* v.7.1 of CP for GPU was not working for pseudopotentials with nonlinear
core correction
* in v.7.0 and 7.1 of pw.x the calculation of forces under a macroscopic
electric field in parallel execution was crashing due to a misspell
* pw.x was not able to read J0 using the new Hubbard input syntax,
and it was not printing the correct manifolds in the output when
two Hubbard channels per atomic type are used
* hp.x was not checking the compatibility of the q-mesh and FFT mesh
* ppacf.x was not working any longer in parallel in v7.1
* neb.x was unable to read the HUBBARD card from input since v7.1
* r2r4 coefficient for Ba in DFT-D3 was incorrect since the original
release in v.6.2.1 (noticed by Valid Askarpour)
* Fully-relativistic PPs generated with QE versions 6.7 to 7.1 may contain
an incorrect "PP_AEWFC_rel" tag instead of the correct one "PP_AEWFC_REL"
(noticed by Andrea Dal Corso)
* Non-magnetic spin-orbit calculations could in some rare case produce
NaN's in the energy (noticed by Andrea Dal Corso)
* CP wasn't honoring "exx_fraction" in v.7.1 (fixed by Hsin-Yu Ko)
* QEHeat and KCW were not working if compiled for GPU
* SCF failure to converge wasn't always exiting with a non-zero code since
v7.0 (fixed by A. Fonari)
New in 7.1 version:
* DFT+RISM (1D, 3D, Laue) by S. Nishihara & M. Otani [Phys. Rev. B 96, 115429 (2017)].
* Improved, streamlined and extended porting to NVidia GPUs
* KCW package for Koopmans-compliant functionals in a Wannier representation:
https://journals.aps.org/prx/abstract/10.1103/PhysRevX.8.021051.
Developed and maintained by N. Colonna, R. de Gennaro, E. Linscott
* If no explicit parallelization options -nk, -nt, -nd are provided,
pw.x will figure out suitable values for optimal, or at least, not
too bad, parallelization
* EPW v.5.5. For the full list of new features, bug fixes, and changes leading
to backward incompatibility issues, please visit the Releases page of the
EPW documentation site [https://docs.epw-code.org/doc/Releases.html].
Incompatible changes in 7.1 version:
* Source files previously found in FFTXLIB/ moved to FFTXLIB/src/
* gen_us_dj, gen_us_dj moved to upflib/ and into module uspp_init
* DFT+Hubbard codes have new input syntax (check Doc/Hubbard_input.pdf)
Fixed in 7.1 version:
* Berry phases could in some cases be off by a factor eR/V.
Present since v.6.6 (noticed by S. Spreafico, fixed by R. Cohen)
* `divide_class_so` routine could yield the wrong irreducible representations
classification in the D3_h group (G.J. Ferreira, A. Dal Corso)
* XSPECTRA gave incorrect results with k-point parallelization, since
at least v. 6.6, due to missing broadcast of recomputed Fermi energy
(found and fixed by Fanchan Meng, Brookhaven)
* Bugfix in DFPT+U with PAW pseudos and when fildvscf/=''
* Makov-Payne correction wasn't working with ibrav=0 and cubic cell (A. Fonari)
* Card ADDITIONAL_KPOINTS wasn't working as expected (Prasenjit Ghosh)
* Subtle bug in G-vector ordering, usually triggered by almost-but-not-quite
symmetric primitive lattice vectors, was affecting k=0 calculations (not CP)
since v.6.0. The ultimate fix would require to change routine hpsort_eps;
the current workaround consists in not recomputing k+G indices if k=0.
* In CMake GPU builds, one routine fftx_threed2oned_gpu was not compiled with
a proper GPU compiler option and caused failure in GGA-noncolin calculations.
* CP with Hubbard U was crashing also when reading the xml file (v.7.0)
* Bugfix in turboMagnon for k point grids that have Gamma or points at the
Brillouin zone edge (the weights were not correct)
* Libxc (5.2.x) linking failure when using CMake.
New in 7.0 version:
* Unscreened and screened (range-separated) vdW-DF hybrids
(Per Hyldgaard and collaborators)
* GPU support for PWscf and CP significantly extended
* RMM-DIIS for CPU (S. Nisihara) and GPU (E. de Paoli, P. Delugas)
* DFT-D3: MPI parallelization and GPU acceleration with OpenACC
* projwfc.x can be used to compute the PDOS in a local basis (I. Timrov)
* Charge self-consistent DFT+DMFT calculations with the TRIQS software package
via Wannier90 (S. Beck, CCQ Flatiron Institute)
* EPW:
(1) Addition of spectral decomposition capability in the transport module
(2) Support for the frmsf file format of FermiSurfer
(3) The cumulant module updated
For the full list of new features, bug fixes, and changes leading to backward incompatibility issues,
please visit the Releases page of the EPW documentation site [https://docs.epw-code.org/doc/Releases.html].
Fixed in 7.0 version:
* Possible out-of-bound error (gfortran only) could crash DFT+U
* incorrect exx factor multiplication in the gga term of polarized cx0
functional (v.6.8 only)
* Some build problems occurring under special circumstances
* Some PP files were not correctly read since v.6.7
* DFT-D3 with dftd3_version=4 or 6 could produce NaN's in parallel runs
due to missing zero initialization of some work arrays
* Ensemble-DFT in CP ("cg") wasn't working any longer for norm-conserving PPs
* In DFT+U (lda_plus_u_kind = 0 and 1) the pw.x code was printing the squared
eigenvectors instead of simply eigenvectors. Now it prints the
eigenvectors (consistent with lda_plus_u_kind = 2).
* plotband.x wasn't correctly plotting the bands, under some not-so-special
circumstances
* CP with DFT+U could crash when writing the xml file (since v.6.6)
* Restart of electron-phonon calculations was not working due to a missing
tag (thanks to Miguel Marques for reporting this)
* atomic: the exchange of two lines in import_upf.f90 had broken PAW tests
since v.6.5 (thanks to Chiara Biz for reporting, to AdC for fixing)
* Calculation of ELF for spin-unpolarized cases was grossly wrong in v.6.8
* Changes to the i-Pi interface to adapt it to usage with ASE had broken
the original functionality
Incompatible changes in 7.0 version:
* Changes to Makefiles and to file "make.inc" (they must be regenerated)
* clib/ deleted, files clib/*.c moved to UtilXlib/ or to Modules/
* Some reshuffling of variables for noncollinear and spin-orbit calculations
Known problems in 6.8 version:
* electron-phonon calculation in the non-colinear/spinorbit case is broken
* some obscure problem still affects variable-cell with hybrid functionals
New in 6.8 version:
* Grand-Canonical SCF (J. Chem. Phys. 146, 114101 (2017)) for constant-mu
method is implemented by S. Nishihara and S. Hagiwara. [arXiv:2012.10090]
* Calculation of spin-current matrix elements (Phys. Rev. B 99, 235113)
for spin Hall conductivity using Wannier interpolation, in pw2wannier.x
(Minsu Ghim, Seoul National U.)
* GWL iterative Www method from JCTC 15 (6) 3710, 2019: Joshua Elliot
(U. Manchester), N. Colonna, M. Marsili, N. Marzari, P. Umari
* Many-Body Dispersion (MBD) correction: Szabolcs Goger (U. Luxembourg),
Hsin-Yu Ko (Cornell), et al.
* Support for GPU via CUDA Fortran brought to the main repository
* Calculation of DORI and of ELF for nspin=2 (Dong Yang, Qin Liu, JSG)
* Interface for BerkeleyGW extended to hybrid and meta-GGA functionals:
Fangzhou Zhao (Berkeley)
* Implementation of the turboMagnon code in TDDFPT [EPJB 91, 249 (2018)]
(T. Gorni, O. Baseggio, I. Timrov, P. Delugas, S. Baroni)
* EPW:
(1) Hall mobility and Hall factor.
(2) Isotropic linearized Eliashberg equation to get Tc
For the full list of new features, bug fixes, and changes leading to backward incompatibility issues,
please visit the Releases page of the EPW documentation site [https://docs.epw-code.org/doc/Releases.html].
Fixed in 6.8 version:
* Fictitious charge particle (FCP) works again. [arXiv:2012.10090]
* Bugfix in HP: the hp.x calculation was not stopping smoothly when
"perturb_only_atom" was used (this bug is not present in earlier
versions, i.e. <6.7)
* Phonon restart was broken in some cases due to bad occupations
written to xml file
* ELF with nspin=2 was not correct (noticed by Dong Yang, JSG)
* "cube" file with data interpolated by B-splines was not correct
(fixed by Satomichi Nisihara)
* Dumb and horrible bug in PAW relativistic calculations (QE 6.7 only):
a bad tag name was searched for in PP, leading to a small but non
negligible error. Noticed by Minkyu Park (Univ. of Ulsan, Rep. of Korea).
Also fixed a "wrong offset" error that could occur in DFT+U for some
relativistic PP files (found in a report by Ignacio Martin Alliati)
* Solution to the long-standing problem of non-monotonic N(E) in
Methfessel-Paxton and Marzari-Vanderbilt smearing, occasionally resulting
in an incorrect choice of the Fermi energy (Flaviano José dos Santos, EPFL).
Results, in particular for the Fermi energy, may change a little bit, but
either they are the same or are systematically improved wrt previous ones.
* There was a missing 2pi/a factor in the case of loto_2d = .true.. Found
and explained in M. Royo and M. Stengel, https://arxiv.org/abs/2012.07961.
* The rho => 0 limit of spin-polarized BEEF XC energy was not correct,
leading to funny total energy numbers and problems in structural optimization
(fixed by Gabriel S. Gusmão, Georgia Tech)
* In some cases the new xml code of v.6.7 wrote UPF files that could not be read
because they contained too long lines (noticed by Felix Goudreault, U. Montreal)
* Bug in variable-cell hybrid DFT fixed: it was broken since v.6.5.
* Small random errors in some XC spin-polarized functionals in OMP execution
* The new fit introduced in v.6.7 of ev.x wasn't always working as expected
* alpha2f.x wasn't reading the input any longer in v.6.7
(noticed by Rico Pratama, Chungbuk Nat.U. Cheongju, Rep. of Korea)
* turboLanczos with hybrids + (d0psi_rs=.true.) + (ipol/=4) was crashing
* Restart for DFT+U+V was not working
* Restart for "Force theorem" was not working properly and gave wrong results
* ld1.x may crash while writing UPF files due to unallocated r and rab arrays
(noticed and fixed by Hitoshi Mori)
Incompatible changes in 6.8 version:
* lfcpopt & lfcpdyn are replaced by lfcp. Only static optimization of the
Fermi energy works. Currently, molecular dynamics with FCP does not work.
* Exchange-correlation code (vdW excepted) moved to XClib/
* Much more pseudopotential-related code re-organized and moved to upflib/
Variables ofsbeta ("offset of beta functions") and indv_ijkb0 merged
Now only ofsbeta is used
* Code computing [H,x] commutator moved from LR_Modules/ to PW/src/ and
disentangled from linear-response variables - now is used in PP/ as well
New in 6.7 version:
* Support for CMake (F. Ficarelli and D. Cesarini, CINECA, with help from
Ye Luo, P. Delugas, S. Gsaenger)
* In vc-relax with Hubbard corrections, the final SCF calculation is done by
reading atomic occupations from file produced during the vc-relax
(rather than recomputing them from scratch).
* EPW:
(1) ZG package to generate special displacements for first-principles non-perturbative calculations
at finite temperatures [Marios Zacharias and Feliciano Giustino, Phys. Rev. Research 2, 013357, (2020)].
(2) Plotting of Fermi surface.
For the full list of new features, bug fixes, and changes leading to backward incompatibility issues,
please visit the Releases page of the EPW documentation site [https://docs.epw-code.org/doc/Releases.html].
Fixed in 6.7 version:
* Some linkers yield "missing references to ddot_" in libbeef
* Bogus errors in scale_sym_ops in some cases of almost-symmetric crystals
* FFT test in FFTXlib was not always compiling
* angle1, angle2, starting_magnetization incorrectly written to xml file
* Bug in Hubbard forces and stress for bands parallelization (when nproc_pool>nbnd)
* Bug in DFT+U+V when starting_ns_eigenvalue is used (courtesy of M. Cococcioni)
* Crash in the calculation of Z* with ultrasoft PP when the number of bands
is larger than the number of occupied bands (thanks to Sasha Fonari)
* Crash in matdyn.x when ibrav=0 (thanks to Sasha Fonari)
* Some postprocessing cases not working properly with k-point parallelization
and ultrasoft pseudopotentials (noticed by Kristjan Eimre)
* Ensemble dynamics in CP was broken in v.6.6 (not in previous versions)
Incompatible changes in 6.7 version:
* FoX no longer used to read and write pseudopotential files
* iotk no longer used to read and write any file
* Developer manual moved to the Wiki
New in v.6.6:
* vdW-DF3-opt1, vdW-DF3-opt2, and vdW-DF-C6 van der Waals functionals
implemented (T. Thonhauser, supported by NSF Grant No. 1712425)
* More FORD documentation
* Stress for non-collinear case
* QE can be compiled on Windows 10 using PGI v.19.10 Community Edition
configure works, except FoX: use script install/build_fox_with_pgi.sh
* ParO and PPCG iterative diagonalization algorithms
* Fourier interpolation of phonon potential implemented in ph.x
(Jae-Mo Lihm, Seoul Natl. Univ.)
* Extension of the PW code to DFT+U+V [JPCM 22, 055602 (2010)];
Extension of the HP code to compute also inter-site Hubbard V parameters;
Extension of the XSpectra code to work on top of DFT+U+V [arXiv:2004.04142]
(I. Timrov, N. Marzari, M. Cococcioni).
Extension of Hubbard forces and stress to ortho-atomic orbitals
(I. Timrov, F. Aquilante, L. Binci, N. Marzari)
* Support for BEEF-vdW XC (by Johannes Voss) compilation link has been included;
e.g. BEEF_LIBS="-L$LIBBEEF/src -lbeef", where $LIBBEEF is the path
to the compiled libbeef folder. If "calculation='ensemble'",
BEEF-vdW nscf ensemble energies will be generated at the end of PWscf.
(Gabriel S. Gusmão, Georgia Tech)
* i-PI socket now supports on-the-fly change of flags for SCF, forces,
stresses and variable cell calculations using binary-integer enconding.
(Gabriel S. Gusmão, Georgia Tech)
* Phonon-induced electron self-energy implemented in ph.x and
a new post-processing program PHonon/postahc.x added.
(Jae-Mo Lihm, Seoul Natl. Univ.)
* Implementation of the Sternheimer algorithm in the turboEELS code
(O. Motornyi, N. Vast, I. Timrov, O. Baseggio, S. Baroni, and A. Dal Corso,
Phys. Rev. B 102, 035156 (2020).)
* EPW:
(1) Use of the band manifold determined by Wannierization step
when evaluating electron-phonon vertex on coarse grids
(2) Support for PAW
For the full list of new features and changes leading to backward incompatibility issues,
please visit the Releases page of the EPW documentation site
[https://docs.epw-code.org/doc/Releases.html].
Fixed in v.6.6:
* PW: Restart from interrupted calculations simplified. As a side effect,
NEB restart now works again
* Various LIBXC glitches, missing check on metaGGA+USPP/PAW not implemented
* Fermi energy incorrectly written to xml file in 'bands' calculation
(did not affect results, just Fermi energy position in band plotting)
Also: Fermi energy always written to xml file, also for insulators
* Phonon code in the non-collinear case with magnetization ("domag" case)
now works properly - courtesy Andrea Urru and Andrea Dal Corso.
* Incorrect forces, and slightly inconsistent atomic positions, were
written to xml file for structural optimization and molecular dynamics
now works properly - courtesy Andrea Urru and Andrea Dal Corso.
written to xml file, leading to errors in some codes (e.g., thermo_pw)
using that piece of information (fixed by Alberto Otero de la Roza)
* PPACF wasn't working with the "lfock" option: wavefunctions were no longer
read from file because read_file had been replaced by read_file_new
* Wrong phonons could result in some cases from an incompatibility between
the FFT grid and the symmetry (typically occurrence: actual symmetry higher
than the symmetry of the Bravais lattice) - Noticed by Matteo Calandra.
* Bug in PHonon+U for the symmetrization in the spin-polarized case when
the Hubbard channel is "s" (noticed by Jin-Jian Zhou)
Incompatible changes in v.6.6:
* If no starting magnetization is set in a non-collinear or spin-orbit
calculation, the magnetization is set to zero and remains zero.
Previously, the magnetization was zero in practise (although numerical
noise could lead to nonzero values) but was not forced to be zero.
* Default value of parameter "diago_david_ndim" changed to 2:
uses less RAM, execution time sometimes shorter, sometimes longer.
* Grouping of inlc values into ranges for different developments.
WARNING: inlc for rVV10 has been changed to inlc=26.
* Conversion from 1D FFT real-space index to 3D positions moved into a
small routine for all cases where such conversion is used
* CP: atomic positions are now in array tau(1:3,1:nat), information on the
type of atom is in array ityp(:). The logic is now the same as for all
other codes and there is no need to re-order atoms or to put ultrasoft
pseudopotentials first, non-conserving second.
* Calls to LAXlib routines changed: module to be included replaced by file
'laxlib.fh', descriptors replaced by integer values
* Interpolation table for Q(G) is in a.u. and no longer in 2pi/a units
* Part of pseudopotential-related code moved to new directory upflib/ and
into library libupf.a. Directory upftools/ is obsolescent.
New in 6.5 branch:
* For non-local functionals of the vdW-DF and rVV10 families the kernel is
now calculated on-the-fly rather than read from file. Thus, the kernel
files vdW_kernel_table and rVV10_kernel_table are no longer needed for
calculations and the kernel generation programs generate_vdW_kernel_table.x
and generate_rVV10_kernel_table.x have been removed. The on-the-fly vdW-DF
kernel calculation does not take long, e.g. ~100 seconds on a single Intel
Xeon 2.20GHz core and ~12 seconds on 8 cores (Intel 2018 compilers); the
rVV10 kernel computes in seconds. Detailed information is available in the
git log commit notes. This work was performed by T. Thonhauser and is
supported by NSF Grant No. 1712425.
* turbo_eels code of TDDFPT module now works with ultrasoft pseudopotentials
and spin-orbit coupling together (Oleksandr Motornyi, Andrea Dal Corso,
Nathalie Vast). lr_sm1_psi.f90 of LR_Modules is rewritten and simplified.
* Stochastic-velocity rescaling as a new thermostat for constant-cell MD as
implemented in dynamics_module (Leonid Kahle, Ngoc Linh Nguyen)
Known problems in 6.5 branch:
* The phonon code in the non-collinear case with the "domag" option does
not work properly: there is a problem with time reversal symmmetry.
Such calculation is currently disabled until a fix is found.
Problems fixed in 6.5 branch :
* at2celldm wasn't properly converting vectors into celldm parameters
in the ibrav=91 case (Tone)
* PP: plot_num=1 wasn't working any longer as expected due to forgotten
local potential term (noticed by Manoar Hossain, NISER)
* DOS calculation wasn't honoring "bz_sum='smearing'" if the nscf
calculation was performed with tetrahedra, contrary to what stated
in the documentation (noticed by Mohammedreza Hosseini, Modares Univ.)
* Time reversal symmetry in tetrahedron routine incorrectly detected
after a restart in phonon (reported by T. Tadano)
* pp.x with plot_num=11 in spin-polarized case was issuing a segmentation
fault error (noticed by Mauricio Chagas da Silva)
* pp.x with plot_num=17 in spin-polarized case was issuing a bogus
error (noticed by Shoaib Muhammad, Sungkyunkwan U.)
* vc-relax with cell_dofree='z' wasn't working exactly as expected
(noticed by Daniel Marchand, fixed by Lorenzo Paulatto)
* Incorrect link to wannier90 package (thanks to Nikolas Garofil)
* Bug in spin-polarized meta-GGA (noticed by Shoaib Muhammad,
Sungkyunkwan U.)
* Unphysical fractional translations (tau/n with n/=2,3,4,6) were not
explicitly discarded, thus leading in unfortunate cases to strange
values for FFT factors and grids. Also: if "nosym" is true, inversion
symmetry flag (invsym) and info on FFT factors (fft_fact) must also
be reset (problem spotted by Thomas Brumme, Leipzig)
* PPACF wasn't working any longer in v.6.4 and 6.4.1 for nspin=2 and
for hybrid functionals (fixed by Yang Jiao, Chalmers)
* option "write_unkg" of pw2wannier90.f90 wasn't working as expected
* Input parameters (for restarting DFPT+U calculations) read_dns_bare
and d2ns_type were missing in the PH input namelist, and moreover
they were not broadcasted.
* Option rescale-T and reduce-T now update the target temperature based on
the previous target temperature, not based on instantaneous temperature
as before.
* cppp.x works again
Incompatible changes in 6.5 branch :
* Major changes inside the exchange-correlation code; XC routines moved
inside modules but no other changes are needed for calling routines
* ibrav=-13 crystal axis converted to a more standard orientation.
Atomic positions in crystal axis for the previous convention can
be converted by applying the transformation (x,y,z) => (y,-x,z)
* Initialization has been reorganized, so some initialization routines
do not perform exactly the same operations as before - should have no
consequences for codes calling "read_file" to start the calculation,
but codes separately calling initialization routines may be affected
* fractional translations "ftau" in FFT grid units no longer existing as
global variables: replaced by "ft", in crystal axis, computed locally
where needed (in real-space symmetrization only)
New in 6.4.1 branch :
* A warning is issued if the lattice parameter seems to be a conversion
factor instead of a true lattice parameter. Conversion should be achieved
with the appropriate options, not with dirty tricks. In the future this
will no longer be allowed
* A warning is issued if ibrav=0 is used for systems having symmetry. If not
properly done this may lead to strange problems with symmetry detection
and symmetrization. Lattice information should be used if available.
Problems fixed in 6.4.1 branch :
* Two bugs fixed in HP: 1) the code was not working correctly when fractional
translations were present, 2) there was a bug in the case when either there
is only one k point, or when k pools are used and some of the pools have
only one k point.
* Restart of ph.x with 2D boundary conditions has been fixed (see gitlab
issue #102)
* XML file correctly written if tetrahedra are used (see gitlab issue #103)
New in version 6.4:
* Experimental version of SCDM localization with k-points, activated like for
k=0 by specifying in &system namelist a value > 0 for "localization_thr".
* It is now possible to limit the number of xml step elements printed out
for relaxation or molecular dynamics simulation, by setting the environment
variable MAX_XML_STEPS. Useful in case of very long trajectories to avoid
issues due to too large file size.
* EPW works with ultrasoft pseudopotentials (F. Giustino, S. Poncé, R. Margine)
* New code hp.x to compute Hubbard parameters using density-functional
perturbation theory (experimental stage) (I. Timrov, N. Marzari, and M. Cococcioni,
Phys. Rev. B 98, 085127 (2018); arXiv:1805.01805)
* The PHonon code works with the Hubbard U correction (experimental stage)
(A. Floris, S. de Gironcoli, E.K.U. Gross, and M. Cococcioni,
Phys. Rev. B 84, 161102(R) (2011);
A. Floris, I. Timrov, B. Himmetoglu, N. Marzari, S. de Gironcoli,
and M. Cococcioni, in preparation)
* XDM now works also for USPP and norm-conserving PP
Problems fixed in version 6.4 (+ = in qe-6.3-backports as well) :
+ Codes reading scf data recomputed celldm parameters also if ibrav=0
This produced confusing output and had the potential to break some codes
+ index not correctly initialized in LSDA phonon with core corrections
+ GTH pseudopotentials in analytical form wrongly computed in some cases
+ projwfc.x not working with new xml format in non-collinear/spinorbit case
+ Starting with .EXIT file present ("dry run") crashed with new file format
+ Some space groups were missing
+ Random MPI crashes with DFT+U due to small discrepancies between values
of Hubbard occupancies on different processors
+ Variable-cell optimization wasn't working with Tkatchenko-Scheffler vdW
+ Atomic occupancies for DFT+U were not correctly written by CP after
switch to new format, due to a mismatch in their definition
+ Phonons with option "nosym" wasn't working
+ Option "noinv" wasn't read from new xml file
* Variable-cell optimization with hybrid functionals wasn't working due
to missing re-initialization (it also crashed during the final scf step)
+ Printout of wall time was sometimes incorrect (courtesy Daniel Pinkal)
+ 'make install' and 'make -jN' cases fixed (maybe)
+ The restart option in turboEELS (turbo_eels.x) with ultrasoft
pseudopotentials was not working.
+ bad format in upf%comment when writing the PP_INFO section of UPF v2 PPs
Incompatible changes in version 6.4 version:
* Charge density in the LSDA case is stored as (up+down, up-down) and no longer
as (up,down). Output data format is unchanged to (up+down, up-down)
* Non-symmorphic operations are always allowed and the FFT grid is made
commensurate. Meaning and usage of input variable "use_all_frac" changed.
* Old format (-D__OLDXML) deleted. Everything should work as before but some
exotic options might have problems. The following utilities no longer work:
- cppp.x (was reading old format only)
- importexport.x (superseded by hdf5 for portable binaries)
- bgw2pw.x (was writing old format only)
* Several routines moved from PHonon/PH to LR_Modules
* Module "wavefunctions_module" renamed "wavefunctions"
* TDDFPT: the variables ecutfock, tqr, and real_space are no longer input
variables of turbo_lanczos.x and turbo_davidson.x. Instead, they are read
from the XML file produced by pw.x. The variable real_space_debug was removed.
Known problems in version 6.4:
* Frequent "dexx is negative" errors with hybrid functionals
* restart of ph.x when using 2D boundary conditions fails see issue#102 on gitLab
* the band_structure element is printed incompletely if tetrahedra are used for sums in the IBZ, see issue #103.
New in 6.3 version:
* New implementation, using a more robust algorithm for the Wigner-Seitz
construction in EPW (Samuel Ponce and Carla Verdi)
* New application for optical spectra computation using optimized basis sets
(Paolo Umari, Nicola Marzari and Giovanni Prandini).
* Improved interface between TDDFPT and Environ using plugins( Oliviero Andreussi)
* Improved FFT threading (Ye Luo, Argonne)
* EXX: ACE can be projected on arbitrary number of orbitals
Slight change in SCF convergence with ACE (dexx) properly
accounting for difference between 2*<new|V(old)|new>
and <new|V(old)|new> + <old|V(new)|old> (see "fock3" term)
SCDM and localized exchange is now compatible with ecutfock
Localized exchange can deal with virtual orbitals (empty bands)
(Ivan Carnimeo)
* Spin-polarized X3LYP (experimental)
* EPW: Electronic transport (Boltzmann transport equation)
Iterative Boltzmann transport equation (experimental)
Improved way to compute Wigner-Seitz vectors
Cumulant treatement (model)
Possible screening
Support for exclude bands
Calculation of velocity beyond the local approximation (experimental)
Problems fixed in 6.3 version:
* Stress with hybrid functionals and Gamma point was grossly wrong
(5ed148646)
* EPW: Velocity in the dipole approximation was unstable because of
G-vector ordering.
* Real-space augmentation functions were crashing with -nt N option
* Calculation of ELF wasn't always working due to a bad usage of FFT
descriptors - noticed by Enrique Zanardi Maffiotte (commit a86fb75d)
* Workaround for gfortran bug in FoX (commit 5b36b697) and for pgi+openmp
bug (f43e72c9)
* Reading of starting wavefunctions from file, including restart case,
wasn't always working as expected. This might be at the origin of
mysterious "davcio errors" (April 18, 2018)
* Parameters for electric fields were not saved to the new XML file, thus
breaking some forms of postprocessing (noticed by Thomas Brumme and
Giovanni Cantele, fixed April 18, 2018)
* Bug in reading (with FoX) the augmentation part of pseudopotentials in
upf v.2 format. The bug shows up only for PPs generated using David
Vanderbilt's code, yielding a mysterious message "Error in scalartorealdp
Too few elements found" (March 20, 2018)
* LDA+U for spin-orbit (kind=1) was crashing for one k-point, trying to read
data not previously saved (noticed by Christof Wolf, Feb 8, 2018)
* ibrav =-13 wasn't documented and did not recognize the correct parameter
cosBC (noticed by Jose' Conesa, Jan 26, 2018)
* Yet another problem with the final scf step in a vc-relax calculation: if
restarted from an interrupted calculation, the final step was trying to
read the charge density with a different number of G-vectors (Jan 23, 2018)
* CP with LDA+U: the choice of the LDA+U manifolds from atomic wavefunctions
was sometimes not working properly due to a missing check (Jan 22, 2018)
* pw2bgw.x fixed, courtesy G. Samsonidze (Jan.16, 2018)
* Band parallelization was broken in one of the last commits
just before v.6.2.1 (Dec.23, 2017)
* TDDFPT in "lr_addus_dvpsi.f90" had a bug for systems with USPP
and more than 2 atoms (Dec.22, 2017) (Oleksandr Motornyi,
Michele Raynaud, Iurii Timrov, Nathalie Vast, Andrea Dal Corso)
* Phonons with images wasn't working in v.6.2.1 with old PP files
containing "&" in the header section (Dec.20, 2017)
* PWscf in "manypw" mode wasn't working due to a bad IF (Dec.12, 2017)
Known problems in 6.3 version:
* CP does not compile if the old XML format is enabled (-D__OLDXML)
* the 'make install' and 'make -j' commands do not work
Incompatible changes in 6.3 version:
* EPW: Removal of q-point paralelization (not very used and generated large code
duplication) ==> removal of the parallel_k and parallel_q input variables.
* various subroutines computing gradients and similar quantities using FFTs
have been harmonized and collected into Modules/gradutils.f90
* subroutine "ggen" split into two subroutines: "ggen" takes care of
G-vectors for the FFT grid only, "ggens" for the subgrid only
* FFT interfaces fwfft, invfft now accept only 'Rho', 'Wave', 'tgWave'.
Together with FFT descriptor, these options cover all cases.
* Structure for 'custom' FFT (exx_fft) deleted from exact exchange code,
FFT descriptor dfftt and a few variables used instead
(a different exx_fft structure is still present in GWW)
* FFT indices nl, nlm, nls, nlsm, moved from their previous location
(gvect, gvecs) into FFT descriptors (dfft* structures)
* Development moved to GitLab
New in 6.2.1 version:
* Spin-polarized SCAN meta-GGA; spin-unpolarized stress for meta-GGA
(Hsin-Yu Ho and Marcos Calegari Andrade)
* Interface with Grimme's DFT-D3, as repackaged by Bálint Aradi
(Miha Gunde and Layla Martins-Samos)
* Phonons for two-dimensional systems (Thibault Sohier et al.)
Problems fixed in 6.2.1 version:
* PWscf in "driver" mode with i-Pi wasn't working with k-points and
wasn't honoring options for interpolation - fixed by Przemyslaw Juda
(r14037)
* Restart in phonon wasn't working with tetrahedra (r14029)
and for USPP/PAW at q != 0 (r14034-14036)
* QM-MM interface with LAMMPS was broken in v.6.2 (r14006-14008)
* NASTY BUG IN META-GGA WITH LIBXC (tpss, tb09, scan): incorrect results -
fixed by Hsin-Yu Ho and Marcos Calegari Andrade (r14000, 14004-5, 14027)
* Electron-phonon with ibrav=0 not working due to a mismatch between
what is written and what is read in "fildyn" (r13999)
* Tetrahedra with "old" XML format working again (r13993)
* Option "-in file" for fermi_proj.x and fermi_velocity.x was not working
in serial execution; fermisurfer_example/ was missing (r13986). Also:
Fermi velocity in vfermi.frmsf was 4*celldm(1) times bigger than in
fermisurfer (reported by Victor Chang, fixed by Mitsuaki Kawamura, r14033)
* Inconsistent "short name" for DFT was breaking Perdew-Wang pseudopotentials
(r13975)
* Yet another problem with last scf step in vc-relax, present since v.6.1:
if no atoms of a given kind were present, there was a division by zero
and a NaN in starting magnetization (reported by Malte Sachs) (r13971)
* FFT's for ARM libraries were broken (r13956,13959, courtesy Jason Wood)
Known problems in 6.2.1 version:
* pw2bgw.x not working
* QM-MM not yet working; COUPLE interface not aligned with new parallelism
* New format for charge density no longer allows to perform a non-scf
calculation with k-points starting from a scf calculation at Gamma
* NEB with one k-point per pool requires "wf_collect=.false.", because
update_neb is not updated for the new format
Incompatible changes in 6.2.1 version:
* __OPENMP with two underscores (set by configure) replaced by _OPENMP
with one underscore (automatically set by all OpenMP-aware compilers)
* "Old" xml input file deleted
New in 6.2 version:
* SCAN functional with libxc v.3; bands with meta-GGA can be computed
(Davide Ceresoli)
* EXX with localization (experimental)
* Stress calculation is enabled in ESM
“starting_charge” option added to SYSTEM namelist
* Unscreened hybrid vdW-DF (JCP 146, 234106 (2017), contributed by
Per Hyldgaard and Jeff Neaton
Fixed in 6.2 version
* DFPT with constrained magnetization for insulators wasn't working
(r13915)
* virtual.x was linking a duplicate obsolete "pseudo" module, leading to
"unrecognized dft" error (fix provided by Stefano Dal Forno, r13910)
* NEB + EXX works again (r13851)
* Under some circumstances (k-points, reduced ecutfock, other unclear
reasons), EXX with reduced cutoff wasn't giving accurate results,
due to a mismatch between the ordering of G-vectors in the original
FFT grid and in the grid for ecutfock. Also fixed: incorrect indices
of -G (used in Gamma-only case) when nr1 /= nr2 (r13833)
* Variable-cell glitches: with EXX, G-vectors used in the FFT of 1/|r-r'|
should be rescaled as well (courtesy Satomichi Nisihara) (r13817);
with tetrahedra, deallocation must be done only at the end (r13932).
* Bug in DFPT with tetrahedra and in "fermisurfer", plus some extensions
to el-ph with tetrahedra (Mitsuaki Kawamura) (r13806).
* EXX with k-points and pool parallelization was occasionally crashing
due to questionable custom FFT grid initialization (r13728+r13835)
* ESM energy and forces for 'bc2' case and nonzero esm_efield were not
correct (r13727). Also: problem with restart in NEB with ESM fixed
* __USE_3D_FFT was broken since v.6.0 (r13700, r13706)
* Some constants in the definition of PBE functionals were truncated to
6 significant digits. While not a bug, this could lead to tiny differences
with respect to previous results and other XC implementations (r13592)
* Examples for magnetic anisotropy with force theorem were not properly
updated (r13534)
* Orthogonalization of Hubbard manifold in LDA+U with non-default values
of U_projection_type was not properly done in v.6.0 and 6.1 (r13529)
Thanks to Andrea Ferretti and Mike Atambo for fixing this.
* Bug in parallel FFT when task groups are used and the number of XY planes
is not a multiple of the number of MPI tasks and of task groups (r13489)
* Born effective charges with "Zeu" method were not correctly computed
when both GGA and core corrections were present (r13474 and r13481).
Thanks to Vineet Kumar Pandey for reporting the problem.
* reset_grid wasn't resetting grid properly if k1,k2,k3=0. Thanks to
Giuliana Barbarino (r13462)
* EXX in non-collinear/spin-orbit case wasn't correct (r13453)
* Fixed a small bug in two subroutines only called by Environ (r13451)
* Out-of-bounds error in hybrid functionals with LSDA, Gamma tricks and
2 pools (r13448)
* EPW: in v.6.1 there was a mismatch between symmetry operations in PW
and in EPW. It affected results of v.6.1 only in the presence of
fractional translations incommensurate with the FFT grid. (r13443)
* FFTXlib: the case in which the smooth and dense grids have the same FFT
dimensions along x and y but different along z was incorrectly treated,
leading to strange error messages. (r13439 and r13445)
* There was a small inconsistency in the vdW-DF kernel generating routine
"generate_vdW_kernel_table.f90", not affecting in any significant way
the results. It is anyway recommended to re-generate the kernel file.
Thanks to C.Y. Ren for noticing this. (r13438)
Incompatible changes in 6.2 version:
* MAJOR restructuring of the distribution:
- diagonalizers moved to KS_Solvers/
- general utility modules moved to UtilXlib/
* MAJOR restructuring of parallel FFTs, affecting ordering of real-space
arrays
* Restructuring of C routines, introduction of ISO_C_BINDING:
- memstat moved to module wrappers
- f_wall and f_tcpu, in module mytime, replace previous fortran wrappers
for cclock and scnds, respectively. The latter remain as C functions.
- fft_defs.h and related configure and makedep stuff deleted
* module pwcom no longer contains modules gvect, gvecs, references to
some variables in modules constants, cell_base
* The new XML format with schema is now the default. Use configure option
"--disable-xml", or add -D__OLDXML to MANUAL_FLAGS in make.inc, to revert
to the old xml format. IMPORTANT NOTICE: the new format is incompatibile
both with the "old" format and with the previous "new" one: files may be
in different locations with different names and contain different data.
IMPORTANT NOTICE 2: the "collected" format is now the default
IMPORTANT NOTICE 3: the new format uses FoX instead of iotk
* Hybrid functionals: ACE is now the default for scf calculations (it wasn't
in 6.1 contrary to what previously stated in this file); it is disabled
for TD-DFPT. See variable "use_ace".
New in 6.1 version:
* Hybrid functionals: Band parallelization over pair of bands, contributed
by Taylor Barnes et al, https://doi.org/10.1016/j.cpc.2017.01.008
* Hybrid functionals with PAW now work
* Optimized tetrahedron method, contributed by Mitsuaki Kawamura, U. Tokyo
* PostProcessing: pp.x can now plot many bands in a single run.
Contributed by Leopold Talirz, U. York
Incompatible changes in 6.1 version:
* Routine h_psiq deleted, replaced by h_psi
* Many variables related to tetrahedron method moved around
* Functions set_sym and find_sym no longer require FFT grid dimensions as
input arguments, no longer force consistency of symmetries with FFT grids
Fixed in 6.1 version
* TDDFPT: the keyword ltammd was missing in the namelist lr_dav
* PW: real instead of complex constants in two ZGEMM calls could lead
to NaN's in DFT_U forces with some compilers (e.g. PGI) (r13289)
* pwi2xsf utility, also used in XCrysDen: various fixes (r13197)
* PP: incorrect results in "projwfc.x" with PAW projection due to a missing
line (r13121); crash in pw_export.x" due to dumb error (r13189);
incorrect Fermi energy used in calculation of magnetic anisotropy
with force theorem (r13335)
* PW: final scf step in variable-cell calculation could crash
due to missing reset of FFT dimensions (r13116)
* FD: dangerous "q==0" check in matdyn.f90 (r13109)
* Misc errors in new schema-based xml I/O (r13110, r13113)
* CPV: stress and potential in nonlocal vdw-DF case were not correctly
computed (r13102, r13143)
* PWGui: double-hyphen glitch with old tcllib for NEB (r13101)
* GWW wasn't working at all (r13099, r13100, r13106)
* PW with hybrid functionals:
- LSDA with Gamma tricks and 2 pools did not work (r13158)
- ACE energy slightly off, leading to crash, for metals (r13095)
and for USPP (r13111)
- small error in gamma-only USPP hybrid calculations using G space
could lead to crashes (r13142)
* Some Wyckoff site labels were incorrect (r13083, r13124)
Also: symmetry analysis improved (r13094)
New in 6.0 version:
* Socket interface with i-PI universal force engine (ipi-code.org)
* New I/O: XML data file according to the XML Schema, initial implementation
of HDF5 binary files (experimental, activate with -D__XSD and -D__HDF5)
* Non-collinear magnetism implemented in epsilon.x, code restructuring
(Tae-Yun Kim, Andrea Ferretti, Cheol-Hwan Park)
* Lin Lin's ACE (Adaptively Compressed Exchange) for hybrid functionals
(experimental, activate with -D__EXX_ACE) (Ivan Carnimeo)
* Improved real-space treatment of Q and beta functions with Fourier
filtering (Stefano de Gironcoli)
* Support for new, improved Goedecker-Hutter-Teter pseudopotentials
generated by Santana Saha (Sebastiano Caravati)
* EPW: Automatic documentation using Ford
* EPW: Restart after epmatwp1 is written with arbitrary number of cores
* EPW: Electron and Phonon bandstructure can now be computed using band_plot
with etf_mem true or false.
* EPW: The test-farm now checks 5 representative examples and the associated
accuracy
* Netlib LAPACK updated, easy to update going forward
* Added support to modern ELPA (2016.05 and 2015.11)
* Added emacs modes for editing QE input, in GUI/QE-modes (Tone Kokalj)
Fixed in 6.0 version:
* TDDFPT, PWCOND, GWW: redirection to /dev/null broke Windows executable
(commit 12357)
* PDOS in the non-collinear case was broken by recent changes in indexing
(courtesy Mitsuaki Kawamura) (commit (12366)
* Incorrect format (old version) of the dynamical matrix if ibrav=0 in PHCG
(commit 12367,12369) and incorrect format if more than 99 atoms
(commit 12393) (courtesy Shaofeng Wang)
* disk_io='high' crashing in MD runs (courtesy David Strubbe)
(commit 12388)
* Fix for NEB+hybrid functionals (courtesy Davide Colleoni)
(commit 12391)
* Incorrect Wyckoff site labels for group #138, origin_choice=2
(courtesy Marton Voros) (commit 12426)
* PHonon: support for Goedecker-Hutter-Teter pseudopotentials was missing
(courtesy of Sebastiano Caravati)
* turboTDDFPT: Problem if empty states were also computed.
* NEB did not recognize its own input if white spaces were present at the
right of NEB cards (commit 12816)
* startingwfc='file' with wavefunctions in collected format could yield a
bogus "unit not open" error (commit 12913)
* PW and CP: possible out-of-bound error in TS-vdW due to incorrect
allocation of array UtsvdW (commit 12917)
* EPW: Correct Wannier localization with spinors
* EPW: Correct Wannier localization with spinors
* EPW: Electronic velocities in the local approximation now works correctly
with skipped bands and spin-orbit coupling
Incompatible changes in 6.0 version:
* Support for AIX removed
* The hamiltonian h_psi no longer needs "npw" and "igk" to be initialized
via module "wvfct", but it needs "current_k" to be set to the index of
the current k-point
* k-point dependent variables npw, igk, and (in LR codes) npwq, igkq,
become local and point to global variables "ngk" and "igk_k", via the
k-point index "ik" or, in LR codes, via "ikks" and "ikkq" indices.
The global variables are computed once, stored in memory, no I/O is done.
Variable "iunigk" deleted (contained unit for I/O of indices).
* "nbnd_occ" variable is now dynamically allocated
* Duplicated and confusing "outdir" variable removed from "io_files"
* Due to frequent problems with mailers, "make.sys" is renamed "make.inc"
* "allocate_fft" no longer calls "data_structure" to compute dimensions
of the various grids: it just allocates FFT arrays
* QE-GPU plugin not compatible with 6.x (new version is WIP)
* Configure options "--with-internal-lapack" & "--with-internal-blas" have
been replaced by a single "--with-netlib". Netlib LAPACK is self-compiled
(and also Netlib BLAS which is packaged with it).
* * * * *
New in 5.4 version:
* Calculation of the Magnetic anisotropy energy is implemented (in the limit
of small spin-orbit coupling) using the Force theorem (A. Smogunov)
* Support for FFT with ARM Performance Library (-D__ARM_LIB) added (F. Spiga)
* Non-blocking FFT communications (-D__NON_BLOCKING_SCATTER) (C. Cavazzoni)
* Bethe-Salpeter equation added to GWL (P. Umari)
* Support for QM-MM using MPI (C. Cavazzoni and M. Ippolito)
* Phonons with vdw-DF (S. de Gironcoli and R. Sabatini) and with DFT-D2
(P. Giannozzi and F. Masullo)
* Addition of EPW to compute electron-phonon properties using Wannier
interpolations (S. Poncé, E. R. Margine, C. Verdi, and F. Giustino).
Fixed in 5.4 version:
* New configure wasn't working properly for some Macintosh due to a
missing line (commit 11976) and on BG (commit 12333)
* Possible conflict between FFTW in MKL and in Modules/fftw.c solved
(commit 11980)
* Incorrect printout from bands.x for nspin=2 (commit 12064)
* parallel make broken by missing dependency (commit 12076)
* generate_vdW_kernel was crashing in parallel on more than 210 processors
(210 = default number of different q_i and q_j pairs) (commit 12077)
* Incorrect normalization in epsilon.f90 for nspin=2, some inaccuracy
for 'mv' and 'mp' smearing (courtesy of Tae Yun Kim and Cheol-Hwan Park,
Seoul National University) (commit 12082)
* Incorrect sum over pools in epsilon.f90 for nspin=2 (courtesy of Mariella
Ippolito, CINECA) (commit 12218)
* Hybrid functionals with USPP and k-point parallelization now work
(commit 12242)
* Raman with no symmetry wasn't working properly due to bad logic of
routines symmatrix3 and symtensor3 (courtesy of Marc Blanchard and
Michele Lazzeri, IMPMC) (commit 12334)
Incompatible changes in 5.4 version:
* Directories PW/tests/ and CPV/tests/ deleted, superseded by "testcode"
tests in test-suite/
* k+G indices "igk" no longer written to and read from file (PW only,
will be extended to all codes)
* Matrix inversion routines merged into "invmat" in module matrix_inversion
* Module "gvecw", in Modules/gvecw.f90, includes previous CP module "gvecw"
and several PW variables taken out from module "wvfct":
qcutz, ecfixed, q2sigm, ecutwfc
New variable gcutw=ecutwfc/tpiba2 used also in PW every time "gk_sort"
is called - gcutw is initialized at startup or when data files are read
* Common modules for linear-response codes moved to new directory LR_Modules/
* Routines for subspace diagonalization moved to LAXlib/
* flib/ directory deleted, routines in flib/ moved to Modules/
* * * * *
New in 5.3.0 version:
* projwfc.x: PDOS with PAW projectors and all-electron basis functions
* X3LYP hybrid functional (using VWN_1_RPA)
* B3LYP hybrid functional (using VWN) and B3LYP-V1R (using VWN_1_RPA)
* New modular configure
Fixed in 5.3.0 version:
* projwfc.x: When pw.x was run on a different number of processors and
twfcollect was not true, projwfc.x was silently giving wrong results.
Thanks to Hande Toffoli for reporting.
* Usage of "~" in pseudo_dir is sometimes acceptable by fortran but not
by C. If so, a message is printed instead of weird characters in MD5.
* PHonon: Gamma-specific code segfaulting with GGA
* NaN's in stress with nonlocal functionals when the physical dimensions of
FFT arrays is larger than the true ones and arrays are padded with zeros
* pw.x: "task-group" parallelization wasn't working properly when the number
of bands was smaller than the number of task groups. Affects v.5.2.1.
* TDDFPT: lrpa (Random Phase Approximation) keyword was not present in
the namelist for turbo_lanczos.x code. The turboEELS code was not
working correctly with just one k point; for metals there were wrong
weights leading to small errors near the Fermi level; the code was not
working correctly with ultrasoft PP's.
* pw.x: stress with TS-vdw wasn't correct - courtesy of Thomas Markovich
* The local correlation energy of B3LYP hybrid functional wasn't the "true"
one for B3LYP. This caused discrepancies up to of a few tenths of eV
in Kohn-Sham energies with respect to the "true" B3LYP. VWN is used
to define the LDA correlation. B3LYP-V1R (B3LYP using VWN_1_RPA instead)
has also been added.
* Constrained dynamics in pw.x wasn't completely correct
Incompatible changes in 5.3.0 version:
* Standard F2003 calls to: get_environment_variable, get_command_argument,
command_argument_count, flush, are used everywhere instead of wrappers.
Some old compilers may no longer work and must be considered unsupported.
* Old Fermi Surface plotting tools kvecs_FS.f, bands_FS.f90, in PW/tools/,
replaced by new code PP/src/fermisurface.f90
* Reshuffling of FFT-related modules:
"gather_*" and "scatter_*" routines moved from module fft_base
to module scatter_mod
* All FFT-related code moved to FFTxlib/
* Linear algebra parallelization made independent of its parent communicator
by introducing variable ortho_parent_comm, addressing the whole group.
In PW ortho_comm is now a sub-communicator of intra_pool_comm and nolonger
of intra_bgrp_comm.
* * * * *
New in 5.2.1 version:
* svdW-DF, a proper spin version of vdW-DF (PRL 115, 136402 (2015);
courtesy of Timo Thonhauser)
* XSpectra: various improvements, extension to L_23 edges
* ESM: various improvements, constant-bias (PRL 109, 266101 (2012))
calculations for both pw.x and neb.x (courtesy of Minoru Otani)
Incompatible changes in 5.2.1 version:
* "pot" parallelization level, no longer used, removed
* Obsolete calls to SCSL and SUNPERF library FFTs removed
Fixed in 5.2.1 version:
* PW: incorrect calculation of maximum number of plane waves could lead
to error exit with hybrid functionals and ultrasoft pseudopotentials
* PW: cell_dofree = '2Dshape' wasn't working as expected
* PW: a few do loops included more FFT planes than physical ones in real
space, leading to inaccuracies in real-space augmentation charge and xdm,
only if the number of processors nproc_bgrp was not a divisor of nr3
* XSpectra: v.5.1.2 and 5.2.0 contained a bug in parallelization that could
lead to incorrect results
* TDDFPT: mismatch between actual and expected format of save file
* Various fixes for compilation on NAG compiler
* * * * *
Incompatible changes in 5.2.0 version:
* various "gather" and "scatter" routines removes and replaced by two
interface routines gather_grid, scatter_grid, valid for all FFT grids
and for both real and complex arrays; realspace_grid_init_custom and
realspace_grids_init merged into realspace_grid_init, for each grid
* __STD_F95 preprocessing option removed: all compilers that do not allow
allocatable arrays in derived types are no longer supported
New in 5.2.0 version:
* Goedecker-Hutter-Teter pseudopotentials directy supported in analytical
form (courtesy of Sebastiano Caravati)
* PW: Hybrid functionals with reduced cutoff for Vx\psi should now work
also with k-points and for stress calculation
* PW: real-space treatment of augmentation charges in USPP and PAW can
be used in (fixed-cell) structural relaxation as well
* PW: speedup of USPP with full G-space treatment of augmentation charges
* PW: Hybrid functionals for USPP now working
* PW: Improved ESM, works also for NEB and with postprocessing codes;
constant-bias potential (constant-mu) calculations (PRL109, 266101, 2012)
implemented (courtesy of Minoru Otani)
* TDDFPT contains now the turboEELS code for the calculation of the
Electron Energy Loss and Inelastic X-ray Scattering Spectra
Fixed in 5.2.0 version:
* PP: projwfc.x wasn't working any longer for non-collinear case without
spin-orbit in 5.1.x versions
* PW: ordering of beta functions incorrect in USPP + hybrid functionals.
* PW: floating-point error could occur in rVV10 functional
* * * * *
New in 5.1.2 version:
* PW: Hybrid functionals for USPP and PAW still have problems, disabled
* code "molecularpdos.x" computing PDOS on selected molecular orbitals
separately computed (courtesy of Guido Fratesi)
* TDDFPT: a few more options, improved documentation, compatibility
with "Environ" plugin
* Added spin-polarized b86r exchange (courtesy of Ikutaro Hamada)
Incompatible changes in 5.1.2 version:
* XSpectra: variable ef_r, used to eliminate the occupied states
from the spectrum, replaced by new variable xe0
* PHonon: input variable iverbosity => verbosity
* The (undocumented) *.evp file of CP uses a slightly different format
(equally undocumented) since v.5.1.1. In order to use original format,
compile with __OLD_FORMAT preprocessing variable on.
Fixed in 5.1.2 version:
* Option wf_collect wasn't working with LSDA and one k-point per pool
* Restarting from interrupted calculations could be spoiled by options
"startingwfc" and "startingpot": warning added
* Bug in space-group generator in the monoclinic case.
* atomic: a small bug was preventing the generation of non-PAW
pseudopotentials with GIPAW reconstruction data
* Changes made in rev.10251 had broken pw.x -pw2casino when just
one k-point per processor was present. Also: pp converter from upf
to casino produced invalid pp for Z>=10 due to insufficient format
* Symmetry printout could lead to error exit in same cases
* Restarting from incomplete calculation could lead in some cases
to mysterious crashes due to usage of unitialized communicator
* PH: option only_init + US or PAW was not working.
* Minor printout bug: the printed number of symmetries with fractional
translations was sometimes incorrect in the non-collinear magnetic case.
* * * * *
Incompatible changes in 5.1.1 version:
* Regularization of DFT names for nonlocal functionals:
"vdw-df3" replaced by "vdw-df-obk8"
"vdw-df4" and "optb86b-vdw" replaced by "vdw-df-ob86"
"rev-vdw-df2" replaced by "vdw-df2-b86r"
Explanation: We have tried to unify the naming convention of the vdW-DF
family of functionals built on "Dion et al., PRL 92, 246401 (2004)."
Within this family, numbering should be used for different non-local
pieces of the functionals, such as vdW-DF2. If functionals only change the
(semi)local contribution, the choice of (semi)local functional should be
attached at the end of the name, such as vdW-DF-C09 or vdW-DF-cx.
New in 5.1.1 version:
* CP: Hybrid functionals with Wannier functions
* Added possibility to provide structure via space-group number and
Wyckoff positions (experimental)
* Added vdW-DF-cx, Berland and Hyldgaard, PRB 89, 035412 (2014)
(courtesy of Timo Thonhauser)
* PW: TB09 meta-GGA functional (requires libxc)
* PW: the code can capture "signals". typically sent by batch queues
when allowed time is close to expire, and terminate gracefully.
Experimental, to be enabled at compile time (see the user guide)
* TDDFPT: Implemented a restart option in turbo_Davidson
Fixed in 5.1.1 version:
* PWscf: variable-cell glitches at last scf step
* PWscf & PHonon: added several checks for unimplemented features
* PWscf: energy related to external forces wasn't correct
* CP: Wannier functions dynamics with nspin=2 wasn't working
* PWscf: restart in variable-cell case wasn't working in v.5.1
* pot_extrapolation='none' was crashing with a bogus error message
* PHonon: the recently introduced fix to the G=0 component of the
deformation potential at q=0 was not working properly
* Kernel table for rVV10 nonlocal functional was not written to file,
breaking restart and postprocessing (no problem for scf)
* Strange compilation bug on some IBM machines
* Minor bug plus OpenMP bug in ESM implementation
* Small bug leading to crashes when restarting some type of constrained
magnetization calculations (courtesy of Florian Thoele, ETHZ)
* * * * *
New in 5.1 version:
* "Cold restart" for Car-Parrinello dynamics
* Calling QE from external codes made easier: see new subdirectory COUPLE
* PW: Hybrid functionals for USPP and PAW (experimental)
* PW: partial support to the use of k-point labels in the Brillouin zone
* PW: Langevin dynamics with Smart Monte Carlo
* CP and PW: Tkatchenko-Scheffler vdW correction (experimental)
* GWW replaced by GWL (using Lanczos chains)
* turboTDDFT: pseudo_Hermitian Lanczos algorithm and
Davidson-like diagonalization added
* PWCOND with DFT+U
* New functionals: gau-pbe, PW86 (unrevised), B86B, XDM (exchange-hole
dipole moment) model of dispersions, vdW-DF-obk8, vdW-DF-ob86 (Klimes
et al), rVV10, vdW-DF2-b86r
* PHonon: Calculation of phonon dispersions using the finite displacements
supercell approach. See subdirectory FD/ in PHonon.
* dynmat.x can calculate phonon contribution to dielectric tensor
* turboTDDFT now supports hybrid functionals (only with norm-conserving
pseudopotentials)
* "image" parallelization re-introduced in pw.x: see code "manypw.x"
Incompatible changes in 5.1 version:
* Initialization of MPI modified in order to simplify usage of QE routines
from external codes. It is now possible to run an instance of QE into a
mpi communicator passed by the external routine. Changes affect a few MPI
initialization routines (e.g. mp_start) and some MPI related modules;
the communicator must be explicitly specified when calling mp_* interfaces
to low-level MPI libraries.
* Input variable "london" should be replaced by " vdw_corr='Grimme-D2' "
* Routine "electrons" doesn't deal any longer with non-scf cases;
use routine "non_scf" instead. For hybrid functionals, the loops over
the charge density and over the exchange potential have been separated.
* Restart mechanism of pw.x changed a lot. It works ONLY if you stop
the code cleanly with the prefix.EXIT file, or by setting "max_seconds";
disk_io='high' no longer needed (use it ONLY if tight with memory)
Restarting from hard crashes is no longer supported.
* Major restructuring of DFT+U and related modules in PW: related variables
moved to module ldaU, "swfcatom" moved to module "basis"
* Definition of "nwordwfc" in PP/ follows the same logic as in PW/
* Calls to "find_equiv_sites" and "writemodes" changed (fixed dimension
"nax" removed)
* Call to "open_buffer" changed: unit must be a valid fortran unit > 0;
max number of records is no longer specified; a new flag explicitly
specifies if writing to RAM buffer is required. Functionalities of
Modules/buffers.f90 have been considerably modified and extended.
Fixed in 5.1 version:
* PWscf: bug in finite electric field in non-collinear case
* PHonon: G=0 component of the deformation potential at q=0 was incorrect
(the contribution from the average coulomb potential, i.e. the integral
of the Coulomb contribution on the unit cell, was missing). For more
details, see M. Calandra et al. Phys. Rev. B 82 165111 , section III B.
* PWscf: spin-polarized HSE for PAW was incorrectly implemented
* PHonon: Gamma-specific code wasn't properly restarting in parallel
* PHonon: epsil + paw was not working with k-point parallelization.
* PHonon: problem with the symmetry analysis in D_6h. The problem appeared
in special cases after the symmetry reshuffling made by the phonon code.
* PWscf: starting with uniform charge worked only for non-spin-polarized
calculations. Not a big deal unless one used HGH or other pseudopotentials
without atomic charge information
* PWscf: Forces with finite electric field (lelfield=.true.) and US PP
were incorrect in parallel execution
* D3: bug when the crystal has symmetry but the small group of the
q-point has no symmetry.
* Bogus "file not found" error in pp.x when extracting quantities not
requiring wave functions if these were "collected" - v.5.0.2 only
* Some quantities calculated in real space (including the charge itself
when tqr=.true.) were not always accurately computed in parallel
execution if the number of planes wasn't the same for all processors
* Bogus symmetry error in NEB due to missing re-initialization
of fractional translations
* * * * *
Fixed in 5.0.3 version:
* PW, PP, PHonon: files for DFT+U produced by previous versions
could no longer be read
* PHonon: restart with convt=.true. was not working with PAW
* PHonon: in matdyn.x, displacement patterns were no longer correct
if eigenvectors of the dynamical matrix were also written to file
* PHonon: compatibility with files produced by previous releases
was broken if pools were used
* VERY NASTY PHonon bug: symmetry Sq=-q+G introduced in v.5.0.2
could lead to bad phonons in some cases and has been disabled
* PHonon: effective charges eu + PAW were not accurate with pools;
effective charges eu + US PP + spin-orbit nonmagnetic were not
working in parallel.
* Bug fix for NC pseudos with GIPAW info, for upf version 2 only:
Pseudo local potential was incorrectly written and read.
* divide_class: wrong check for T_h
* PP: incorrect check yielding bogus error in bands.f90 (v.5.0.2 only)
* CP wasn't working properly with USPP having distinct Q functions
for each value of l, due to the never ending l/l+1 problem
* * * * *
New in 5.0.2 version:
* DFT+U with on-site occupations from pseudopotential projectors;
DFT+U+J (both experimental)
* Calculation of orbital magnetization (experimental)
Fixed in 5.0.2 version:
* the random-number generator wasn't checking for incorrect seeding;
under some unlikely circumstances this might lead to strange errors
* k-point parallelization in v.5.0 and 5.0.1 was affected by a subtle
problem: the distribution of plane waves was not always the same on
all pools of processors. While results were still correct, strange
problems (e.g. lockups) could result. Also: there are more and more
machines that are not able to produce the same results starting from
the same data on different processors. Charge-density mixing is now
performed on one pool, broadcast to all others, to prevent trouble.
* upftools: fhi2upf converter of v.5 introduced a small error in some cases
* Small error in the calculation of rPW86 functional, due to a mismatch
between its previous definition (Slater exchange contained in GGA) and
the check on the rho=>0, grad rho=>0 limits. Note that a similar problem
might also affect hcth, olyp, m06l functionals.
The new PBEQ2D functional (introduced in 5.0.1) was also not correct.
* NEB calculation can get stuck if the code tries to read &ions namelist
in the PWscf-related input section
* NEB: spurious blank character appearing in lines longer than 80 characters
with Intel compiler (same problem that was previously fixed in PWscf)
* PH: bug in symmetrization in some special cases (supercells of graphene)
* PH: bug in restart when the code stops during self consistency
* PH: ph.x with images wasn't working any longer
* PH: electron_phonon='simple' wasn't working together with ldisp=.true.
* PH: images with a single q point were not collecting properly the files.
* PH: grid splitting of irrep + single q point + wf_collect=.true.
was not working
* * * * *
New in 5.0.1 version:
* vdW-DF functional and DFT-D extended to CP (experimental)
* PWscf: Non-Collinear/spin-orbit Berry Phases (experimental)
* New functionals: SOGGA, M06L (courtesy of Yves Ferro),
PBEQ2D (courtesy of Letizia Chiodo)
Incompatible changes in 5.0.1 version:
* Variable "amconv" removed from constants.f90, use "amu_ry" instead
* ld1.x no longer generates pseudopotentials into UPF v.1
Fixed in 5.0.1 version:
* Funny frequencies from matdyn.x if masses were read from file
* Stress calculation in parallel execution was wrong in the
Gamma-only case when ScaLAPACK was present (v.5.0 only)
* Misc compilation problems with old compilers
* * * * *
New in 5.0 version:
* More ways of calculating electron-phonon coefficients.
* Full DFT+U scheme (with J and additional parameters) implemented.
Should work also for fully-relativistic calculations.
* band parallelization for Green function sum in EXX (memory replication).
Incompatible changes in 5.0 version:
* Postprocessing codes dos.x, bands.x, projwfc.x, now use
namelist &dos, &bands, &projwfc respectively, instead of &inputpp
* Directory reorganization: whole packages into subdirectories,
almost nothing is in the same directory where it used to be.
* atomic masses in the code are in amu unless otherwise stated
* Options 'cubic'/'hexagonal' to CELL_PARAMETERS removed: it is no
longer useful, the code will anyway find the correct sym.ops.
* Options 'bohr'/'angstrom'/'alat' to CELL_PARAMETERS implemented
* -DEXX no longer required for exact exchange or hybrid functionals
* PHonon: input variable 'elph' replaced by 'electron_phonon'
Fixed in 5.0 version:
* Missing checks for unimplemented cases with electric fields
* CP with electric fields wasn't working any longer in parallel
due to an unallocated variable
* VERY NASTY bug: exchange-correlation keyword 'PW91' was incorrectly
interpreted (PZ LDA instead of PW) in all 4.3.x versions
* A few glitches when the standard input is copied to file
* PW: LDA+U crash in the final step of a vc-relax run, due to a
premature deallocation of a variable
* PW: constraint 'atomic direction' on non-collinear magnetization
wasn't working properly
* PW: tetrahedra were not working with magnetic symmetries,
and not yet working in the non-collinear case as well.
* Velocity rescaling in variable-cell MD wasn't really working
* Workaround for frequent crashes in PAW with vc-relax
* In some cases spin-polarized HSE was yielding NaN's
* Two instances of an array not always allocated passed as variable to
routine (init_start_k and dynmatrix.f90) - harmless but not nice
* disk_io='low' or 'none' wasn't working if a wavefunction file from a
previous run was found
* CP + OpenMP without MPI wasn't working with ultrasoft pseudopotentials
* Bug in CASINO to UPF converter
* Bug in k-point generation in the non-collinear case
* ESM with spin polarization fixed
* Weird problem with irreps in PHonon
* Bug in turbo_lanczos.x . Restarts of polarizations other than ipol=1
or ipol=4 were not working properly due to buggy test_restart routine.
* * * * *
New in 4.3.2 version:
* A few crystal lattices can be specified using the traditional
crystallography parameter (labelled with negative ibrav values)
* A few extensions to PP format converters, conversion to UPF v.2
* C09 GGA Exchange functional, courtesy of Ikutaro Hamada
Fixed in 4.3.2 version:
* Bugfix for pw2casino: total energies should now agree with pwscf total
energies for any number of nodes/k-points, also for hybrid functionals.
Note: bwfn files produced before and after this patch will differ!
* Funny results in the last step of variable-cell optimization,
due to bad symmetrization in presence of fractional translations
* OpenMP crash with PAW
* Removed lines in iotk that confused some preprocessors
* More glitches with new xc functionals, compatibility with
previous cases: HF, OEP, PZ
* Variable-cell optimization at fixed volume broke hexagonal symmetry
* NEB: possible problem in parallel execution (if command-line arguments
are not available to all processors) avoided by broadcasting arguments
* PWGui documentation updated to reflect cvs to svn switch
* Some formats increased to fit printout of large cells
* PW: the cell volume omega must be positive definite even when the
lattice vectors form a left-handed set
* PW: a bad initialization (of becsum) in the paw spin/orbit case
made the convergence more difficult
* PW: couldn't read any longer data files written by previous versions
* PHonon: problem with the D_4h group when the matrices of the group
are not in the same order as in the routine cubicsym
* Yet another LDA+CPU+U fix: forces were wrong in spin-polarized case
* PW was not stopping anymore when two inconsistent dft were given
* atomic: default for non-local correlation is set to " " AND upf%dft
is trimmed before being written by write_upf_v2.f90. Therefore older
versions of pw will still work if no vdW is present
* inlc label for vdw-df is set as VDW1, consistently with the comment and
needed to avoid matching conflict with VDW2
* * * * *
New in 4.3.1 version:
* New, improved version of GIPAW (available as a separate package)
* Effective Screening Medium (Otani and Sugino PRB 73 115407 (2006).
* CP: faster implementation of LDA+U
Fixed in 4.3.1 version:
* atomic: behavior of which_augfun='PSQ' made consistent with documentation
* CP: LDA+U buggy; PLUMED wasn't working
* Misc compilation and configure problems: line exceeding 132 characters,
syntax not accepted by some compilers, pathscale+mpif90 not recognized,
etc.
* PW: nasty out-of-bound bug leading to mysterious crashes or
incorrect results in some variable-cell calculations. Also in
variable-cell: last scf step could crash due to insufficient
FFT grid if the final cell was larger than the initial one
* PW: minor bug in damped dynamics (hessian matrix incorrectly reset)
* PW: bug in LDA+U forces for the Gamma-only case
* Electron-Phonon code wasn't working any longer in serial execution
* PH with input variable "fildrho" and D3 were not working due to
inconsistencies in the calls to io_pattern
* PWCOND: fixed bug when the write/read option is used for the case
of different leads.
* NEB + nonlocal exchange (DF-vdW) or hybrid functionals wasn't working
* NEB: incorrect parsing of intermediate images fixed
* HSE numerical problems in function expint
* XSPECTRA wasn't working any longer due to missing updates to
read_file_xspectra.f90
* epsilon.f90: the term 1 must be added to diagonal components only!
* * * * *
New in 4.3 version:
* CP only, experimental: parallelization over Kohn-Sham states
* Dispersion interactions (van der Waals) with nonlocal functional
* Additions to projwfc: k-resolved DOS, LDOS integrated in selected
real-space regions
* Constant-volume variable-cell optimization
* Non-colinear and spin-orbit PAW
* Penalty functional technique in DFT+U calculations (CP only)
Incompatible changes in 4.3 version:
* pw.x no longer performs NEB calculations. NEB is now computed
by a separate code, NEB/neb.x . NEB-specific variables are no longer
read by pw.x; they are read by neb.x after all pw.x variables
* NEB for cp.x no longer available
* iq1,iq2,iq3 removed from input in ph.x; use start_q, last_q instead
* Several global variables having the same meaning and different names
in CP and in all the other codes (PW) have been given a common name.
Calls to fft also harmonized to the CP interface fwfft/invfft:
Old (CP) New (PW) Old (PW) New (CP)
nnr/nnrx nrxx nrx[123] nr[123]x
nnrs/nnrsx nrxxs nrx[123]s nr[123]sx
ngml ngl ig[123] mill (replaces mill_l)
ngmt ngm_g
ngs ngms cft3/cft3s fwfft/invfft
ngst ngms_g
g gg
gx g
gcuts gcutms
ecutp ecutrho
ecutw ecutwfc
gzero/ng0 gstart
np, nm nl, nlm
nps, nms nls, nlsm
Fixed in 4.3 version:
* CP: Input external pressure is in KBar and not in GPa like it was
formerly in CP. Input value for variable "press" in cell namelist
should be given in KBar as stated in the documentation!
* CP: incorrect stress calculated in the spin-polarized case
* CP: memory leak in LDA+U calculations
* CPPP: spurious line in all versions since 4.2 was causing an error
* PW: LSDA + Gamma tricks + task groups = not working.
Also: pw.x -ntg 1 was activating task groups (harmless)
* PW: corrected an old bug for Berry's phase finite electric field
calculations with non-orthorhombic simulation cells. Also fixed
an old but minor bug on averaging of Berry phases between strings
* PW: problem with symmetrization in the non-collinear case
* PW: tetrahedra+non-collinear case fixed (courtesy of Yurii Timrov)
* option -D__USE_3D_FFT wasn't working any longer in v.4.2.x
* PP: calculation of ILDOS with USPP wasn't working in v.4.2.x
* PH: elph=.true. and trans=.false. was not working any longer.
* PH: electron-phonon data file for q2r.x was not properly written in
some cases (-q not in the star of q). Also: questionable syntax
for formats in lambda.f90 was not accepted by gfortran
* D3: k-point parallelization fixed again
* * * * *
Fixed in version 4.2.1:
* CP: problem in electronic forces with OpenMP parallelization
* real-space Q functions (tqr=.true.) not working in non-collinear case
* XC potential in CP was not initialized when condition (rho > 10^(-30))
was not satisfied; this is usually harmless but potentially dangerous
* CP could not read data written from PW in spin-polarized cases
* In at least some cases, cpmd2upf.x was yielding incorrect PPs
* support for MKL incomplete (only in packaged version, not in cvs)
* glitch in pw2wannier if / missing at the end of outdir
* linking error when compiling qexml
* misc problems in plotband.f90
* the new G-space symmetrization was not working properly
for the magnetization in the non-collinear case
* CP: incorrect results in parallel execution if the card K_POINTS
was present in input and contained a point different from Gamma
* D3: Fermi energy shift was only symmetrized on the sub-set of the
symmetry operations that leave q unchanged.
* plot_io.f90: for large celldm(1), there was no space between ibrav
and celldm. Courtesy of E. Li.
* A problem in projwfc in the spin-orbit case introduced in version 4.1.3.
Courtesy of R. Mazzarello.
* * * * *
New in version 4.2:
* Removal of duplicated and unused routines
* Major reorganization of the distribution itself:
external packages no longer in the repository
* New package GWW for GW calculations with Wannier functions
* Grid parallelization for the phonon code, code cleanup
* Better OpenMP+MPI parallelization
* Real-space PP non-local projectors (experimental)
* Martyna-Tuckerman algorithm for isolated systems
* Better q=>0 limit for Exact-Exchange calculations
* HSE functional
* Bug fixes and output cleanup for cp.x autopilot
* Parallel symmetrization in G-space
Fixed in version 4.2:
* A few occurrences of uninitialized variables and of incorrect INTENT
* The value of DFT set in input (instead of DFT read from PP files) was
ignored by all codes using the data file (phonon, postprocessing, etc)
* PW: glitches in restart (now it works also with exact exchange)
* D3: real-space contribution to the Ewald term was incorrect, since the
initial release. Since such term is usually very small, the error was
also very small. Also: preconditioning was not properly implemented,
causing unnecessary slow convergence
Incompatible changes in version 4.2:
* changed defaults:
startingwfc='atomic+random' in pw.x (instead of 'atomic')
* calculations 'fpmd', 'fpmd-neb' removed from CP: use 'cp' or 'neb'
instead
* calculation 'metadyn' and related variables removed from PW and CP:
use the "plumed" plugin for QE to perform metadynamics calculations
* nelec, nelup, neldw, multiplicity variables removed from input:
use tot_charge and tot_magnetization instead
* calculation of empty Kohn-Sham states, and related variables, removed
from cp.x: use option disk_io='high' in cp.x to save the charge density,
read the charge density so produced with pw.x, specifying option
"calculation='nscf'" or "calculation='bands'"
* "xc_type" input variable in cp.x replaced by "input_dft" (as in pw.x)
* ortho_para variable removed from input (CP); diagonalization='cg-serial',
'david-serial', 'david-para', 'david-distpara', removed as well
Use command-line option "-ndiag N" or "-northo N" to select how
many processors to use for linar-algebra (orthonormalization or
subspace diagonalization) parallelization. Note that the default value
for ndiag/northo has changed as well: 1 if ScaLAPACK is not compiled,
Nproc/2 if Scalapack is compiled
* "stm_wfc_matching" removed from pp.x
* * * * *
Fixed in version 4.1.3:
* CP: electric enthalpy wasn't working properly with spin polarization
* PWCOND: Bug fix in automatic generation of 2D k-points
* bug in PAW negatively affected convergence (but not the results)
* possible out-of-bound errors in divide_class and divide_class_so
* non initialized variables in PAW charge density plotting
* * * * *
Fixed in version 4.1.2:
* fixed nonstandard C construct in memstat.c that picky compilers didn't like
* PBEsol keyword wasn't properly recognized
* call to invsym with overlapping input and output matrix could
result in bogus error message
* cp.x: update of dt with autopilot wasn't working
* for some magnetic point groups, having rotation+time reversal
symmetries, the k-point reduction was not correctly done
* wavefunctions for extrapolation written to wfcdir and not to outdir
* Some constraints were not working in solids, due to an incorrect
estimate of the maximum possible distance between two atoms
* Parallel execution of D3 wasn't working in at least some cases
(e.g. with k-point parallelization) since a long time
* restart of phonon code with PAW wasn't working
* * * * *
Fixed in version 4.1.1:
* newly added DFT-D wasn't working properly with k-point parallelization
* Gamma-only phonon code wasn't working any longer if pseudopotentials
with nonlinear core correction were used
* Check of lspinorb flag consistency between left/right lead and
scattering region in pwcond.x was not working properly; wrong
print-out of E-Ef when Nchannels=0 also fixed.
* Check on convergence of variable-cell damped dynamics was not
working as expected in the presence of constraints
* Velocity rescaling in CP was not working, and it was performed
also if not required when ion velocities were set to 'random'
* ESPRESSO_TMPDIR is caught by gipaw.x as well
* Phonon calculation could not be performed with only local PPs
* Small error in the definition of the saw-tooth potential for slab
calculations with E-field: the "physical" dimensions of the R-space
grid are nr1,nr2,nr3 NOT nrx1,nrx2,nrx3
* Misc compilation problem for: gfortran v.4.1 (casino2upf),
pathscale 3.2 (mp_base), xlf 12.1 (buggy compilation of iotk)
* Possible memory leak in PW/update_pot.f90
* Spin-polarized calculations in CP had a bug since v.4.1 when using
parallel distributed diagonalization ("ortho" group)
* FFT glitches: Nec SX routines were not properly called,
OpenMP was not compatible with all FFTs
* augmentation charges in real space (tqr=.true.) and k-point
parallelization (pools) was not working due to bogus check
* fhi2upf.x : fixed segmentation fault in some cases with ifort
* OLYP XC functional was incorrectly flagged as Meta-GGA
(courtesy of Latevi Max Lawson Daku)
* Minor corrections and extensions to the documentation
* * * * *
New in version 4.1:
* New exchange-correlation functionals:
PBEsol and WC (courtesy of Willam Parker, Ohio State U.)
LDA with finite-size corrections (Kwee, Zhang, Krakauer,
courtesy of Ester Sola and Dario Alfe)
* Dispersion calculation with DFT-D (Grimme)
* mixed openMP-MPI parallelization (very experimental)
Fixed in version 4.1:
* the sum of all nuclear forces is no longer forced to zero in
Car-Parrinello dynamics. Forcing them to zero was not completely
correct -- only the sum of nuclear plus "electronic" forces should
be exactly zero -- and was causing loss of ergodicity in some cases.
* symmetry analysis for spin-orbit case: a few signs in the character
tables of C_3 and S_6 have been changed so that they agree with the
Koster-Dimmock-Wheeler-Statz tables.
* a problem in the plotting routine plotband.f90 could yield wrong
band plots even when the symmetry classification was correct.
* serious bug in plotting code pp.x: all plots requiring Fourier space
interpolation, i.e.: 1d, 2d, user-supplied 3d grid, spherical average,
were yielding incorrect results if performed on data produced by pw.x
(and cp.x) using Gamma-only option. Workaround introduced, but it works
(around) only if the desired data is first saved to file, then plotted.
* stop_run was not properly deleting files in the case of path calculations
* Coulomb pseudopotentials in UPF v.2 format were not working
(courtesy of Andrea Ferretti)
* electron-phonon calculation on a uniform grid of q-points +
Delta Vscf and dynamical matrices read from file should be fine now:
the Delta Vscf saved to file are no longer overwritten at each q-point.
Also: the xml file written by pw.x is no longer overwritten by ph.x.
* nasty problem with C routines receiving fortran strings as arguments.
The way it was done may lead to stack corruption and all kinds of
unexpected and mysterious problems under some circumstances.
Now fortran strings are converted to integer arrays, that can be
safely passed to C, and converted back in Modules/wrappers.f90
* USPP generated with ld1.x may have been incorrectly written to
UPF format v.2 in all 4.0.x versions . The error may have been
small enough to go unnoticed but may be not negligible. All USPP
in UPF format tagged as version 2.0.0 should be regenerated.
* * * * *
Fixed in version 4.0.5:
* option calwf=1 (CP with Wannier functions) was not working
* more problems in symmetry analysis in special cases for C_4h and
D_2h symmetry
* various small memory leaks or double allocations in special cases
* problem with effective charges d Force / d E in the non-collinear+NLCC case
* calculation of ionic dipole, used for calculations with sawtooth
potential, used wrong reference point assuming the field parallel
to z axis (while it can be parallel to any reciprocal basis vector).
All relax calculation in non-orthorhombic cells, and all calculations
with option tefield and edir/=3, were completely wrong. Non-relax
calculation in the same cathegory were correct, apart from a constant,
but system-dependent, addictive factor in total energy.
* generation of supercells in matdyn was not working (since a long time)
* PWCOND: two more small bug fixed (in CVS since june)
* * * * *
Fixed in version 4.0.4:
* Structural optimization with external sawtooth potential was not
working correctly (electric field disappeared after first run).
All versions after october 2005 affected.
* problem in FFTW v.3 driver in parallel execution (Davide)
* option maxirr disabled
* memory leak in pw_readfile in parallel
* the phonon code was not working when wf_collect=.true. and
either ldisp=.true. or lnscf=.true.
* incorrect make.sys produced by configure on some IBM machines
* rigid.f90: the fix introduced in v. 4.0.1 to improve convergence
wasn't really correct
* * * * *
Fixed in version 4.0.3:
* CP: array qv allocated in newd wasn't deallocated in all cases,
leading to either a crash or a memory leak (Ralph)
* Task groups bug fix: array tg_rho was not cleared at every k point cycle.
This was causing problems with some combinations of "-npool" and "-ntg".
* PWCOND: a bug with some array bounds fixed (A. Smogunov)
* Problem with the generation of the atomic wavefunctions in the
projwfc code when a scalar relativistic PP is used with lspinorb=.true.
* Bug fix in symmetry analysis for the case S_6 (reported by Marino
Vetuschi Zuccolini) and also in: S_4, T_h, C_3h, C_4h, C_6h.
* * * * *
Fixed in version 4.0.2:
* Nuclear masses not correctly displayed for variable-cell calculations
* Probably all results for EFG (electric field gradients) were wrong,
due to an incorrect multiplication of "r" with "alat" inside a loop
(should have been outside: routine PW/ewald_dipole.f90)
* Calculation with fixed magnetization and nspin=2 (using 2 fermi
levels) was not working in v. 4.0.1
* non linear core correction was not detected in FPMD run
* effective charges + US PP + spin-orbit not correct in noncubic cases.
* symm_type was not properly set by pw_restart (used in various
post-processing including phonons) when using free lattice
(ibrav=0) and symm_type=hexagonal.
* CP: conjugate gradient had a bug in some cases of parallel
execution. Also: default max number of iterations was not
what was promised in the documentation (100)
* phonon: alpha_pv depended on the number of unoccupied bands
in insulators (harmless).
* fpmd was using wrong forces propagate cell variables in
variable-cell calculations. Also: interpolation tables
were a little bit too small for variable cell simulation
(not really a bug but it could be annoying)
* Minor glitch in configure for pathscale compiler. Note that
in the machine that has been tested, compilation of iotk
fails for mysterious reasons if CPP = pathcc -E, while it
works with CPP = /lib/cpp -P --traditional
* * * * *
Fixed in version 4.0.1:
* Some scripts used in tests/ and in examples were not
posix-compliant and could fail in some cases
* In cg calculations with cp, the case of no spin multiplicity
(i.e. nspin=1) with odd number of bands was yielding an error
"c second dimension too small"
* rigid.f90: sum over G-space in long-range term, used in q2r.x
and matdyn.x, wasn't really converged for sufficiently large cells
* too many automatic arrays in "set_asr" called in matdyn.f90,
causing a mysterious crash for systems larger than a few atoms
* incorrect call to "sgama" in matdyn.f90 could lead to failures
with strange messages when calculating phonon DOS
* c_mkdir is explicitly defined as integer*4 in order to prevent
problems in 64-bit machines with default 64-bit integers
* PP/chdens.f90: incorrect orthogonality test for axis
* GIPAW: 10^3 factor missing in conversion
* GIPAW: paw_recon[]%paw_betar[] was not initialised and caused NaN's
with IBM compilers. Courtesy of Christos Gougoussis (IMPMC, Paris).
* Minor glitches in PWGui
* cppp.x was not working in v.4.0
* Workaround for bluegene weirdness extended to complex hamiltonians
* PP/projwfc.f90: Problems with file names in systems > 1000 atoms
* Workaround for ATLAS bug causing random crashes
* Minor bug in helpdoc: adding syntaxFlush to linecard
* Incorrect dimensions in PW/local.f90 (courtesy of Zhiping)
* * * * *
Fixed in version 4.0:
* Unpredictable results when the output from a spin-polarized CP
calculation was used for post-processing. This was due to an
incorrect treatment of the case where the number of up and down
states are not the same. There was also an inconsistency in the
treatment of the number of up and down electrons, that can be in
principle real, unlike the number of states that is integer
* In MD calculations with PWscf, there was the possibility of an
out-of-bound error, with unpredictable consequences, including
in at least one case hanging of parallel jobs
* Due to a bad dimensioning of variable hubbard_l, DFT+U results could
be wrong if atomic type N with U term has N > L=maximum hubbard L
* a few symmetries were confusing the symmetry finder
* serious bugs in Berry's phase calculation. It affected only the US
case and only some terms, so the error was small but not negligible.
There were three different bugs, one introduced when the spherical
harmonics were modified in the rest of the code, two that I think
have been there from the beginning.
* various glitches with wf_collect option in the non-collinear case
* mix_rho was not working properly for lsda with data saved to file
and double grid
* * * * *
Fixed in version 3.2.1-3.2.3:
* CP in parallel execution had a serious bug if the third dimension
of FFT arrays (nr3x/nr3sx) was not the same as FFT order (nr3/nr3s)
* restart of pw.x in parallel could go bananas under some not-so-unusual
circumstances, due to bad setting of a variable
* various phonon glitches: pools and lsda, pools and dispersions,
option lnscf, were not working
* incorrect exchange-correlation contribution to the electro-optical
coefficient
* check for stop condition was unsafe with pools and could hang pw.x
* fixed occupations in parallel: array not allocated on all processors
* Yet another problem of poor accuracy of routines calculating spherical
bessel functions - harmless except in some cases of pseudopotential
generation
* DOS EOF characters present in some files could cause trouble
during installation
* restart in phonon calculations was not always properly working
* possible divide-by-zero error in dV_xc/dz (spin polarized case)
* gamma_gamma symmetry was not working for open-shell molecules
* T_h group not correctly identified in postprocessing
* missing initialization of rho could lead to serious trouble
if the physical and true dimensions of FFT grid did not coincide
* Ewald real-space term could have been incorrectly calculated
if an atom was far away from the unit cell
* Some variables were used before they were initialized - this could
lead to crashes or unpredictable behaviour on some machines
* lattice parameters a,b,c,cosab,cosac,cosbc were not properly
copied to the celldm in the case of triclinic lattice
* * * * *
Fixed in version 3.2:
* In same cases the energy under an external sawtooth potential
simulating an electric field was not correct
* Case ibrav=13 fixed for good this time!!!
* Bug in PH/clinear.f90 for cells having nr1 /= nr2 may have
affected new electron-phonon algorithm
* Poor accuracy of routines calculating spherical bessel functions
for high l and small q - harmless except in very special cases
* LDA+U with variable-cell dynamics/relaxation was wrong due to
missing rescaling of the integrals of atomic wavefunctions.
This bug has been present since at least 3.0
* Parallel subspace diagonalization could occasionally fail;
replaced by a new algorithm that is much more stable
* Restart problems in parallel run for two cases:
1) with pools, 2) with local filesystems
* * * * *
Fixed in version 3.1.1:
* Methfessel-Paxton broadening was hardcoded in the calculation of
the electron-phonon coefficients (ngauss1=1 in PH/elphon.f90).
There is no good reason to use this instead of simple gaussian
(ngauss1=0), which, moreover, guarantees positive definite results.
* * * * *
Fixed in version 3.1:
* various problems in stress calculation, both in PW and in CP
* in phonon dispersion calculation, the threshold for diagonalization
was not always what was expected to be. Minor numerical differences
could result.
* the new algorithm for electron-phonon calculation removes a serious
bug in the old algorithm, present in v.2.1 to 3 included: when
electron-phonon coefficients were calculated together with the
dynamical matrix, the symmetrization of coeffcients was incorrect.
Results from separate calculations were correct.
* * * * *
Fixed in version 3.0:
* latgen.f90 : case ibrav=13 bad
* kpoints.f : case ibrav=5 bad
* * * * *
Fixed in version 2.1.5:
* bad forces and stresses with LDA+U in spin-unpolarised case
* bad printout of Lowdin charges in projwfc
* FPMD had a problem with some types of UPF PPs
* * * * *
Fixed in version 2.1.4:
* Incorrect initial guess for occupancies in LDA+U (init_ns)
* bogus error in postprocessing with local pseudopotentials only
* several errors in third-order energy derivatives (D3/)
* checks on several unimplemented cases were missing
* * * * *
Fixed in version 2.1.3:
* case ibrav=0 in CP was not properly working
* forces in CP with core corrections were wrong
(reported by Giacomo Saielli)
* damped variable-cell dynamics in PWscf was not working properly
* lambda.x could yield NaN's on negative frequencies
* option "write_save" was not working in parallel
* diagonalization of (0,0) matrix in init_paw_1
* out-of-bound error in readnewvan.f90 fixed
* FPMD: bug with UPF PP when betas are not ordered as l=0,1,2,...
* Possible out-of-bound error with US PP in some cases
* Martins-Troullier norm-conserving PP generation had a small
error when rcloc > rcut(l)
* the default for relativistic vs nonrelativistic calculation
in the atomic code was the opposite of what was intended
* electron-phonon calculation was not working properly if called
after a restart
* Parallel execution on local filesystems (i.e. not visible to all
processors) could hang due to a bad check in charge extrapolation
* When imposing hermiticity in matdyn.x and dynmat.x codes in pwtools
routine dyndiag was actually computing the complex conjugate of
the dynamical matrix. Eigenvectors were therefore wrong, while
eigenvalues were fine. (thanks to Nicolas Mounet)
* * * * *
Fixed in version 2.1.2:
* The phonon code was yielding incorrect results when 4-dimensional
irreps were present (i.e. A point in graphite) and ultrasoft PP used
(reported by Nicolas Mounet)
* in some cases ld1 was writing a bad UPF file
* in some cases the charge density was not conserved during
the charge mixing
* various problems with potential extrapolation in neb and smd
* variable-cell dynamics and optimization was not working in parallel
* Berry phase calculation in parallel should have been disabled
* bug in readfile_config when restarting without a "*.save" file
* crash in pw2casino due to bad call to v_of_rho
* * * * *
Fixed in version 2.1.1:
* memory leak in Raman code
* disproportionate memory requirement in phonon code with USPP
* dangerous calls to read_restart_tetra and write_restart_tetra
when restarting with no allocated tetrahedra
* vc-relax was not working
* projwfc failed with lda+U
* incorrect automatic generation of k-points in the non colinear case:
inversion symmetry is not always present because of the presence of
a magnetic field in the Hamiltonian
* electron-phonon calculation was not working if called directly
after a phonon calculation
* PWCOND + FFTW + parallel execution = not good
* cell minimization with steepest descent was not working (CP/FPMD)
* various Alpha, IBM, SGI, SUN, PGI compilation problems
* * * * *
Fixed in version 2.1:
* various T3E compilation problems
* cpmd2upf was yielding incorrect DFT if converting BLYP PPs
* some variables not properly written and read in restart file
* The value of gamma_only was not correctly set when restarting or
reading from file with option __NEW_PUNCH enabled
* Incorrect calculation of eloc in pw2casino
* Two serious bugs in the local-TF screening :
possible occurrence of division by zero (present since v1.2),
wrong mixing of spin polarized systems
* cpmd2upf failed with some files due to bad check
* Intel compiler v.8: wavefunction files four times bigger than needed
* compilation problems on some version of SGI compiler
* non-collinear code was not working with insulators and nbnd > nelec/2
* multiple writes to file in parallel execution when calculating
electron-phonon coefficients
* various bugs in LBFGS
* NEB + LDA+U = crash
* compilation problems with __NEW_PUNCH
* planar average crashed if used with a cubic system
* Gamma-only phonon code not working for Raman calculations
in some cases
* yet another bug in phonon and k-point parallelization when
reading namelist (phq_readin)
* options startingwfc and startingpot were ignored if restarting
from a previous calculation
* pw2casino interface didn't work properly in spin-polarized case
and didn't use variable "outdir"
* minor bug in pwtools/pwo2xsf.sh
* serious bug in the path interpolator
* phonon, post_processing, various other auxiliary codes were
not working with k-point parallelization (pools) due to
double call to init_pool
* * * * *
Fixed in version 2.0:
* wrong results when running Berry-phase calculation in parallel execution:
it was not implemented but no warning was issued
* variable-cell code was subject to overflow and floating-point errors
* phonon + nosym=.true. was not properly done
* out-of-bound error in Berry Phase calculation
* out-of-bound errors in phonon if 4-dimensional irreps were present
(also d3.x was not working properly in this case)
* Berry-phase calculation had problems in low-symmetry cases
* phonon with k-point parallelization (pools) was yielding wrong
results in some cases (since v. 1.2 included)
* upftools/cpmd2upf.f90: wrong conversion due to Rydberg-Hartree mess
* PW/input.f90: lattice parameter a converted to wrong units if input
is given as a,b,c,cos(ab),cos(ac),cos(bc) instead of celldm(:)
* Wrong coordinates written if atomic_positions='crystal'
(thanks to Francois Willaime)
* * * * *
Fixed in version 1.3.0:
* PH/elphon.f90 : el-ph calculation in the US case was not correctly
working in v.1.2.0 (it was not implemented in previous versions).
An US term in the calculation of deltaV * psi_v was missing.
Fixed by M. Wierzbowska and SdG
* various problems caused by too short file names fixed:
file and directory names up to 80 characters are allowed
(thanks to Serguei Patchkovskii and others)
* LAPACK routines DSYTRF and DYSTRI require some character arguments
(like 'U', 'L'). While most LAPACK implementations accept both
lowercase and uppercase arguments, the standard is uppercase only.
Various anomalies in self-consistency were caused by lowercase
arguments.
* Incorrect Make.pc_abs fixed
* PGI compiler v.3.3-2 on Linux: PP/chdens.x coredump fixed
* various T3E glitches in v.1.2.0 fixed
* PP/work_functions.f90 : STM maps did not work in version 1.2.0
(undefined variable lscf was used, call to sum_band no longer needed)
* PP/projwave.f90: symmetrization of projected dos was incorrectly
performed using d1,d2,or d3 instead of their transponse.
(affects all previous versions)
* PW/new_ns.f90: symmetrization of occupation matrix ns needed for LDA+U
calculations used incorrectly d2 matrices instead of their transponse.
Thanks to Lixin He for finding out the problem and the solution.
(affects all previous versions)
* * * * *
Fixed in version 1.2.0 (f90):
* dynmat.f90: out-of-bound error fixed
* pplib/chdens.F90, pplib/projwave.F90 : compilation problems
for alpha (found by Giovanni Cantele)
* postprocessing routines: problems with unallocate pointers
passed to subroutine plot_io fixed (found by various people)
* postprocessing with ibrav=0 was not working properly
* rather serious bug in cinitcgg (used by conjugate-gradient
diagonalization) could produce mysterious crashes. The bug
appeared in version 1.1.1.
* pplib/dos.f90 was not plotting the expected energy window
* pplib/chdens.F90, pplib/average.F90 : wrong call to setv
could cause an out-of-bound error
* * * * *
Fixed in version 1.1.2 (f90):
* a check on the number of arguments to command line in parallel
execution was added - Intel compiler crashes if attempting to
read a nonexistent argument
* tmp_dir was incorrectly truncated to 35 characters in
parallel execution
* variable "kfac" was not deallocated in stres_knl. A crash in
variable-cell MD could result.
* an inconsistent check between the calling program (gen_us_dj)
and the routine calculating j_l(r) (sph_bes) could result in
error stop when calculating stress or dielectric properties
* errors at file close in pw.x and phonon.x in some cases
* tetrahedra work for parallel execution
(ltetra is now distributed in bcast_input)
* fixed some problems in automatic dependencies (Giovanni Cantele)
* * * * *
Fixed in version 1.1.1 (f90) and 1.0.3 (f77):
* LSDA calculations need either gaussian broadening or tetrahedra
but no input check was performed
* restarting from a run interrupted at the end of self-consistency
yielded wrong forces
* projwave.F (projection over atomic functions) was not working
with atoms having semicore states (found by Seungwu Han)
* stm.F : option stm_wfc_matching was not working properly
if symmetry was present (no symmetrization was performed)
* dynmat.x : displacement patterns in "molden" format were
incorrectly divided by the square root of atomic masses
* d3: misc. problems in parallel execution fixed
* * * * *
Fixed in version 1.1.0 (f90) and 1.0.2 (f77):
* an inconsistency in the indexing of pseudopotential arrays could
yield bad dielectric tensors and effective charges if atoms where
not listed as first all atoms of type 1, then all atoms of type 2,
and so on (found by Nathalie Vast)
* phonon with ibrav=0 was not working (info on symm_type was lost:
found by Michele Lazzeri)
* the generation of the two random matrices needed in the calculation
of third order derivatives was incorrect because the random seed
was not reset. This produced crazy results for q<>0 calculations.
* the check on existence of tmp_dir did not work properly on
Compaq (formerly Dec) alphas (thanks to Guido Roma and Alberto
Debernardi).
* a system containing local pseudopotentials only (i.e. H)
produced a segmentation fault error
* getenv was incorrectly called on PC's using Absoft compiler:
the default pseudopotential directory was incorrect
* out-of-bound bug in pplib/dosg.f fixed. It could have caused
mysterious crashes or weird results in DOS calculations using
gaussian broadening. Thanks to Gun-Do Lee for fixing the bug.
* a missing initialization to zero in gen_us_dy.F could have
yielded a wrong stress in some cases
* phonons in an insulator did not work if more bands (nbnd)
were specified than filled valence band only
* electron-phonon calculation was incorrect if nonlocal PPs
were used (that is, almost always)
* Real space term in third order derivative of ewald energy
was missing (not exactly a bug, but introduced a small error
that could be not negligible in some cases)
* bad call in dynmat.f corrected
* compilation problems for PC clusters fixed (thanks to Nicola Marzari)
* * * * *
Fixed in version 1.0.1:
* recovering from a previous run in pw.x did not work on PC's
* recovering from a previous run in pw.x did not work for stress
calculation
* poolrecover did not compile on some machines (thanks to Eric Wu)
* PC with absoft compiler (and maybe other cases as well):
bad type conversions for REAL and CMPLX resulted in poor
convergence in some test cases. DCMPLX, DREAL used instead.
* Asymptotic high- and low-density formulae used in PW91 and PBE
unpolarized functionals gave a small but not negligible error,
leading to bad convergence of structural optimization