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 CPV 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