quantum-espresso/TODO

148 lines
4.0 KiB
Plaintext

TODO LIST - 28 October 2003
INSTALLATION/PORTING
- configure
- Linux Alpha ?
- Make.irix ? SGI-SGI64-ORIGIN ?
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
- file format unification must be finished
- merge spherical harmonics, integration routines, etc
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, dfloat etc
- Add code for NEB (Nudged Elastic Band)
- Add interface for CASINO
- calculation of <psi|exp(iGr)|psi'>
- process numbering: 1 to nproc or 0 to nproc-1 ?
PW
- remove iswitch, replace with existing (minus_q, lscf)
or new logical variables
- the assignment of correct weigths to k-points must be done
in a more general and less obscure way (needed for better
support of noncolinear stuff)
- maximize merge of PW with Gamma and noncolinear code
- replace "use pwcom" into more "use" statement
- add traceback in error (error_handler module)
- remove analytical PPs and related variables
- remove residual direct calls to MPI routines,
use (or merge with) existing routines in mp.f90 instead
- remove all calls to setv in PH and D3; all calls to zero and SSUM in
CPV; calls to level-1 blas copy, scal
- remove potential mixing, save and start from rho instead of V,
at least for scf calculations. 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 is sensible
- remove old punch, use new punch, add possibility to save
wavefunctions either 'distributed' or 'collected' in
parallel execution (requires identifier in the first line
of the file)
- 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
- ultrasoft PP: import "small boxes" from CP ?
- 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
POSTPROCESSING
- postprocessing/pwtools in the parallel case
and with new_punch must be verified
- stm_wfc_matching not working
- add more scripts that process output files
- dos, projected dos, etc: input data should be more uniform
- 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
PH
- Tone: ntyp in input needed for phonon GUI ?
- better algorithm for electron-phonon (Malgorzata)
D3
- does it work? no example available !
DOCUMENTATION
- examples for many features are missing
examples should be quicker and easier to verify
present examples are not very practical for testing
- 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 input ipp and pp type. Even better: remove ipp
(leave either UPF or old-format Vanderbilt)
- check on small box size
- replace calls to zero, ssum, csum, blas copy, scal, with f90