quantum-espresso/Doc/BUGS

596 lines
21 KiB
Plaintext

Fixed in version 4.0.3:
* CPV: array qv allocated in newd wasn't deallocated in all cases,
leading to either ia 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)
* Structural optimization with external sawtooth potential was not
working correctly (electric field disappeared after first run).
All versions after october 2005 affected.
* 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 noncollinear 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 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