On Fri, 2013-05-17 at 01:18 +0800, Fang Liu wrote: > That is, I use a 25*25*25 3D FFT mesh. The original 3d array g3d = > (1.0_DP, -1.0_DP). > > First I do invfft and then fwfft. Finally I don't get the original 3d > array, but a 3d array g3dnew in which > g3dnew(1),g3dnew(2),...,g3dnew(3025)= (1.0_DP, -1.0_DP) > while g3dnew(3026),....,g3dnew(15625)=0.0.
> But if I do fwfft first and then invfft, I can finally get the > original 3d array. The 3D FFTs in QE are tailored for the "dual-space" algorithm as used in plane-wave codes. If you specify "Wave", the code will assume that there are no G components beyond a sphere of radius G^2 < Ecut. For instance, when performing the G->R FT along z, many vectors will be ignored, because they are assumed to contain zeros. See Lorenzo's post for a more detailed explanation. P. -- Paolo Giannozzi, Dept. Chemistry&Physics&Environment, Univ. Udine, via delle Scienze 208, 33100 Udine, Italy Phone +39-0432-558216, fax +39-0432-558222