2007-02-13 23:38:19 +08:00
|
|
|
TODO LIST - February 2007
|
2004-11-18 22:47:19 +08:00
|
|
|
|
2005-02-03 17:07:42 +08:00
|
|
|
BUGS TO EXAMINE
|
2004-11-18 22:47:19 +08:00
|
|
|
|
2006-10-03 22:29:27 +08:00
|
|
|
- Zr pp buggy?
|
2006-05-12 23:43:11 +08:00
|
|
|
- strange empty states with C blyp ?
|
|
|
|
- O pseudopotentials?
|
2006-09-20 20:26:19 +08:00
|
|
|
- Zval is wrong for pseudopotentials generated on a ionic
|
|
|
|
configuration, when semicore states are in the valence
|
2006-10-20 05:17:24 +08:00
|
|
|
- discrepancies between spin-unpolarized and spin=0 spin-polarized
|
|
|
|
results with gradient corrections
|
2007-02-03 01:56:08 +08:00
|
|
|
- mysterious bfgs crash(-es) with ndim=3
|
|
|
|
- Lisenkov:
|
|
|
|
> Did anybody else report that pw.x hangs sometimes without any explicit
|
|
|
|
> reason? I see it very often recently (after realizing 3.2 version) on
|
|
|
|
> different machines (xeon em64t, cray xd1, cray xt3, altix,..). It usually
|
|
|
|
> happens when the number of scf steps is being large (~100). I didn't see
|
|
|
|
> such problem with earlier versions, but I need to use the latest one due
|
|
|
|
> to using LDA+U method
|
|
|
|
- Sara Furlan:
|
|
|
|
> sto usando cpvib.x dell'espresso versione 3.2.
|
|
|
|
> Mi sono accorta che se in input si danno le ATOMIC_POSITIONS
|
|
|
|
> con un ordine diverso dagli ATOMIC_SPECIES si ottengono delle
|
|
|
|
> frequenze improbabili.
|
|
|
|
|
|
|
|
- Davide: npools not a divisor on nk => mpi hangs
|
2007-02-13 23:38:19 +08:00
|
|
|
- Misc problems found by Eduardo:
|
|
|
|
pw => cp with atoms out of the cell
|
|
|
|
extrapolation of wfcs
|
|
|
|
temperature control
|
2004-11-18 22:47:19 +08:00
|
|
|
|
2007-01-19 20:11:41 +08:00
|
|
|
CVS/INSTALLATION/PORTING
|
2003-10-17 00:30:12 +08:00
|
|
|
|
2007-01-19 20:11:41 +08:00
|
|
|
- restructuration of the CVS server, dividing it into "base libs",
|
2007-02-03 01:56:08 +08:00
|
|
|
"base QE", additional packages - release.sh is clumsy, simplify
|
2006-11-27 23:06:51 +08:00
|
|
|
- add support for more Nec's
|
2007-02-03 01:56:08 +08:00
|
|
|
- remove obsolete stuff from install/
|
2006-11-27 23:06:51 +08:00
|
|
|
- put misc scripts into a Utils/ subdirectory
|
2006-10-03 22:29:27 +08:00
|
|
|
|
2003-04-04 22:36:00 +08:00
|
|
|
COMMON
|
|
|
|
|
2007-01-19 20:11:41 +08:00
|
|
|
- reduce usage of nonscalable static and dynamical memory:
|
|
|
|
qfunc, qrad, uspp, etc
|
|
|
|
|
|
|
|
- update iotk to new version
|
|
|
|
|
|
|
|
- use qexml for xml file processing so that a single, easily
|
|
|
|
exportable routine, is used everywhere. Requires some though
|
|
|
|
on how to deal with parallelism without filling qexml with
|
|
|
|
parallel stuff
|
|
|
|
|
2006-08-29 20:31:58 +08:00
|
|
|
- uniform and clear values for constants in Modules/constants.f90
|
2007-02-03 01:56:08 +08:00
|
|
|
Almost done: now they have to be used everywhere!
|
|
|
|
|
2006-12-12 19:02:09 +08:00
|
|
|
- convert all single-precision constants to double precision
|
2007-02-03 01:56:08 +08:00
|
|
|
(mostly done)
|
2004-11-18 22:47:19 +08:00
|
|
|
|
2006-11-27 23:06:51 +08:00
|
|
|
- check whether license is written in the header of the file
|
2006-09-20 20:26:19 +08:00
|
|
|
|
2007-02-03 01:56:08 +08:00
|
|
|
- pseudopotentials: support new format (xml) if/when ready
|
2004-11-18 22:47:19 +08:00
|
|
|
|
2004-10-26 00:40:56 +08:00
|
|
|
- adding/removing/modifying input variables is too complex
|
2006-11-03 20:09:43 +08:00
|
|
|
Why are some checks on input variables performed in read_namelist,
|
|
|
|
while others apparently similar are in */input.f90?
|
2004-09-08 16:31:21 +08:00
|
|
|
|
2004-09-15 22:22:51 +08:00
|
|
|
- time steps in fs (both in input and in output)
|
|
|
|
|
2004-09-08 16:31:21 +08:00
|
|
|
- fix shift in eigenvalues between CP/FPMD and PW
|
|
|
|
The eigenvalues should be the same
|
|
|
|
Total energies for charged systems should also be the same
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2004-04-27 21:44:55 +08:00
|
|
|
- merge spherical harmonics between CP-PW and FPMD
|
|
|
|
merge integration routines, random number generators
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2006-08-29 20:31:58 +08:00
|
|
|
- spherical bessel functions: only one function calculating dj_l/dx
|
|
|
|
j_l with l=-1 should not be needed
|
|
|
|
|
2004-04-03 21:24:17 +08:00
|
|
|
- error is in flib/ but requires modules: not a good solution,
|
2004-11-18 22:47:19 +08:00
|
|
|
things in flib/ should not use modules except maybe kinds
|
|
|
|
and other very low level modules
|
2006-11-27 23:06:51 +08:00
|
|
|
- too many confusing error messages are still around
|
2003-05-29 17:19:18 +08:00
|
|
|
|
2004-04-27 21:44:55 +08:00
|
|
|
- replace calls to level-1 blas copy, scal, axpy, with f90 syntax
|
|
|
|
|
2006-10-20 05:17:24 +08:00
|
|
|
- CP "small boxes" vs PW "real-space" approach
|
2004-04-27 21:44:55 +08:00
|
|
|
|
2007-01-19 20:11:41 +08:00
|
|
|
- It would be nice to merge "cell_base_init" from CPV to PW,
|
2007-02-03 01:56:08 +08:00
|
|
|
and also "cellmd" module of PW into "cell_base" of CPV
|
|
|
|
|
|
|
|
- there should be a single function or routine for periodic
|
|
|
|
boundary conditions (i.e. bringing all atoms inside the unit
|
|
|
|
cell)
|
2007-01-19 20:11:41 +08:00
|
|
|
|
2003-04-04 22:36:00 +08:00
|
|
|
PW
|
|
|
|
|
2007-02-03 01:56:08 +08:00
|
|
|
- inversion symmetry should allow real hamiltonian and wavefunctions (Dario)
|
2006-11-29 01:25:00 +08:00
|
|
|
|
2007-01-19 20:11:41 +08:00
|
|
|
- Add option to prevent writing the final file (Dario)
|
2006-10-20 05:17:24 +08:00
|
|
|
|
2006-12-01 22:41:55 +08:00
|
|
|
- nscf calculations are slow. There must be a way to
|
|
|
|
make a better usage of the available information
|
|
|
|
from the scf calculation: wavefunctions are just
|
|
|
|
discarded. Same for phonon calculation: it shouldn't
|
|
|
|
be needed to recalculate everything almost from scratch
|
|
|
|
at each different q-points
|
|
|
|
|
|
|
|
- DIIS still doesn't work!
|
|
|
|
|
2006-10-03 22:29:27 +08:00
|
|
|
- Fermi-Dirac: pass T instead of "broadening", make it possible
|
|
|
|
to use it on top of smearing for free-energy calculations
|
|
|
|
|
2003-04-04 22:36:00 +08:00
|
|
|
- add possibility to read atomic positions from file
|
|
|
|
|
2006-10-20 05:17:24 +08:00
|
|
|
- Use more standard choices for crystal axis (if any)
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2003-06-01 23:31:31 +08:00
|
|
|
- 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)
|
2004-04-03 21:24:17 +08:00
|
|
|
- use real BLAS routine instead of COMPLEX one in hpsi/spsi
|
|
|
|
(at least 2 times faster).
|
2003-06-01 23:31:31 +08:00
|
|
|
- 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)
|
|
|
|
|
2003-04-16 01:40:01 +08:00
|
|
|
- output should be more informative and less confused
|
2004-03-04 18:27:11 +08:00
|
|
|
the printout with UPF PP is incomplete or misleading (lloc=0)
|
2003-04-16 01:40:01 +08:00
|
|
|
|
2004-02-06 18:37:30 +08:00
|
|
|
- write explicitly and unambiguosly the units of output quantities
|
2004-08-27 22:23:09 +08:00
|
|
|
and also what are exactly the output quantites!
|
2004-02-06 18:37:30 +08:00
|
|
|
|
2005-11-14 16:50:12 +08:00
|
|
|
- some symmetry-related routines such as sgama are too complex
|
2006-08-29 20:31:58 +08:00
|
|
|
Verify that a group is a group (call multable again in sgama)
|
2005-11-14 16:50:12 +08:00
|
|
|
|
2004-11-18 22:47:19 +08:00
|
|
|
Low priority:
|
|
|
|
|
|
|
|
- add traceback in error (error_handler module)
|
|
|
|
|
2007-02-13 23:38:19 +08:00
|
|
|
- printout of cpu times not very informative
|
|
|
|
|
2004-11-18 22:47:19 +08:00
|
|
|
POSTPROCESSING
|
2004-10-26 00:40:56 +08:00
|
|
|
|
2005-06-20 20:33:53 +08:00
|
|
|
- complete postprocessing in Gamma case (only average missing),
|
|
|
|
and with CP/FPMD data
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2003-07-30 01:38:08 +08:00
|
|
|
- stm_wfc_matching not working
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2007-02-03 01:56:08 +08:00
|
|
|
- Move to a xml-based format for the dynamical matrix files
|
2003-09-02 01:06:02 +08:00
|
|
|
|
2007-02-03 01:56:08 +08:00
|
|
|
- chdens in parallel execution?
|
2006-08-29 20:31:58 +08:00
|
|
|
|
|
|
|
- pwtools: add example of a plot of phonon dispersions
|
|
|
|
Fix fqha.f90
|
|
|
|
|
2005-10-20 22:01:39 +08:00
|
|
|
PH, D3, Gamma
|
2004-08-27 22:23:09 +08:00
|
|
|
|
2007-02-21 20:44:17 +08:00
|
|
|
- C(R) might be calculated at the end of a dispersion run
|
|
|
|
|
|
|
|
- any possibility to merge the various solve_* ?
|
|
|
|
|
2005-06-20 20:33:53 +08:00
|
|
|
- use charge mixing instead of potential mixing
|
|
|
|
|
2005-08-24 22:39:40 +08:00
|
|
|
- move all phonon-specific stuff (symmetry etc) from pw into phonon
|
2006-11-03 20:09:43 +08:00
|
|
|
|
|
|
|
- clean up the logic of symmetry: there shouldn't be any longer the
|
|
|
|
present confusion on whose symmetries we are dealing with. We should
|
2006-06-23 23:47:59 +08:00
|
|
|
either keep unchanged the crystal symmetries and use indices to
|
|
|
|
locate symmetries of the small group of q, or keep different copies
|
|
|
|
for the symmetries of the crystal and of the small group of q
|
2004-08-27 22:23:09 +08:00
|
|
|
|
2005-05-20 05:17:42 +08:00
|
|
|
- same input for Gamma and PH
|
2003-04-04 22:36:00 +08:00
|
|
|
|
2004-04-27 21:44:55 +08:00
|
|
|
- replace "use pwcom" into more "use" statements
|
|
|
|
|
2006-12-01 22:41:55 +08:00
|
|
|
- stop with 'prefix.EXIT' and restart (PH now has it; D3 & Gamma do not
|
|
|
|
have any infrastructure for stopping like this)
|
2006-12-12 19:02:09 +08:00
|
|
|
Phonon restart is inefficient in some cases
|
2006-12-01 22:41:55 +08:00
|
|
|
|
2003-04-04 22:36:00 +08:00
|
|
|
DOCUMENTATION
|
|
|
|
|
2006-08-29 20:31:58 +08:00
|
|
|
- move to wiki-based documentation
|
|
|
|
|
2005-06-20 20:33:53 +08:00
|
|
|
- single source (xml?) for text file, GUI help file, user guide
|
|
|
|
|
2006-01-27 00:42:14 +08:00
|
|
|
- better automated testing procedure, quick and distinct from examples!
|
2005-08-24 22:39:40 +08:00
|
|
|
|
2005-11-14 16:50:12 +08:00
|
|
|
- add some benchmarks
|
2003-04-07 20:55:29 +08:00
|
|
|
|
2004-08-27 22:23:09 +08:00
|
|
|
CP/FPMD:
|
2003-05-20 01:46:44 +08:00
|
|
|
|
2006-08-29 20:31:58 +08:00
|
|
|
- PWGui for CP/FPMD?
|
|
|
|
|
|
|
|
- check on small box size
|
2003-05-20 01:46:44 +08:00
|
|
|
|
2004-08-27 22:23:09 +08:00
|
|
|
- Proposals from Princeton:
|
|
|
|
* default set up for molecular calculations
|
|
|
|
* default cutoff values as well as radii of augmented charge
|
|
|
|
from pseudopotential files
|
|
|
|
* default choice for spin restricted and spin unrestricted configurations
|
|
|
|
for neutral systems (maybe already there?)
|
|
|
|
* automatic FFT grids from cutoff
|
|
|
|
* automatic box grid for USPP from radii of augmented charge
|
|
|
|
* default values for emass(emass=300), for dt (dt=7), for preconditioning
|
|
|
|
cutoff (3)
|
|
|
|
* the code should consider a common error:
|
|
|
|
dt^2/emass too large does not allow ortho to converge
|
|
|
|
or cause energy to increase as time step evolve
|
|
|
|
* Electronic minimization: SD should be discouraged: use damp as default,
|
|
|
|
introduce an automatic default schedule, something as:
|
|
|
|
1st step sd followed by 5 steps with with damp= 0.8,
|
|
|
|
followed by 5 steps with damp=0.5,
|
|
|
|
followed by 10 steps with damp=0.3,
|
|
|
|
followed by 10 steps with damp=0.2,
|
|
|
|
followed by as many steps as necessary
|
|
|
|
to achieve the required convergence with damp=0.1
|
|
|
|
A max number of steps should be included to ensure program termination
|
|
|
|
The other option allowed should be conjugate gradients:
|
|
|
|
see Nicola - eventually it could become the default
|
|
|
|
* Ionic minimization: again SD should be discouraged
|
|
|
|
A default scheme for simultaneous damped dynamics should be given
|
|
|
|
(to be tested) for example: zero damp on ions and start with damp=0.5
|
|
|
|
on electrons to become then 0.1 or perhaps the values should be set
|
|
|
|
given the forces on the ions
|
|
|
|
When moving ions and electrons simultaneously an important parameter
|
|
|
|
is the ratio between electron and ion masses - For minimization it
|
|
|
|
is better to set up all the ion masses equal - A default value for
|
|
|
|
the ion masses (considering the defaults for emass and dt) is perhaps
|
|
|
|
10 AMU (we should do some test to see if 20 AMU is s a safer value)
|
|
|
|
* Default values for randomization should be given
|
|
|
|
amprp=0.1 is a decent value - amprp=0.01 is too small
|
|
|
|
* Car-Parrinello dynamics: the proper masses for the ions, an optimal value
|
|
|
|
for emass and dt should be set up by the code, based on the smaller atomic
|
|
|
|
mass and the default value used in the minimizationi
|
|
|
|
e.g. Amass_default=10 AMU. If the minimum physical AMASS is 20 then
|
|
|
|
dt=sqrt(2) dt_default and emass should be increased so to keep
|
|
|
|
emass^2/dt constant
|
2005-11-14 16:50:12 +08:00
|
|
|
* defaults for the Nose thermostat
|
2004-03-04 18:27:11 +08:00
|
|
|
|