Dear EPW experts,
I'm relatively new to using EPW. I need to do superconductivity calculation using Eliashberg equations and I have following queries. Kindly forgive me if these questions are basic and already been answered. I tried but couldn't locate the answers for these in the forum.
I have already done electron and phonon bandstructures in QE and EPW. Now, when I need to solve Iso/anisotropic ME equations,
1. what values should be set for fsthick, degaussw, degaussq, wscut and muc tags ? (At present, I'm using values given in EPW school hands-on examples)
2. I see that, you say we must do convergence tests for above tags. However, I'm confused against what parameter should we do convergence. ( for ex: in
QE, it was against Total energy for ecutwfc, kmesh etc). In EPW, Is it the decay ( i.e. decay of H, D and g) ?
3. I have a server with single node, 128 cores, 256 GB of RAM. When running, "mpirun -np (...) epw.x -nk (..) < epw.in > epw.out", what number of processors and pools I must use? Also, How do I set value for max_memlt ?
I sincerely apologize for these lengthy questions. Hoping for some reply from you soon.
Regards
Ashwath
confusion regarding setting the values of eliashberg equation parameters and parallezation
Moderator: stiwari
Re: confusion regarding setting the values of eliashberg equation parameters and parallezation
Hi Ashwath,
Before jumping into the ME calculations, the most important step is the wannierization. Please make sure that your W90 bands fits well with the DFT and the spreads are reasonably small (< 5 Ang.), then perform the Block to Wann calculation. for dynamical matrices, etc in the coarse grid. Then it comes now to calculate el-ph matrices in the fine k/q meshes, and calculate ME equations.
For the ME equations calculations, if you see EPW/examples/mgb2/epw example, following inputs are set, I have explained them here.
fsthick = 0.4 ! eV (4 times the maximum phonon frequency)
degaussw = 0.10 ! eV (maximum phonon frequency)
degaussq = 0.5 ! meV (greater than (max. phonon freq)/nqstep, by default nqstep = 500, see https://docs.epw-code.org/doc/Inputs.html#nqstep)
wscut = 1.0 ! (10 times the max. ph. freq.)
And, yes of course, you need to run some convergence tests of these parameters and also for the k/q meshes with respect to the el-ph coupling parameter \lambda and superconducting gap \Delta.
For memory related question, please see https://forum.epw-code.org/viewtopic.php?t=5887
Happy EPWing,
Hari
Before jumping into the ME calculations, the most important step is the wannierization. Please make sure that your W90 bands fits well with the DFT and the spreads are reasonably small (< 5 Ang.), then perform the Block to Wann calculation. for dynamical matrices, etc in the coarse grid. Then it comes now to calculate el-ph matrices in the fine k/q meshes, and calculate ME equations.
For the ME equations calculations, if you see EPW/examples/mgb2/epw example, following inputs are set, I have explained them here.
fsthick = 0.4 ! eV (4 times the maximum phonon frequency)
degaussw = 0.10 ! eV (maximum phonon frequency)
degaussq = 0.5 ! meV (greater than (max. phonon freq)/nqstep, by default nqstep = 500, see https://docs.epw-code.org/doc/Inputs.html#nqstep)
wscut = 1.0 ! (10 times the max. ph. freq.)
And, yes of course, you need to run some convergence tests of these parameters and also for the k/q meshes with respect to the el-ph coupling parameter \lambda and superconducting gap \Delta.
For memory related question, please see https://forum.epw-code.org/viewtopic.php?t=5887
Happy EPWing,
Hari
Re: confusion regarding setting the values of eliashberg equation parameters and parallezation
Hi Ashwath,
I would like to add a few things related to your convergence parameters:
1. fsthick value needs to be converged for your system. For isotropic superconductivity calculations, you can vary the fsthick window and check the convergence of the Eliashberg spectral function and lambda by plotting the prefix.a2f file.
degaussw is the smearing parameter for electronic states, currently, set as degaussw = (1/4)* fsthick. This parameter is crucial for isotropic calculations and needs to be converged with respect to k/q grid sizes.
degaussq is the smearing for phonon frequencies, used for isotropic calculation (as Hari clarified).
muc is a semi-empirical Coulomb parameter, typically ranging between 0.1 - 0.2 values are used for most cases.
2. EPW performs two steps. In the first step, the electron-phonon matrix elements are interpolated from the coarse k/q grid (nscf k-grid and phonon q-grid) to the Wannier representation. Therefore, decay plots for electronic Hamiltonian (decay.H), phonon dynamical matrices (decay.D), el-ph matrix elements (decay .Re, decay.Rp) must be converged for accurate MLWF representation.
The second step involves interpolating from the Wannier representation (epwread=.true., epwrite=.false.) to fine k/q-grids for el-ph matrix elements. These el-ph matrix elements are used for superconductivity, transport, etc. calculations.
3. You can run an EPW calculation using 128 cores. Since the current EPW version supports only pool parallelization, use the following commnd. mpirun -np 128 epw.x -nk 128 < epw.in > epw.out
Please let us know if anything is not clear.
Regards,
Shashi
I would like to add a few things related to your convergence parameters:
1. fsthick value needs to be converged for your system. For isotropic superconductivity calculations, you can vary the fsthick window and check the convergence of the Eliashberg spectral function and lambda by plotting the prefix.a2f file.
degaussw is the smearing parameter for electronic states, currently, set as degaussw = (1/4)* fsthick. This parameter is crucial for isotropic calculations and needs to be converged with respect to k/q grid sizes.
degaussq is the smearing for phonon frequencies, used for isotropic calculation (as Hari clarified).
muc is a semi-empirical Coulomb parameter, typically ranging between 0.1 - 0.2 values are used for most cases.
2. EPW performs two steps. In the first step, the electron-phonon matrix elements are interpolated from the coarse k/q grid (nscf k-grid and phonon q-grid) to the Wannier representation. Therefore, decay plots for electronic Hamiltonian (decay.H), phonon dynamical matrices (decay.D), el-ph matrix elements (decay .Re, decay.Rp) must be converged for accurate MLWF representation.
The second step involves interpolating from the Wannier representation (epwread=.true., epwrite=.false.) to fine k/q-grids for el-ph matrix elements. These el-ph matrix elements are used for superconductivity, transport, etc. calculations.
3. You can run an EPW calculation using 128 cores. Since the current EPW version supports only pool parallelization, use the following commnd. mpirun -np 128 epw.x -nk 128 < epw.in > epw.out
Please let us know if anything is not clear.
Regards,
Shashi
Re: confusion regarding setting the values of eliashberg equation parameters and parallezation
Dear Hari sir and Shashi sir,
Thank you for your kind reply. In deed, I have got a reasonably matching electron and phonon bandstructure from QE and EPW and the spread is less than 5 ang.
1. However, my Maximum Im/Re Ratio is sometimes greater than 100. Is that a problem ?
2. My maximum phonon frequency is about 46meV. So I choose, degaussw = 0.05 eV, fsthick = 0.2 eV, degaussq = 0.2 meV, wscut = 0.5 ! eV, muc = 0.16. I have also used nk1 = nk2 = nk3 = 6 ; nq1 = nq2 = nq3 = 6 ; nkf1 = nkf2 = nkf3 = 18 ; nqf1 = nqf2 = nqf3 = 18. I get a decent convergence in decay.H and decay.D.
However, the lambda and Tc value I have obtained are double the reported value. What parameters I can change to bring down these values?
3. If I instead use nk1 = nk2 = nk3 = 9 ; nq1 = nq2 = nq3 = 9 while performing e-ph matrix element calculation, my run gets killed with the following message.
Progress kgmap: ########################################
kmaps : 0.08s CPU 0.18s WALL ( 1 calls)
Symmetries of Bravais lattice: 48
Symmetries of crystal: 48
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= RANK 0 PID 689071 RUNNING AT NITK
= KILLED BY SIGNAL: 9 (Killed)
I tried changing number of processors from -np 1 to -np 27 with same -nk value. I have also used max_memlt = 240d0, etf_mem = 1 or 2. However, the 256gb RAM seems to get overwhelmed. What else I can change here ? (PS: I have 128 cores and 1 node).
Thank you for your kind reply. In deed, I have got a reasonably matching electron and phonon bandstructure from QE and EPW and the spread is less than 5 ang.
1. However, my Maximum Im/Re Ratio is sometimes greater than 100. Is that a problem ?
2. My maximum phonon frequency is about 46meV. So I choose, degaussw = 0.05 eV, fsthick = 0.2 eV, degaussq = 0.2 meV, wscut = 0.5 ! eV, muc = 0.16. I have also used nk1 = nk2 = nk3 = 6 ; nq1 = nq2 = nq3 = 6 ; nkf1 = nkf2 = nkf3 = 18 ; nqf1 = nqf2 = nqf3 = 18. I get a decent convergence in decay.H and decay.D.
However, the lambda and Tc value I have obtained are double the reported value. What parameters I can change to bring down these values?
3. If I instead use nk1 = nk2 = nk3 = 9 ; nq1 = nq2 = nq3 = 9 while performing e-ph matrix element calculation, my run gets killed with the following message.
Progress kgmap: ########################################
kmaps : 0.08s CPU 0.18s WALL ( 1 calls)
Symmetries of Bravais lattice: 48
Symmetries of crystal: 48
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= RANK 0 PID 689071 RUNNING AT NITK
= KILLED BY SIGNAL: 9 (Killed)
I tried changing number of processors from -np 1 to -np 27 with same -nk value. I have also used max_memlt = 240d0, etf_mem = 1 or 2. However, the 256gb RAM seems to get overwhelmed. What else I can change here ? (PS: I have 128 cores and 1 node).
-
- Posts: 2
- Joined: Wed Mar 12, 2025 9:39 am
- Affiliation: The Catholic University of Louvain
Re: confusion regarding setting the values of eliashberg equation parameters and parallezation
Dear Ashwath,
That the large Im/Re ratio is indeed a problem, can you try to find a better initial guess for your wannierization? Also, is your system metallic and if yes, are you including some of the unoccupied states in your calculation as well?
Once wannierization is fine, we can analyse the other parameters and Tc values that you obtain!
Best,
Nina.
That the large Im/Re ratio is indeed a problem, can you try to find a better initial guess for your wannierization? Also, is your system metallic and if yes, are you including some of the unoccupied states in your calculation as well?
Once wannierization is fine, we can analyse the other parameters and Tc values that you obtain!
Best,
Nina.