Hartree potential that may serve as an input for the PPM can be produced by various DFT codes. A slab calculations are necessary for a creation of the Hartree potential. The calculated system should be in the lower part of the unit cell, but z coordinates of the top-most layer has to be above zero! At least 10 Ǎ of vacuum above a slab geometry has to be used. 15-20 Ă of Vacuum are recommended. Here we show examples how to produce a hartree potential, for couple of DFT codes:
A fireball.in for creation of an fftpot.xsf file with Hartree potential with using a McWEDA functional should look like:
&OPTION basisfile = 'answer.bas' lvsfile = 'input.lvs' kptpreference = 'input.kpts' nstepf = 1 icluster = 0 itdse = 0 iqout = 1 ifixcharge = 1 ! 0 if you don't have pre-calculated atomic charges in CHARGES iquench = -1 &END &OUTPUT iwrtxsf = 1 ! print the important file iwrtden = 1 ! print the important file &END &MESH ifixg0 = 1 ! g0 = 0.0,0.0,0.0 ! do not shift the position of atoms in fftpot.xsf with respect to the answer.bas Ecut = 300.0d0 ! not really necessary, but gives grid sampling approximately 100 pm. &END
A fireball.in file for calculations with XC on a grid computations:
&OPTION basisfile = 'answer.bas' lvsfile = 'input.lvs' kptpreference = 'samplek.kpts' nstepf = 1 icluster = 0 itdse = 0 iqout = 1 ifixcharge = 0 dt = 0.5 iquench = -1 iks = 1 imcweda = 0 idogs = 0 bmix = 0.05 &END &OUTPUT iwrtxsf = 1 ! print the important file iwrtden = 1 ! print the important file &END &MESH ifixg0 = 1 ! g0 = 0.0,0.0,0.0 ! do not shift the position of atoms in fftpot.xsf with respect to the answer.bas Ecut = 300.0d0 ! not really necessary, but gives grid sampling approximately 100 pm. &END
A LOCPOT file containing the Hartree potential is produced during standart VASP run. One just have to care about a dipole correction (if necessary). The LOCPOT file has to be convert into an *.xsf file, eg. via http://theory.chm.tu-dresden.de/~jk/software.html
http://aimsclub.fhi-berlin.mpg.de/
Add following sequention into your control.in file:
output cube hartree_potential cube origin lx ly lz
where lx, ly & lz are shifting the output cube file so the written grid would be at the beginning of the Cartesian system. PPM can now read geometry from a cube file created by FHI-AIMS and shift it according to the shift of the cube cell; however for good run of the PPM calculation at least lz has to be properly specified. l = length of lattice vector / 2 - 0.05; But proper shift is used only, when the lattice vector follows some Cartesian direction.