[QE-users] Requesting Help With Spin Orbit Coupling Spin-Separated Bands Extraction

Luiz Gustavo Davanse da Silveira lgsilveira at fisica.ufpr.br
Thu Mar 23 15:16:32 CET 2023


Dear Pratyush Manocha,

> I'm repeating this just for clarity. So, "lsigma = 1,2,3" would give me
> the expectation values of the spin operator along the cartesian
> coordinate axes, x, y, and z, right?

Right.

> How would I go about doing this? Is it possible to do this on Quantum
> Espresso itself? I don't think doing this would hold any value because
> the spin-up direction is also changing as the spin axis is changing.
> However, if the spin vector in the band is aligned in the local spin-up
> direction at all points along the k-path, it would be considered the
> spin-up band. So, I would like to learn how to compute it to increase my
> understanding of the system.

It doesn't. But since "lsigma" gives you the three orthogonal vector
components, by using regular vector properties you can obtain the polar
and azimuthal angles. As I said in my previous e-mail, if you are
interested in identifying spin polarized bands, using a color scale to
express spin components values on a band structure plot should give you
the information you need without much hassle.

Best regards,

Luiz Gustavo Silveira
Assistant professor, Department of Physics - Federal University of Paraná
Curitiba - Brazil

Em Qua, Março 22, 2023 8:08 pm, Manocha, Pratyush escreveu:
> Dear Professor Luiz,
>
>
> Thank you for your response. I have a couple of more questions.
>
>
>> It gives you the expectation values of the spin operator.
>>
>
>> Simply put, "lsigma = 1,2,3" gives you the three orthogonal components
>> of the spin vector.
>
> I'm repeating this just for clarity. So, "lsigma = 1,2,3" would give me
> the expectation values of the spin operator along the cartesian
> coordinate axes, x, y, and z, right?
>
>> You could, in principle, determine which direction this is and define
>> locally what is spin up and spin down, I don't know if it's worth it,
>> though.
>
> How would I go about doing this? Is it possible to do this on Quantum
> Espresso itself? I don't think doing this would hold any value because
> the spin-up direction is also changing as the spin axis is changing.
> However, if the spin vector in the band is aligned in the local spin-up
> direction at all points along the k-path, it would be considered the
> spin-up band. So, I would like to learn how to compute it to increase my
> understanding of the system.
>
>> But if the bands are splitted and spin-polarized you will end up with a
>> graph showing something similar to spin-up and spin-down bands.
> Got it.
>
>
> Regards,
> Pratyush Manocha
> Graduate Student | M.S. Electrical & Computer Engineering
> School of Electrical and Computer Engineering
> Georgia Institute of Technology
> [cid:55e08a0f-cc73-4d36-8b82-45ea4b522d9d]
> ________________________________
> From: Luiz Gustavo Davanse da Silveira <lgsilveira at fisica.ufpr.br>
> Sent: Monday, March 20, 2023 16:25
> To: Manocha, Pratyush <pmanocha at gatech.edu>
> Cc: users at lists.quantum-espresso.org <users at lists.quantum-espresso.org>
> Subject: Re: [QE-users] Requesting Help With Spin Orbit Coupling
> Spin-Separated Bands Extraction
>
>
> Dear Pratyush Manocha,
>
>
> Now I'm the one who has to apologize about a delayed response.
>
>
>> Thank you for informing me about the "lsigma" keyword. While it doesn't
>>  solve my problem of segregating spin-up bands from spin-down ones, it
>> gives me the expectation values of the total angular momentum along the
>>  x, y, and z axes, right?
>
> It gives you the expectation values of the spin operator.
>
>
>> I tried extracting the data for GaAs, and I noticed from the results
>> that often, the expectation values are values other than 0.5, 0, and
>> -0.5;
>> does this mean that, at these points, the band has a mix of both spin-up
>>  and spin-down electrons?
>
> Well, you might find sources that describe it like that, but, as I see
> it, in noncollinear calculations each electronic state can have its own
> spin quantization axis. Therefore, global spin-up and spin-down states may
> not be a good description. Rather, depending on the complexity of your
> system, at each k-point of a given band spins may be align in a particular
>  direction. You could, in principle, determine which direction this is
> and define locally what is spin up and spin down, I don't know if it's
> worth it, though. Simply put, "lsigma = 1,2,3" gives you the three
> orthogonal components of the spin vector. If you take the modulus, the
> result should be 0.5 (or close to it).
>
>> Another question I had is: when you say that I can color the bands
>> according to the spin values like a fatband plot, do you mean that each
>> band would individually be coloured from "colour a" to "colour b" based
>>  on the spin values at the different k points along the chosen
>> "k-path?"
>>
>
> Exactly. This form of showing the data might not be useful if bands are
> degenerate. But if the bands are splitted and spin-polarized you will end
> up with a graph showing something similar to spin-up and spin-down bands.
>
>
> Best regards,
>
>
> Luiz Gustavo Silveira
> Assistant professor, Department of Physics - Federal University of Paraná
> Curitiba - Brazil
>
>
>
> Em Qui, Março 9, 2023 11:47 pm, Manocha, Pratyush escreveu:
>
>> Dear Professor Luiz,
>>
>>
>>
>> I apologize for my delayed response; I had exams to appear for.
>>
>>
>>
>> Thank you for informing me about the "lsigma" keyword. While it doesn't
>>  solve my problem of segregating spin-up bands from spin-down ones, it
>> gives me the expectation values of the total angular momentum along the
>>  x, y, and z axes, right?
>>
>> I tried extracting the data for GaAs, and I noticed from the results
>> that often, the expectation values are values other than 0.5, 0, and
>> -0.5;
>> does this mean that, at these points, the band has a mix of both spin-up
>>  and spin-down electrons?
>>
>> Another question I had is: when you say that I can color the bands
>> according to the spin values like a fatband plot, do you mean that each
>> band would individually be coloured from "colour a" to "colour b" based
>>  on the spin values at the different k points along the chosen
>> "k-path?"
>>
>>
>> Thank you very much for helping me with this!
>>
>>
>>
>> Regards,
>> Pratyush Manocha
>> Graduate Student | M.S. Electrical & Computer Engineering
>> School of Electrical and Computer Engineering
>> Georgia Institute of Technology
>> ________________________________
>> From: Luiz Gustavo Davanse da Silveira <lgsilveira at fisica.ufpr.br>
>> Sent: Thursday, February 16, 2023 14:03
>> To: Manocha, Pratyush <pmanocha at gatech.edu>
>> Cc: users at lists.quantum-espresso.org <users at lists.quantum-espresso.org>
>> Subject: Re: [QE-users] Requesting Help With Spin Orbit Coupling
>> Spin-Separated Bands Extraction
>>
>>
>>
>> Dear Pratyush Manocha,
>>
>>
>>
>> I believe the spin_component variable doesn't work with noncollinear
>> calculations. You can however use the lsigma variable in bands.x input
>> to get the spin components at each k-point for every band. Then, for
>> instance, you can use this information to color the band plot according
>>  to spin values (like a fatbands plot).
>>
>> Best Regards,
>>
>>
>>
>> Luiz Gustavo Silveira
>> Assistant professor, Department of Physics - Federal University of
>> Paraná
>> Curitiba - Brazil
>>
>>
>>
>> Em Seg, Dezembro 19, 2022 7:22 pm, Manocha, Pratyush escreveu:
>>
>>
>>> Dear All,
>>>
>>>
>>>
>>>
>>> I am using QE-7.1 and want to plot the spin-orbit coupled bands for
>>> Silicon and later on, GaN. I ran a few simulations for Silicon (with a
>>>  fully relativistic pseudopotential obtained from PSLibrary 1.0.0) by
>>>  turning on the "lspinorb" and "noncolin" keywords and specifying a
>>> non-zero "starting_magnetization" in the "&system" namecard.  The
>>> simulation runs smoothly, however, when I try to extract the bands
>>> for just spin-down electrons using "spin_component=2" in the input
>>> file given to the bands.x code, it returns the following error: Error
>>> in routine punch_bands (1):      incorrect spin_component???.
>>>
>>> I went through the archive and also tried simulating with various
>>> different keyword combinations using "nspin" and "lspinorb", and I
>>> found that "lspinorb" requires non-colinear spin vectors whereas
>>> "nspin=2"
>>> requires colinear spins, therefore, they would not work
>>> simultaneously. As a result, I can not use the "spin_component"
>>> keyword in the bands.x input file to extract the spin separated bands.
>>> So my question is: if
>>> I
>>> am using "lspinorb=.true." and "noncolin=.true.", is there a way to
>>> extract the spin-up and spin-down conduction and valence bands
>>> separately?
>>>
>>> Any help would be appreciated.
>>>
>>>
>>>
>>>
>>> Regards,
>>> Pratyush Manocha
>>> Graduate Student | M.S. Electrical & Computer Engineering
>>> School of Electrical and Computer Engineering
>>> Georgia Institute of Technology
>>> [cid:f2b1f8a4-9ef8-4579-9715-844bf6b1658b]
>>>
>>>
>>>
>>>
>>
>>
>>
>
>
>




More information about the users mailing list