[Pw_forum] Possible bug(?) in q2r.x when using FFT routine in ESSL

Paolo Giannozzi giannozz at democritos.it
Fri Aug 31 10:55:54 CEST 2012


The simplest workaround is to move the *.dyn* files to another 
machine, compute there the force constants in reciprocal space.
The ultimate solution is to go into Modules/fft_scalar.f90,
edit routine cfft3d in such a way that it can cope with 
a dimension of length 1. You need to modify line 1238:
    IF( isign /= 0 ) CALL dcft3( f(1), ldx,ldx*ldy, f(1), ldx,ldx*ldy, &
        nx,ny,nz, idir, tscale, work(1), lwork)
and call dcft2 instead. You will also need to add initialization of
dft2 in line 1159, definition of needed arrays somewhere around
line 1094.

Of course you can use any grid of phonon wave-vectors, but it
is a waste of time.

P.

On Fri, 2012-08-31 at 03:19 -0500, Jiseok Kim wrote:
> Dear, QE users
> 
> 
> I have been struggling for a while to find out what's going on with
> q2r.x
> The problem was that I could not get rid of the error messages below
> when doing q2r.x.
> 
> 
> -------------------------------------------------
> DCFT3 : 2538-2030
> The transform length (ARG NO. 9) is not an allowed value. The next
> higher
> allowed value is (2).
> -------------------------------------------------
> 
> 
> I've compiled QE-v5.0.1. on AIX6.1(parallel machine) with 'mpxlf' with
> ESSL routines.
> So the 'q2r.x' calls 'cfft3d' and then the 'cfft3d' calls 'dcft3' in
> ESSL when performing FFT.
> 
> 
> The problem is this.
> The 'dcft3' in ESSL only accepts certain values of transforming length
> as shown in,
> 
> 
> -------------------------------------------------
> http://publib.boulder.ibm.com/infocenter/clresctr/vxrx/index.jsp?topic=%2Fcom.ibm.cluster.essl.v5r1.essl100.doc%2Fam501_hscft3.htm
> -------------------------------------------------
> 
> 
> so the FFT dimensions (nx, ny, nz), which is read from outputs by
> ph.x, should be the values in the table.
> Otherwise, the 'dcft3' crashes.
> 
> 
> The FFT dimensions (nx, ny, nz) in q2r.x are equivalent to the (nq1,
> nq2, nq3) in ph.x so that the Monkhorst-pack grid for ph.x should be
> limited by the values in the table when using the ESSL.
> 
> 
> For example, the Monkhorst-pack grid (16x16x1) for q-points in the
> case of two-dimensional supercell, such as graphene, cannot be
> accepted by the 'dcft3' so we have to avoid using the nq3=1.
> (For some reason, the 'dcft3' does not allow odd number of FFT
> dimensions..)
> 
> 
> So here is a question.
> I wonder if I can use the different Monkhorst-pack grid for pw.x and
> ph.x when calculating a phonon dispersion.
> For example, can I use the (16x16x1) k-points for pw.x and (16x16x2)
> q-points for ph.x. in the case of graphene or some two dimensional
> supercell ?
> I guess it should not be matter but I just want to be sure ..
> 
> 
> Thank you.
> 
> 
> Sincerely,
> 
> 
> JISEOK KIM, Ph.D.
> Postdoctoral Research Associate
> Department of Materials Science and Engineering
> University of Texas at Dallas
> 800 W. Campbell Rd. RL10
> Richardson, TX 75080
> (413)386-6285
> 
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://www.democritos.it/mailman/listinfo/pw_forum
-- 
Paolo Giannozzi, IOM-Democritos and University of Udine, Italy





More information about the users mailing list