Explicit SOC treatment in BSE calculations

Queries about input and output files, running specific calculations, etc.


Moderators: Global Moderator, Moderator

Post Reply
Message
Author
arslan_mazitov
Newbie
Newbie
Posts: 1
Joined: Tue Feb 07, 2023 10:21 pm

Explicit SOC treatment in BSE calculations

#1 Post by arslan_mazitov » Fri Oct 17, 2025 10:03 am

Dear VASP experts,

I recently did a BSE@G0W0 calculation for a certain system with LSORBIT=True enabled in all steps (PBE, G0W0, and BSE), and studied the excitonic behavior in the case of two distinct magnetic states: ferromagnetic state oriented along `x` axis (FM IP), and along `z` axis (FM OOP). Upon this rotation of spins, I get two exactly the same band structures in GW run, but a very different excitonic response. Practically, FM OOP phase yield optical transitions at around 1.7 eV (see Figure below), and FM IP phase doesn't. This effect is quite unusual, and typically I'd expect the difference in band structures result in a difference in excitonic behavior.

I'm trying to therefore provide a theoretical explanation of this effect (i.e. why we see no difference in GW results, but only see it in BSE), and I face a problem that my knowledge of the VASP code is certainly limited. Therefore, I wanted to ask a few questions:

1. Does BSE implementation in VASP then have an explicit SOC term in the BSE Hamiltonian?
2. If no, can the SOC effects be still implicitly included in BSE Hamiltonian through the way the two-electron integrals (direct and exchange kernels) are calculated? For example if the integration is performed over states represented as spinors, and therefore the overlap between different spinor components of different `c` and `v` bands enters the final form of the kernels.
3. What is the fundamental difference between the way the GW eigenvalues are computed (I'm using the EVG0W0, neglecting off-diagonal terms), compared to the BSE run, which can result in such an effect (i.e. same GW eigenvalues and different BSE eigenvalues upon a rigid rotation of spins)? Is it the presence of the explicit long-range Coulomb term in BSE, or the fact that we compute a two-electron integrals (instead of one-electron in the GW run), or anything else? Could it be that neglecting the off-diagonal terms in GW actually stipulates the same exact band structure?
4. Could it be that the absence of vertex corrections in G0W0 leads to such a degeneracy in the band structures?
5. In general, is there any theoretical documentation that describes how the GW and BSE subroutines are implemented in VASP in the SOC case? The only thing I managed to find in the net are classic papers of Shishkin et al. from 2006-2007 (for GW) and Sander et at. 2015 (for BSE), but all of them are formulated in the case of no spins.

I attach the settings I used for each step of the FM OOP calculation below. The only difference between FM OOP and FM IP in terms of the files is the initial orientation of magnetic moments.

Thank you all in advance for your help!

INCAR-DFT

NBANDS = 384
NELM = 100
ISMEAR = 0 ; SIGMA = 0.05
EDIFF = 1E-8
KPAR = 8
LORBITALREAL=.TRUE.

ALGO = Normal
ENCUT = 400

LOPTICS = .TRUE.
NEDOS = 10000

ISPIN = 2
LNONCOLLINEAR = TRUE
LSORBIT = TRUE
MAGMOM = 0 0 2.660 0 0 2.660 0 0 2.660 0 0 2.660 36*0
LORBIT = 11
LASPH = TRUE
GGA_COMPAT = .FALSE.

INCAR G0W0

# GW steps
NBANDS = 384;
KPAR = 4
ISMEAR = 0 ; SIGMA = 0.05
EDIFF = 1E-8
ALGO = EVGW0 ; NELM = 1; LWAVE = .TRUE.
NOMEGA = 200
ENCUT = 400
ENCUTGW = 270
ENCUTGWSOFT = 220

ISPIN = 2
LNONCOLLINEAR = TRUE
LSORBIT = TRUE
MAGMOM = 0 0 2.660 0 0 2.660 0 0 2.660 0 0 2.660 36*0
LORBIT = 11

INCAR BSE

# BSE
NBANDS = 384
NBANDSO = 20 ; NBANDSV = 14
ISMEAR = 0 ; SIGMA = 0.05
EDIFF = 1E-8
LHFCALC = .TRUE. ; AEXX = 0.25 ; HFSCREEN = 0.0 ; PRECFOCK = Normal
LORBITALREAL=.TRUE.
KPAR = 4

ALGO = BSE ; ANTIRES = 0
ENCUT = 400
ENCUTGW = 270
ENCUTGWSOFT = 220

LNONCOLLINEAR = TRUE
LSORBIT = TRUE
MAGMOM = 0 0 2.660 0 0 2.660 0 0 2.660 0 0 2.660 36*0
LORBIT = 11

NBSEEIG = 10
BSEHOLE = 0.0 0.15 0.0

Image
Image


alexey.tal
Global Moderator
Global Moderator
Posts: 510
Joined: Mon Sep 13, 2021 12:45 pm

Re: Explicit SOC treatment in BSE calculations

#2 Post by alexey.tal » Fri Oct 17, 2025 4:58 pm

Dear arslan_mazitov,

Thank you for your question.

1. Does BSE implementation in VASP then have an explicit SOC term in the BSE Hamiltonian?

Both GW and BSE support SOC in VASP.

3. What is the fundamental difference between the way the GW eigenvalues are computed (I'm using the EVG0W0, neglecting off-diagonal terms), compared to the BSE run, which can result in such an effect (i.e. same GW eigenvalues and different BSE eigenvalues upon a rigid rotation of spins)? Is it the presence of the explicit long-range Coulomb term in BSE, or the fact that we compute a two-electron integrals (instead of one-electron in the GW run), or anything else? Could it be that neglecting the off-diagonal terms in GW actually stipulates the same exact band structure?

BSE in VASP reads directly the electronic structure from WAVECAR, i.e., if SOC is included both spinor component should be present in WAVECAR. Indeed, the results you show looks strange. As BSE reads orbitals and wavefunctions from GW and if you used G0W0, the orbitals don't change and the eigenvalues don't differ that much (judging from your figures) , thus the only difference must come from the screening potential WFULL. But I don't immediately see a reason why the screening would be so drastically different for these two cases.

4. Could it be that the absence of vertex corrections in G0W0 leads to such a degeneracy in the band structures?

I don't see a straightforward mechanism where the lack of vertex corrections would lead to such a difference in the dielectric functions. Usually similar electronic structures lead to similar BSE dielectric functions.

5. In general, is there any theoretical documentation that describes how the GW and BSE subroutines are implemented in VASP in the SOC case? The only thing I managed to find in the net are classic papers of Shishkin et al. from 2006-2007 (for GW) and Sander et at. 2015 (for BSE), but all of them are formulated in the case of no spins.

There is no dedicated publication on SOC in GW and BSE. But you can find the discussion on the SOC implementation in VASP on the wiki and here Steiner et al., Phys. Rev. B, 224425 (2016). An example of SOC application in BSE+GW in VASP can be found here: Liu et al., Phys. Rev. Materials, 075003 (2018).

For a detailed discussion it would be helpful to see the output files from these calculations.
Could you please provide all the relevant input and output files (see the forum guidelines)? In particular, I would like to see OUTCAR and vasprun.xml files from all the steps of your calculations.

Best wishes,
Alexey


Post Reply