Page 1 of 1

Error in routine efermig (1): internal error, cannot bracket Ef

Posted: Wed Dec 17, 2025 7:43 am
by bhawna
Hi,

I am encountering an error while attempting to solve the Boltzmann Transport Equation (BTE) using EPW.

The error message is: "Error in routine efermig (1): internal error, cannot bracket Ef."

I have verified that the output file appears to be reading the Fermi level correctly, but the error persists. I have also tried the following troubleshooting steps, none of which resolved the issue:

- Changing the coarse grid from 8x8x6 to a finer grid (64x64x48).
- Altering the degauss parameter.
- Reviewing and applying all suggested solutions previously discussed on this forum for similar problems.

Below is the relevant output for the reference using 8x8x6 grid :

Fermi energy coarse grid = 20.179115 eV
=======================================
Fermi energy is read from the input file: Ef = 20.179000 eV
=======================================
ibndmin = 25 ebndmin = 19.682 eV
ibndmax = 32 ebndmax = 20.668 eV
...
We only need to compute 384 q-points
...
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine efermig (1):
internal error, cannot bracket Ef.

Could you please advise on what might be causing this error, given the steps I have already taken?

Thank you for your assistance.

Re: Error in routine efermig (1): internal error, cannot bracket Ef

Posted: Thu Dec 18, 2025 5:07 pm
by xiaozha
Hi,

It would be helpful if you could provide the inputs of your epw1 (wannierization) and epw2 (transport) calculations. It would also be helpful to know the system that you are working on.

In my experience, this error mostly happens when there is an inconsistency between the two inputs, and/or maybe other inconsistencies such as if you are working on a metallic system but did not set assume_metal, or vise versa?

Best!
Xiao

Re: Error in routine efermig (1): internal error, cannot bracket Ef

Posted: Thu Dec 18, 2025 10:27 pm
by bhawna
Hi Xiaozha,

Thank you for your response. I am attaching the input files used for both the Wannier (epw1) and the transport (epw2) calculations. For the Wannier calculations, I did not choose an interpolated grid, so the nkf grid is set to 1x1x1 in order to generate the necessary files to restart the calculation, such as the fmt files. For the transport calculations, as I mentioned, I tried different grids ranging from 8x8x6 to 64x64x48. Given that the material is a metal, I set the input parameter `assume_metal = .true.`

Please let me know if there is something I am doing incorrectly in this process?

Thank you!