Error: About to overwrite gbound array (FFT mesh too small)

Total energy, geometry optimization, DFT+U, spin....

Moderator: bguster

Locked
jbarrat
Posts: 3
Joined: Tue Dec 11, 2018 10:58 pm

Error: About to overwrite gbound array (FFT mesh too small)

Post by jbarrat » Mon Dec 17, 2018 11:50 pm

Dear all,

I am trying to use the test script libxc/Input/t42.in, which is designed for hybrid functional calculation of diamond structure, with a monoclinic primitive unit cell (space group 12). Before that I ran some convergence tests with the relevant gga potentials without hybrid, and that worked well, which I guess shows that the input of the structure is correct. The t42.in script runs fine, however, when I run mine I always get the following error message:

Code: Select all

--- !BUG
src_file: sphereboundary.F90
src_line: 252
mpi_rank: 0
message: |
    About to overwrite gbound array (FFT mesh too small)
       iloop, igb, mgb = 2 59 58
       istwfk, mgfft, npw = 1 27 11747
       minval(kg_k) = -18 -18 -17
       maxval(kg_k) = 19 19 17


I've read in the source code of sphereboundary.F90 that this error is displayed when igb+1>mgb. But no matter the settings that I put for the calculation, it always comes out that igb is one unit bigger than mgb, so the script stopped. Here is my input file:

Code: Select all

ndtset   4
enunit   1

# Dataset1: usual self-consistent ground-state calculation
# Definition of the k-point grid
ngkpt     2 2 2
nshiftk   4
shiftk   0.0 0.0 0.0  # This grid contains the Gamma point
         0.0 0.5 0.5
         0.5 0.0 0.5
         0.5 0.5 0.0
tolvrs   1.0d-6 #set very high for debugging
nband      50
istwfk     *1           # Option needed for Gamma

# Common to all hybrid calculations
getwfk1     0
getwfk      1        # Obtain WFK file from previous dataset
ecutwfn     11.5     # Planewaves to be used to represent the wavefunctions
ecutsigx    11.5     # Planewaves to be used to represent the exchange operator
gwcalctyp   25
getqps     -1
ixc_sigma  -428

# Dataset2: Calculation of the 1st HSE06 iteration
optdriver2  4

# Dataset3: Calculation of the 2nd HSE06 iteration
optdriver3  4
   getqps3 -1

# Dataset4: Calculation of the 3rd HSE06 iteration
optdriver4  4
   getqps4 -1

# Interpolate energies at the end of the sigma run.
# Use k-path specified by nkpath, ndivsm, kptbounds and write energies in gnuplot format.
#
prtebands4 2      # gnuplot format.
einterp4 1 5 0 0  # Star function interpolation with 5 star functions per k-point
ndivsm4 10        # k-path
nkpath4 2
kptbounds4
0.0 0.0 0.0 #Gamma
0.0 0.0 0.5 #A

#Definition of primitive cell
acell 6.41421 6.41421 5.87615 angstrom
angdeg 76.72488 103.27512 152.18873

#Definition of atom types
ntypat 2
znucl 31 8

#Definition of atoms
natom 10
typat 4*1 6*2
xred   0.658731666119      0.341268333881      0.315010706391
       0.341268333881      0.658731666119      0.684989293609
       0.090301675668      0.909698324332      0.794397839232
       0.909698324332      0.090301675668      0.205602160768
       
       0.496451881967      0.503548118033      0.257200455262
       0.503548118033      0.496451881967      0.742799544738
       0.173967775327      0.826032224673      0.562356228312
       0.826032224673      0.173967775327      0.437643771688
       0.835460169676      0.164539830324      0.889767629327
       0.164539830324      0.835460169676      0.110232370673

# Definition of the planewave basis set
ecut 30.0          # Maximal kinetic energy cut-off, in Hartree

# Definition of the SCF procedure
nstep   250        # Maximal number of SCF cycles
diemac  12.0


I have tried to vary ecut, ecutwfn, ecutsigx, ngkpt without any success. Then I realized that the problem comes from the size of the FFT grid, and I could solve the error by setting ngfft manually:

Code: Select all

fftgw 0 0
ngfft 60 60 60


But when I do that, the file xxx_INTERP_EBANDS.data is not anymore produced like in the t42.in case... I haven't found a way so far to get around this problem, it seems to me that the manual ngfft prevents the calculation of the band structure because (maybe) the number of k-points doesn't match the input for dataset 4. Sometimes, with some other settings, the use of ngfft resulted in an error at the dataset 4 about a mismatch between the expected value of ngkpt and the input, but I couldn't manage to reproduce it right now.

Any idea what could be causing this error to occur or of what I could do in order to get around the issue? I've been struggling for days with this issue!

Thank you very much in advance for your help!

Julien.

en victory
Posts: 2
Joined: Mon Jan 07, 2019 2:02 pm

Re: Error: About to overwrite gbound array (FFT mesh too sma

Post by en victory » Thu Jan 31, 2019 3:51 am

Code: Select all

--- !BUG
src_file: sphereboundary.F90
src_line: 252
mpi_rank: 0
message: |
    About to overwrite gbound array (FFT mesh too small)
       iloop, igb, mgb = 2 85 84
       istwfk, mgfft, npw = 1 40 24485
       minval(kg_k) = -21 -21 -14
       maxval(kg_k) = 21 21 14

...

  Action: contact ABINIT group (please attach the output of `abinit -b`)


Dear all,
I have a some problem when I ran a 2D material.
Anyone can help?
Thank you.

En Victory

Locked