Technical Details and Portings

To install DP you need a Fortran90 and a C compiler (for example g95 and gcc) and a Linear Algebra library (for example the BSD licence LaPack library, the needed routines are provided in src/lib/lapack).
DP comes with the MFFT Public Domain FFT library (A. Nobile and V. Roberto, Comp. Phys. Comm. 42, 233 (1986)).
You can link other native Linear Algebra and FFT libraries (ESSL, CXML, IMSL, ASL, NAG, Goedecker-FFT) or you can install yourself and link (for example the FFTW library).
We also advise to install the NetCDF library which will free you from the troubles in the input/output of binary files on different machines (different precisions, little/big endian troubles, C/Fortran/Java/Perl/Python differencies in binaries).

The DP code requires a previous DFT calculation. We advise to use ABINIT. The DP code is well interfaced to the ABINIT KSS file as well as to the new NetCDF ETSF format it will nextly produce. There is another interface toward older QPLDA files, produced by the Milan-CP code and to which interfaces in PWSCF and SFHIngx should exist.

If you dispose of another Fortran90 DFT ground-state code and you wish to interface it to DP, then we propose you to use the ETSF I/O Library NetCDF interface (Damien Caliste, Comp. Phys. Com. 179, 748 (2008)). Download the latest version. The old interface ioetsf.f90 by Matthieu Verstraete and VO is not developped any more and only for reference. Please notice that to run a DP calculation you need not only KS eigenvalues and eigenfunctions, but also Kleinman-Bylander factors. However if you do not dispose of them, the DP code will ignore contributions coming from the non-local terms of the pseudopotentials.