regarding size missmatch while doing epw calculations

Post here questions linked with issue while running the EPW code

Moderator: stiwari

appalakondaiah

regarding size missmatch while doing epw calculations

Post by appalakondaiah »

Dear all,
I am running test calculations for phonon line widths for 2D materials (similar to MgB2). For this, I started with less kpoints (8X8X1) and qpoints (4X4X1) for scf and phonon calculations respectively and successfully finished with positive frequencies. On the other hand, while running epw calculations I struck with the below error

Error in routine calbec (3):
size mismatch


Sincearly
S. Appalakondaiah,
Research Schloar
SAINT, SKKU

Here with I am attaching my input files for the referance
scf.in

Code: Select all

&control
    calculation='scf',
    prefix='test',
    pseudo_dir = '/home/saint/Softwares/pslibrary.1.0.0/pbe/PSEUDOPOTENTIALS',
    outdir='./',
    tprnfor = .true.,
    verbosity ='high'
    tstress = .true.,   
    etot_conv_thr = 1.0d-8
    forc_conv_thr = 1.0d-6
 /
 &system   
    ibrav=  0, A=3.4446,nat=  3, ntyp= 2,
    ecutwfc =60, ecutrho=720,
    degauss=.01469972360,
    smearing='gauss',
    occupations='smearing',
 /
 &electrons
    diagonalization = 'david'
    mixing_mode = 'plain'
    mixing_beta = 0.3
    conv_thr =  1.0d-8
 /
ATOMIC_SPECIES
-----
CELL_PARAMETERS
   0.873521802  -0.504328048   0.000000000
   0.000000000   1.008656096   0.000000000
   0.000000000   0.000000000   6.976744186
K_POINTS AUTOMATIC
8 8 1 0 0 0


nscf.in
&control

Code: Select all

    calculation='nscf',
    prefix='test',
    pseudo_dir = '/home/saint/Softwares/pslibrary.1.0.0/pbe/PSEUDOPOTENTIALS',
    outdir='./',
    tprnfor = .true.,
    verbosity ='high'
    tstress = .true.,   
    etot_conv_thr = 1.0d-8
    forc_conv_thr = 1.0d-6
 /
 &system   
    ibrav=  0, A=3.4446,nat=  3, ntyp= 2,
    ecutwfc =60, ecutrho=720,
    degauss=.01469972360,
    smearing='gauss',
    occupations='smearing',
 /
 &electrons
    diagonalization = 'david'
    mixing_mode = 'plain'
    mixing_beta = 0.3
    conv_thr =  1.0d-8
 /
ATOMIC_SPECIES
 ----
CELL_PARAMETERS
   0.873521802  -0.504328048   0.000000000
   0.000000000   1.008656096   0.000000000
   0.000000000   0.000000000   6.976744186
 K_POINTS crystal_b
 4
 0.0 0.0 0.0 50
 0.5 0.0 0.0 20
 0.3333 0.3333 0.0 20
 0.0 0.0 0.0 50


epw.in
--

Code: Select all

&inputepw
  prefix      = 'NbSe2',
  amass(1)    = 92.91,
  amass(2)    = 78.96,
  outdir      = './'

  ep_coupling = .true.
  elph        = .true.
  kmaps       = .false.
  epbwrite    = .true.
  epbread     = .false.

  epwwrite = .true.
  epwread  = .false.

  etf_mem     = .true.

  nbndsub     =  1,
  nbndskip    =  0

  wannierize  = .true.
  num_iter    = 500
  dis_froz_max= 2
  proj(1)     = 'random'

  iverbosity  = 2

  elinterp    = .true.
  phinterp    = .true.

  tshuffle2   = .true.
  tphases     = .false.

  parallel_k  = .true.
  parallel_q  = .false.

  eps_acustic = 2.0    ! Lowest boundary for the
  ephwrite    = .true. ! Writes .ephmat files used when wliasberg = .true.

  fsthick     = 0.4  ! eV
  eptemp      = 5  ! K
  degaussw    = 0.10 ! eV
  nsmear      = 1
  delta_smear = 0.04 ! eV

  degaussq     = 0.5 ! meV
  nqstep       = 500

  eliashberg  = .true.

  laniso = .true.
  limag = .true.
  lpade = .true.

  conv_thr_iaxis = 1.0d-2

  wscut = 1.0   ! eV   Upper limit over frequency integration/summation in the Elisashberg eq

  nstemp   = 1
  tempsmin = 15.00
  tempsmax = 60.00

  nsiter   = 500

  muc     = 0.16

  dvscf_dir   = '../phonons/save'
 
  nk1         = 4
  nk2         = 4
  nk3         = 1

  nq1         = 4
  nq2         = 4
  nq3         = 1

  mp_mesh_k = .true.
  nkf1 = 16
  nkf2 = 16
  nkf3 = 1

  nqf1 = 16
  nqf2 = 16
  nqf3 = 1
 /
  4 cartesian
  0.000000000   0.000000000   0.000000000  1.000000000
  0.143098890   0.247854547   0.000000000  1.000000000
 -0.286197779  -0.495709094   0.000000000  1.000000000
  0.429296669   0.247854547   0.000000000  1.000000000
sponce
Site Admin
Posts: 616
Joined: Wed Jan 13, 2016 7:25 pm
Affiliation: EPFL

Re: regarding size missmatch while doing epw calculations

Post by sponce »

Dear S. Appalakondaiah,

This error should be raised when the max number of plane wave is larger than the current one (on that node) or when some Kleiman-Bylander momentum are too large.

Therefore this might be related to the use of PSP. Which kind of psp did you use?

Did you use the same ecut for the phonon calculation as for the scf,nscf and epw run?

Best,

Samuel
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
appalakondaiah

Re: regarding size missmatch while doing epw calculations

Post by appalakondaiah »

Dear Prof Samuel,

Yes. I am using same ecut for scf, nscf in epw and phonon calculations. Also, scalar relativistic RRKJ ultrasoft pseudopotentails for all the calculations.

Sincearly
S. Appalakondaiah,
Research Schloar
SAINT, SKKU
sponce
Site Admin
Posts: 616
Joined: Wed Jan 13, 2016 7:25 pm
Affiliation: EPFL

Re: regarding size missmatch while doing epw calculations

Post by sponce »

Dear S. Appalakondaiah,

Are they PBE xc functionals?

If so, could you try a small calculation with LDA just to see if you get the same error message?

Best,

Samuel
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
carla.verdi
Posts: 155
Joined: Thu Jan 14, 2016 10:52 am
Affiliation:

Re: regarding size missmatch while doing epw calculations

Post by carla.verdi »

Hi,

I also noticed that you run the nscf using only 4 k points - instead, you need a uniform 4x4x1 grid in the input (this is a requirement for the wannierization afterwards).

Best
Carla
sponce
Site Admin
Posts: 616
Joined: Wed Jan 13, 2016 7:25 pm
Affiliation: EPFL

Re: regarding size missmatch while doing epw calculations

Post by sponce »

Yep !

Well spotted Carla.

You need a uniform positively defined [0:1] homogeneous k-grid for nscf.in
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
appalakondaiah

Re: regarding size missmatch while doing epw calculations

Post by appalakondaiah »

Dear Prof. Samuel and Prof. Carla

Thank you for the reply. Now I changed according to your suggestions and fixed the PWs for both scf.in and nscf.in. But the issue changed now into
coarse k-mesh needs to be strictly positive in 1st BZ
. Below I am adding my inputs. Suggest me for the next (I hope this issue is not related to my phonon calculations !!!)
SCF.in

Code: Select all

K_POINTS AUTOMATIC
8 8 2 0 0 0

NSCF.in

Code: Select all

K_POINTS AUTOMATIC
8 8 2 0 0 0

epw.in

Code: Select all

 nk1         = 8 
  nk2         = 8
  nk3         = 2

  nq1         = 8
  nq2         = 8
  nq3         = 2

  mp_mesh_k = .true.
  nkf1 = 16
  nkf2 = 16
  nkf3 = 2

  nqf1 = 16
  nqf2 = 16
  nqf3 = 2
sponce
Site Admin
Posts: 616
Joined: Wed Jan 13, 2016 7:25 pm
Affiliation: EPFL

Re: regarding size missmatch while doing epw calculations

Post by sponce »

Hello,

You have to manually input the point in the nscf.in and they have to be between 0 and 1 for each value.

Indeed if you put

Code: Select all

K_POINTS AUTOMATIC
8 8 2 0 0 0


Then you do not have positive values (you can look at nscf.out).

You can look the input nscf.in files in the EPW example to see how this should be done.

Best,

Samuel
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
appalakondaiah

Re: regarding size missmatch while doing epw calculations

Post by appalakondaiah »

Dear Prof..

I too agree with you.. In examples, Kpoints are in manual. But How it is ?? I tried with kpoints.x tool in QE, generation using xcrysden, kpoints automatic selection and other script which is in below. In all ways, i am not able to solve my issue. can any one suggest me for generation of kpoints in manual (specifically points should between 0 to 1)

Code: Select all

#!/bin/sh
cat > script.m << EOF
nk1 = 16;
nk2 = 16;
nk3 = 4;
fid = fopen('klist.dat','w');
for i1=0:nk1-1;
 for i2=0:nk2-1;
  for i3=0:nk3-1;
    kvec = [i1/nk1 i2/nk2 i3/nk3 1/(nk1*nk2*nk3)];
    fprintf(fid,'%12.6f %12.6f %12.6f %12.6f\n',kvec');
  end;
 end;
end;
fclose(fid);
EOF
octave < script.m
rm script.m
sponce
Site Admin
Posts: 616
Joined: Wed Jan 13, 2016 7:25 pm
Affiliation: EPFL

Re: regarding size missmatch while doing epw calculations

Post by sponce »

Hello,

You can use the following python script (for your particular problem):

Code: Select all

import numpy as np

wgt = 1.0/(8*8*2)

for i in np.arange(0,1,1.0/8):
  for j in np.arange(0,1,1.0/8):
    for k in np.arange(0,1,1.0/2):
      print i, j, k, wgt
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
Post Reply