quantum-espresso/TODO

124 lines
3.6 KiB
Plaintext

TODO LIST - 2 Jul 2004
(does not include new developments!)
INSTALLATION/PORTING
- expand new configure to cover as many configurations as possible
- too many options for SGI machines
COMMON
- fix shift in eigenvalues between CP/FPMD and PW
The eigenvalues must be the same!!!
- fix shift in total energy between CP, FPMD and PW
for charged systems. Total energies for charged systems
must be the same!!!
- merge (standard) diagonalization routines
use parallel diagonalization in CP and PW
- merge spherical harmonics between CP-PW and FPMD
merge integration routines, random number generators
spherical bessel: add routine directly calculating dj_l(x)/dx,
verify limits x=>0, fix special cases x=>0 into the codes
- variable declarations : real(kind=DP), or real(dbl), everywhere
- real vs dreal, cmplx vs dcmplx, float vs dble, etc
- error is in flib/ but requires modules: not a good solution,
things in flib/ should not use modules except maybe kinds
- replace calls to level-1 blas copy, scal, axpy, with f90 syntax
- cleanup and merge of routines reading and processing PPs;
merge uspp-related stuff ("small box") of CP into PW
PW
- cleanup of parallel stuff: removal of old-style variables
- remove iswitch, replace with existing (minus_q, lscf)
or new logical variables
- maximize merge of colinear (PW) and with noncolinear (PWNC) code
- add traceback in error (error_handler module)
- remove potential mixing, save and start from rho instead of V,
at least for scf calculations. Requires fixing the noncolinear
and electric-field cases. For non-scf calculations: we may
still start from V, but the output file MUST include the scf rho,
not a bogus rho as it may happen now
- save rho and/or V in G-space instead of R-space
check that what is read makes sense
- extend to CP/FPMD possibility to save wavefunctions either
'distributed' or 'collected' in parallel execution
- add possibility to read atomic positions from file
- Use more standard choices for crystal axis
- fix problem with j'_l(x)Y_lm(x) for x -> 0 and l=1
- make hpsi/spsi/newd/addusdens/CG/DIIS faster
- remove complex factor i**l from beta fct and q(r) (preliminary)
- shift structure factor from beta to psi when computing becp (reduce memory)
- use real BLAS routine instead of COMPLEX one in hpsi/spsi
(at least 2 times faster).
- use only half of the G's when computing real integrals (2 times faster)
- seek for CG and DIIS algoritms that only use (H-eS)|psi> and not
the two vector separately ... compute it in one single call. (this way
S|psi> is inexpensive)
- output should be more informative and less confused
the printout with UPF PP is incomplete or misleading (lloc=0)
- write explicitly and unambiguosly the units of output quantities
POSTPROCESSING
- complete postprocessing in Gamma case
- stm_wfc_matching not working
- the dynamical matrix written by the phonon code does not contain
the information on lattice basis vectors if ibrav=0.
As a consequence most postprocessing codes will not work
- reconstruction of all-electron wavefunctions
PH, D3, Gamma
- better algorithm for electron-phonon (Malgorzata?)
- replace "use pwcom" into more "use" statements
DOCUMENTATION
- examples for some features are still missing
automated testing procedure: how to deal with numerical differences?
- expand and update the manual; add a list of FAQ, or of already
answered questions
- complete the developer's (technical) guide
FPMD:
- Documentation is nonexistent
CPV:
- Documentation needs serious improvements
- check on small box size
- the output is horrible