Page 1 of 1

BSE diagonalization with GPU and BSE gauge

Posted: Sun Jun 16, 2024 2:09 pm
by edward
Dear Developer,

I'm wondering if the BSE diagonalization is using the GPU backend like cuSolver for acceleration and also if the BSE gauge is all based on the wave function in IBZ. If the rotation of the wave function has been done, how does the rotation operation affect the wave function gauge?

Best,
Mingran

Re: BSE diagonalization with GPU and BSE gauge

Posted: Fri Jun 21, 2024 10:27 am
by Davide Sangalli
Dear Mingran,
the GPU back-hand for the diago solver is under development and not yet released.
Since version 5.2 it is possible to use the slepc solver on GPUs however, provided that the Slepc library is compiled with GPU support.

The BSE is defined in the whole BZ, taking the WFs in the IBZ and expanding them via symmetry operations before computing the matrix elements.

As you mention, WFs at each k-point are defined up to an arbitrary phase factor.
This phase factor is random, e.g. for the points in the IBZ it results from the diagonalization of the DFT code. When WFs are expanded the phase factor for the points in the BZ derives from the original phase factor in the IBZ and from the symmetry operation used. Accodringly, it is important to always use the same symmetry operation when computing WFs at points outside the IBZ.

Best,
D.

Re: BSE diagonalization with GPU and BSE gauge

Posted: Sun Jun 23, 2024 2:10 pm
by edward
Dear Davide,

Thanks for your kind reply! Looking forward to the GPU-accelerated solver in the future version!
As for the BSE gauge, would it be possible to get a set of wavefunctions on denser k points in the FBZ and much fewer bands solely for BSE kernel construction and el-ph coupling if ex-ph is wanted?

Best,
Mingran