Page 1 of 1

monolayer LiC6 gap distribution

Posted: Thu Jul 25, 2019 12:57 pm
by CHILLL
Hello,

I have performed EPW calculations for monolayer LiC6 for which Roxana Margine kindly shared her input with me.
I have several questions regarding the obtained result.
First of all I want to note that my run has crashed at the temperature of 5.1 K with the following error message:

Convergence was not reached in nsiter = 150

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine sum_eliashberg_aniso_iaxis (1):
increase nsiter or reduce conv_thr_iaxis
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Even though I can indeed increase the number of iterations I don't really believe it will converge. So could you please tell me if there is a different remedy for it?

Since some of the temperatures ran smoothly I could already try to compare some results.
As the benchmark naturally I used the Roxana's paper on LiC6 and in particular the gap vs temperature graph. (link to the image https://ibb.co/kmKLVwq)
When I plot my gap distribution file called "graphene.imag_aniso_gap0_002.00" which contains information for T = 2 K I get something that is different from the picture in the article (link to the picture https://ibb.co/CwKBX3N) . The shape is different and the gap barely reaches 0.8 meV whereas the article version is more or less centered around 0.8 meV. Could you plese give me a hint where I might have made a mistake?

Here is my input just in case:

Code: Select all

epwcalculation
&inputepw
  prefix      = 'graphene',
  amass(1)    = 12.01078
  amass(2)    = 6.941
  outdir      = './'
  dvscf_dir   = '../phonons/save/'

  ep_coupling = .true. !run eph calculation
  elph        = .true. !calculate eph coefficients

  kmaps       = .false. !Generate the map k+q --> k for folding the rotation matrix U(k+q). Set to "false" to calculate it, "true" to read it
  epbwrite    = .true.  !If epbwrite = .true., the electron-phonon matrix elements
  epbread     = .false. ! in the coarse Bloch representation and relevant data (dyn
                        ! matrices) are written to disk.

  epwwrite    = .true. ! If epwwrite = .true., the electron-phonon matrix elements
                       !  in the coarse Wannier representation and relevant data (dyn
                       !  matrices) are written to disk. 
                       !  Each pool reads the same file.
  epwread     = .false. ! If epwread = .true., the electron-phonon matrix elements
                        !   in the coarse Wannier representation are read from the 'epwdata.fmt' and 'XX.epmatwpX' files.
                        !  Each pool reads the same file. It is used for a restart calculation and requires kmaps = .true.
                        !  A prior calculation with  epwwrite = .true is also required.

  etf_mem     = 1 ! If etf_mem == 0, then all the fine Bloch-space el-ph matrix elements
                  ! are store in memory (faster).
                  ! When etf_mem == 1, more IO (slower) but less memory is required.
                  ! When etf_mem == 2, an additional loop is done on mode for the fine grid interpolation
                  !  part. This reduces the memory further by a factor "nmodes".

  nbndsub     =  15 !Number of wannier functions to utilize.
  nbndskip    =  1  ! The number of bands lying below the disentanglement
                    !window in the calculation of the Wannier functions.
                    !This quantity is necessary to correctly determine
                    !the Fermi energy.

  wannierize  = .true.
  num_iter    = 2000
  dis_win_min = -20.0
  dis_froz_min = -20.0
  dis_froz_max = 2.45
  proj(1)     = 'f=0.333301340,0.000000000,0.000000000:sp2,pz'
  proj(2)     = 'f=0.666698660,0.000000000,0.000000000:pz'
  proj(3)     = 'f=0.000000000,0.333301340,0.000000000:sp2,pz'
  proj(4)     = 'f=0.333301340,0.333301340,0.000000000:pz'
  proj(5)     = 'f=0.000000000,0.666698660,0.000000000:pz'
  proj(6)     = 'f=0.666698660,0.666698660,0.000000000:sp2,pz'
  wdata(1)    = 'dis_num_iter = 5000'
  wdata(2)    = 'dis_mix_ratio = 0.9'
  wdata(3)    = 'guiding_centres = .true.'
  wdata(4)    = 'bands_plot = true'
  wdata(5)    = 'begin kpoint_path'
  wdata(6)    = 'G 0.000000000 0.000000000 0.000000000 M 0.500000000 0.000000000 0.000000000'
  wdata(7)    = 'M 0.500000000 0.000000000 0.000000000 K 0.333333333 0.333333333 0.000000000'
  wdata(8)    = 'K 0.333333333 0.333333333 0.000000000 G 0.000000000 0.000000000 0.000000000'
  wdata(9)    = 'end kpoint_path'
  wdata(10)   = 'num_print_cycles = 50'
  iverbosity  = 2

  !elinterp    = .true.
  !phinterp    = .true.

  !tshuffle2   = .true.
  !tphases     = .false.

  !parallel_k  = .true.
!  parallel_q  = .false.

  eps_acustic  = 5.0
  ephwrite     = .true. ! originally .false.

  eliashberg   = .true.
 
  fsthick     = 0.4  ! eV / Energy window around the Fermi level that is taken into account
  eptemp      = 300  ! Array of smearing occupations for the Fermi occupation in [K].
  degaussw    = 0.10 ! eV Smearing in the energy-conserving delta functions in [eV]
  nsmear      = 1 !Number of different smearings used to calculate
                  !  the phonon self-energy
  delta_smear = 0.04 ! eV Change in the energy for each additional smearing in the
                     !  phonon self-energy in [eV]

  degaussq     = 0.5 ! meV  Smearing for sum over q in the e-ph coupling in [meV]
  nqstep       = 500 ! Number of steps used to calculate the a2f
  delta_qsmear = 0.1 ! meV Change in the energy for each additional smearing in the a2f in [meV].

dvscf_dir   = './save'

  laniso = .true.
  limag = .true.
  lpade = .true. ! originally commented out
  conv_thr_iaxis = 1.0d-3
  max_memlt = 16.0 ! maximum memory per pool

   wscut = 0.6348209988
   
!  gap_edge = 0.0005

  nstemp   = 12
  temps(1) = 2.00
  temps(2) = 2.50
  temps(3) = 3.00
  temps(4) = 3.50
  temps(5) = 4.00
  temps(6) = 4.50
  temps(7) = 5.00
  temps(8) = 5.10
  temps(9) = 5.20
  temps(10) = 5.30
  temps(11) = 5.40
  temps(12) = 5.50

  nsiter   = 150

  muc     = 0.16

  nk1         = 12
  nk2         = 12
  nk3         = 1

  nq1         = 6
  nq2         = 6
  nq3         = 1

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

  nqf1 = 60
  nqf2 = 60
  nqf3 = 1
 /
      7 cartesian
0.000000000  0.000000000  0.000000000  0.055555556
0.000000000  0.192450090  0.000000000  0.333333333
0.000000000  0.384900179  0.000000000  0.333333333
0.000000000 -0.577350269  0.000000000  0.166666667
0.166666667  0.288675135  0.000000000  0.333333333
0.166666667  0.481125224  0.000000000  0.666666667
0.333333333  0.577350269  0.000000000  0.111111111

Re: monolayer LiC6 gap distribution

Posted: Sat Jul 27, 2019 6:59 am
by roxana
Hi,

The data shown in the figure from my paper were calculated for muc=0.14 why in the input file you provided I see that you used 0.16. Did you perform the calculation for 0.16 or 0.14? Regardless if you used the same value of muc as myself, I would still expect some changes since there have been many updates to the code between the version I used in 2016 and the current version.

Regarding "the crash" at 5.1 K, the convergence of the superconducting gap is not reached in 150 iterations for the conv_thr_iaxis you want to reach. This is pretty common when you are very close to the critical temperature since the gap is basically zero. You can make a plot gap vs. T to see if this is the case and take a slightly lower temperature in your calculations or a smaller temperature step when you approach the Tc.

Best,
Roxana

Re: monolayer LiC6 gap distribution

Posted: Sat Jul 27, 2019 8:08 pm
by CHILLL
Thank you for your quick response !

I just checked again the file that you sent me and there muc = 0.16, so i performed the calculations with this value. OK, then I will keep in mind that some deviations can take place, thank you!

I can see how approaching the critical temperature can be a trouble but in the case of your article I see that you managed to go successfully even higher than 5.5 K.

Best regards, Mikhail

Re: monolayer LiC6 gap distribution

Posted: Sun Jul 28, 2019 11:12 am
by roxana
For muc=0.14, Tc is about 5.8 K, so 5.5 K is way below 5.5 K and I approached the critical temperature in small steps.

Re: monolayer LiC6 gap distribution

Posted: Mon Jul 29, 2019 10:01 am
by CHILLL
May I also ask about how the code treats the negative phonons?
LiC6 input provides clearly stable phonons with minor purely numerical negatives around the Gamma point for an acoustic mode. I know that formulas such as the isotropic Eliashberg function may be very sensitive to this behavior. So the question is: does the code just cut those negatives?

In LiC6 it causes no problem, but I do have similar numerical artifact in the monolayer MgB2, and there, the isotropic Eliashberg function that comes out of EPW looks very unhealthy and (maybe) consequently the anisotropic properties are also bad. I know that this question maybe is a bit out of the scope, and if you want I can make a separate one.

Best, Mikhail

Re: monolayer LiC6 gap distribution

Posted: Tue Aug 13, 2019 12:35 pm
by roxana
The flag eps_acustic sets the lower boundary for the phonon frequency in el-ph and a2f calculations. The default is 5 cm-1