Restarting an interrupted q-point interpolation

Post here questions linked with issue while running the EPW code

Moderator: stiwari

Post Reply
mdogan
Posts: 59
Joined: Thu Jun 18, 2020 5:59 pm
Affiliation: UC Berkeley

Restarting an interrupted q-point interpolation

Post by mdogan »

Hello,

I'm an EPW novice, and have a basic question about restarting the calculation. I'm trying to interpolate the e-ph matrix elements onto a fine q-grid, and the calculation will take a few walltimes (input file below). I found a few forum posts about how to restart this calculation but wasn't sure which one to follow. I ended up just adding the two restart lines as suggested in [viewtopic.php?t=1262], but the restarted calculation just started from scratch. Could someone let me know which lines to change in the input file for a proper restart? Thank you very much!

Best,
Mehmet Dogan

Code: Select all

electron-phonon calculation
 &inputepw
    outdir = './'
    prefix = 'scf'
    dvscf_dir = './save'
    iverbosity = 1

    ep_coupling = .true.
    elph = .true.
    kmaps = .false.
    epbwrite = .false.
    epbread = .false.
    epwwrite = .true.
    epwread = .false.
    etf_mem = 1

    wannierize = .true.
    nbndsub = 24
    num_iter = 200
    dis_win_min = -20
    dis_win_max = 80
    dis_froz_min = -20
    dis_froz_max = 20
    proj(1) = 'H:s'
    wdata(1) = 'bands_plot = .true.'
    wdata(2) = 'begin kpoint_path'
    wdata(3) = 'Z  0.00  0.00  0.50  Y  0.50  -0.50  0.00'
    wdata(4) = 'Y  0.50  -0.50  0.00  H3  0.66666667  -0.33333333  0.50'
    wdata(5) = 'H3  0.66666667  -0.33333333  0.50  T  0.50  -0.50  0.50'
    wdata(6) = 'T  0.50  -0.50  0.50  Z  0.00  0.00  0.50'
    wdata(7) = 'Z  0.00  0.00  0.50  G  0.00  0.00  0.00'
    wdata(8) = 'G  0.00  0.00  0.00  R  0.00  -0.50  -0.50'
    wdata(9) = 'R  0.00  -0.50  -0.50  S  0.00  -0.50  0.00'
    wdata(10) = 'S  0.00  -0.50  0.00  H2  0.33333333  -0.66666667  0.50'
    wdata(11) = 'end kpoint_path'
    wdata(12) = 'bands_num_points = 80'
    wdata(13) = 'kmesh_tol = 0.0001'

    fsthick = 1
    degaussw = 0.1

    ephwrite = .true.
    eliashberg = .true.

    nsiter = 400
    conv_thr_iaxis = 1.0d-3
    wscut = 1.0

    temps = 20 180
    nstemp = 9

    muc = 0.10
    mp_mesh_k = .true.

    restart = .true.
    restart_step = 10

    nkf1 = 64
    nkf2 = 64
    nkf3 = 32
    nqf1 = 16
    nqf2 = 16
    nqf3 = 8

    nk1 = 32
    nk2 = 32
    nk3 = 16
    nq1 = 4
    nq2 = 4
    nq3 = 2

 /
mdogan
Posts: 59
Joined: Thu Jun 18, 2020 5:59 pm
Affiliation: UC Berkeley

Re: Restarting an interrupted q-point interpolation

Post by mdogan »

PS. I'm using EPW 5.3.0 that came with QE 6.6.
hlee
Posts: 415
Joined: Thu Aug 03, 2017 12:24 pm
Affiliation: The University of Texas at Austin

Re: Restarting an interrupted q-point interpolation

Post by hlee »

Dear Mehmet Dogan:

I don't know clearly your situations.
If you already have prefix.epmatwp file and you want to restart with this file, please remove the following lines
restart = .true.
restart_step = 10
and replace the following lines
epwwrite = .true.
epwread = .false.
with
epwwrite = .false.
epwread = .true.
Additionally, if you have restart.fmt file and either iterative_bte or ephwrite is true, you can restart the e-ph vertex interpolation on fine grids using the information contained in this file.

Sincerely,

H. Lee
mdogan
Posts: 59
Joined: Thu Jun 18, 2020 5:59 pm
Affiliation: UC Berkeley

Re: Restarting an interrupted q-point interpolation

Post by mdogan »

Dear H. Lee,

Thank you very much for your reply! Actually, when the calculation kept going, it indeed picked up from where it had left off in the q-point interpolation. I was confused because it was repeating the earlier stages of the calculation (Wannierization, e-ph coupling) and thought that restart hadn't worked. After some experimentation, I ended up using the following input file:

Code: Select all

electron-phonon calculation
 &inputepw
    outdir = './'
    prefix = 'scf'
    dvscf_dir = './save'
    iverbosity = 1

    ep_coupling = .true.
    elph = .true.
    kmaps = .true.
    epbwrite = .false.
    epbread = .false.
    epwwrite = .true.
    epwread = .true.
    etf_mem = 1

    wannierize = .false.
    nbndsub = 24
    num_iter = 200
    dis_win_min = -20
    dis_win_max = 80
    dis_froz_min = -20
    dis_froz_max = 20
    proj(1) = 'H:s'
    wdata(1) = 'bands_plot = .true.'
    wdata(2) = 'begin kpoint_path'
    wdata(3) = 'Z  0.00  0.00  0.50  Y  0.50  -0.50  0.00'
    wdata(4) = 'Y  0.50  -0.50  0.00  H3  0.66666667  -0.33333333  0.50'
    wdata(5) = 'H3  0.66666667  -0.33333333  0.50  T  0.50  -0.50  0.50'
    wdata(6) = 'T  0.50  -0.50  0.50  Z  0.00  0.00  0.50'
    wdata(7) = 'Z  0.00  0.00  0.50  G  0.00  0.00  0.00'
    wdata(8) = 'G  0.00  0.00  0.00  R  0.00  -0.50  -0.50'
    wdata(9) = 'R  0.00  -0.50  -0.50  S  0.00  -0.50  0.00'
    wdata(10) = 'S  0.00  -0.50  0.00  H2  0.33333333  -0.66666667  0.50'
    wdata(11) = 'end kpoint_path'
    wdata(12) = 'bands_num_points = 80'
    wdata(13) = 'kmesh_tol = 0.0001'

    fsthick = 1
    degaussw = 0.1

    ephwrite = .true.
    eliashberg = .true.

    nsiter = 400
    conv_thr_iaxis = 1.0d-3
    wscut = 1.0

    temps = 20 180
    nstemp = 9

    muc = 0.10
    mp_mesh_k = .true.

    restart = .true.
    restart_step = 10

    nkf1 = 64
    nkf2 = 64
    nkf3 = 32
    nqf1 = 16
    nqf2 = 16
    nqf3 = 8

    nk1 = 32
    nk2 = 32
    nk3 = 16
    nq1 = 4
    nq2 = 4
    nq3 = 2

 /
Now, when I restart the calculation, it directly goes into the continued q-point interpolation. I will keep your suggestions in mind for further reference. Thank you very much once again!

Best,
Mehmet
Post Reply