-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spin symmetry operations, called spin_sop in yambo, are not a group (just half of the SU(2) group) #103
Comments
Commit a3133b8 for fixing WF_phase_matrices is related to this |
Issue https://github.com/yambo-code/yambo-devel/issues/544 is connected to this. All points in the code where sop_tab is used needs to be checked in presence of SOC |
Hi. I cannot get where the problem is. Can you please provide some notes with the math? THX. |
Sakurai, p.159 - 167 |
Great. That's really a milestone. We have been working on controlling the phases of el-ph matrix elements and constructing proper exc-ph matrix elements for so long! Now we are the first able of doing so on top of simulations taking advantage of symmetry operations. Thank a lot to the help from @muralidhar-nalabothula and the Luxembourg group. It's time to produce nice results. |
Which one? Jun John wrote several books ;) Thanks |
For me Sakurai means "Modern Quantum Mechanics". In the pages you will se the details of the mapping SO(3) -> SU(2), e.g. how to get a spin symmetry operation, given a spatial symmetry operation. Formally there is an isomorphism also written in the literature SO(3) ~ SU(2)/Z2. These notes are also useful: https://www.pas.rochester.edu/assets/pdf/undergraduate/su-2s_double_covering_of_so-3.pdf In practice a rotation by theta in real space, becomes a rotation by theta/2 in spin space. The However you cannot use the |
I am a little bit lost :( Sorry. The fact that spatial rotations correspond to spin rotations with half the angle is a known fact in QM. But early in this issue you mention Trev and INV. Trev is a different story and it is discussed at page 273 of the Sakurai book. Spatial INV I don't remember how to treat in the spin space. Do you have notes about this? Moreover, did we write notes when the spinorial extension of Yambo was coded? I am not among the authors of the routines that use spin_sop so I don't have any written note. I do believe that we should have always the math connected to the specific piece of code. Me included, of course. Maybe it was me that did this mistake. But it looks pretty bad to me :( Something that we could have easily avoided being more careful with the math and discussing the physics beyond that specific extension. |
Hello Davide, Spacial inversion does nothing to the spinors (angular momentum does not change with parity). Moreover all spacial symmetries (including inversion) form a group. So it should be perfectly fine with replacing two symmetry operations (including inversion) with one. The issue should be only with the time reversal and in this case, you will loose the information when to apply the time reversal when you combine two symmetries. I am not sure what is the issue with the inversion symmetry. Best regards, |
Thanks Murali. Yeah, inversion symmetry is fine, and leaves spin invariant. For replacing "2 operations with 1" .. it depends on what you mean. What we were doing in yambo, however, was to construct the group table of the space group (using real space operations only). This does not work when combined with SOC. See above example where S2 is rotation of 180°, and I want to apply it twice. The group table in real space tells me O2xO2= identity (only other symmetry in the group for the example). However, in spin space, the product U2xU2 goes out of SU(2)/Z2 which is not a group indeed. We should generate an extended group table for the whole SU(2), e.g. doubling the total number of symmetry operations, and use it. For now, in the building of the phase matrices (what you call Dmat), we avoid using the group table, and we apply the two syms one after the other to the WFs. Doing so the exc-ph matrix elements are perfectly symmetric also in presence of SOC. |
Let's take the D4 group . It is composed by 8 symmetries. Simple. What are the corresponding spin symmetries? |
Let's forget spin_sop. We have a group of spatial (+ eventually inversion) symmetries. Let's ignore the Trev for the moment. From Sakurai book (Eng edition) I read the paragraph below. This would mean we need to define a set of 2x2 matrices which translate a spatial rotation in a spin rotation given by Eq. 3.91. The spatial inversion is discussed at page 165 and we should use Eq. 3.83 |
This becomes the double point group with 16 symmetry operations in the link below. Listed below. First 8 symmetries with their connected symmetries in spin space (derived as in Sakurai). |
Are you sure? Is this consistent with the definition of Sakurai? |
What I understand is that (based on the math I got from Sakurai) we should build an array of 2x2 matrices with dimension n_sym and use 3.91 and 3.83 above to define each matrix depending if it contains or not spatial inversion. |
This is the part consistent with Sakurai. Which gives the first half of SU(2), e.g. SU(2)/Z2.
Then there are the other 8 syms. Check the spatial part, it is identical between 1 and 9, 2 and 10, 3 and 11, etc ... |
Attached the 5 pages of Sakurai on the representation of spin simmetries corresponding to a real-space rotation written in terms of Euler angles. On the basis of these pages I do think we should use 3.83 and 3.91. Thus we need to rewrite the carthesian rotations in euler representations and associate to each real-space symmetry operation a spin one. If you have alternatives definitions please provide notes and/or references. Thx |
We do that here: https://github.com/yambo-code/yambo/blob/master/src/setup/build_spin_sop.F just, this is only half of the story. Again, for the example of the D4 group that you propose, with that we obtain the first 8 symmetries in soc space. |
Ok. Then is easy. From \alpha, \beta etc one writes the spin 2x2 matrices. Regarding the doubling of the symmetries I don't get where you get this from mathematically. Please provide notes and/or references. Thx |
Dear Andrea, The group that Davide is referring to is commonly known as the "double group". You can find the details in any standard group theory books such as from Mildred Dresselhaus (chapter 14) (like here), Group theory and electronic energy bands in solids by Cornwell (Chapter 8), or the one from C. J. Bradley and A. P. Cracknell. Best regards, |
Dear Murali, can you extract the pages relevant to the discussion? The Dresselhaus book is almost 600 pages. In addition what we need to understand is: given a certain group of symmetries of the lattice how do we rotate the spinorial wave-function? I think it is a simple question. Besides this we can talk about isomorphic groups, reducible representations and all the other mathematical aspects but for what regards Yambo we just need to rotate spinorial Bloch states. The best is to produce some notes. I could do it myself but I am in the middle of too much math in these days. |
@muralidhar-nalabothula : besides this issue of rotations in spin space, perhaps it could be useful to the discussion if you want to share some of your notes about properly performing symmetry rotations in general for physical quantities. I feel that this spinorial discussion is only a footnote of the real work that was done by you in fixing how yambo treats rotations... I have the impression that the proper calculation of the electronic representations - double group or not - coded by @sangallidavide as |
I totally agree, it would be great if @muralidhar-nalabothula could share the notes. @palful what is this WF_phases about? In yambo I coded the phases to calculate the excitonic matrix elements using symmetries. Are those you are referring to? But those phases have little to do with the theory of symmetries. |
Any chance to share the pdf? ;) |
BTW, do we agree that the few pages of Sakurai solve definitively the problem? We can of course define a larger group in the spin basis. But this should not enter as there will be a 1-1 correspondence between spatial and spin symmetries. Therefore if a product of spatial symmetry is still a spatial symmetry this is reflected in a closed operation also in the spin space. At least this is what I understand now from the (simple) discussion presented in the book of Sakuray. Dunno if the references above lead to a different conclusion. |
@muralidhar-nalabothula thanks so much for sharing these pages. I totally agree with you and with the fact that we don't need the double group. Looking forward to your notes. Do you discuss in the notes when the use of the double group is necessary? This aspect triggers me, indeed ;) |
It looks to me that this HUGE mistake affects ALL spinorial calculations of Yambo. Thus the code produces questionable results whenever there are spinors and symmetries. Can you confirm? |
No, the idea of a double group is something I never use as I simply like to label the representations with total angular momenta and parities. Maybe I can explain what YAMBO does (@sangallidavide, correct me if there is something a bit different YAMBO does). For simplicity, let's take the rotations. The unitary operator for rotation For electrons, the operator Putting it all together, the application of the rotation operator on a spinor wavefunction can be written as: In YAMBO, Clearly, we do not need anything regarding the double group. We can simply label the states with the total angular momentum (now they will be half-integers) along the rotation axis and use parity for reflections and inversions. The standard point group tables are defined for integer spins, so there will be missing representations in case of electrons, In order to accommodate the missing representations for half-integer |
Dear @muralidhar-nalabothula. I agree with you. Only a minor question regarding the inversion. From Sakurai it looks to me that if then it follows Do you agree? Regarding Yambo I had a quick look at the code proposed in this issue and I cannot really understand what the code is doing. Wouldn't be enough just to ammend (eventually) spin_sop and apply the 2x2 operation along with the spatial at each point where the electronic WF are used? Something like where the |
Why do you talk of angular momentum? In solids, at difference with atoms, |
What you write is not correct IMO, inversion will not effect the angular momentum, so the spinors are unaffected in case of inversion. Could you please point where you noticed this in Sakurai?
Yes, I would like to do in this way too, but I guess it it matter of taste or maybe there are other factors that made them to do this way.
When R is a symmetry i.e U(R) commutes with the Hamiltonian, the total angular momentum along the axis of rotation is conversed and is a well defined quantity. I agree, |
Eq. 3.83 (see output.pdf I attached to a previous comment). Let me know why you think it is not correct. Thx.
I am sorry but this paragraph is not clear to me. Can you point to a specific page/note of a reference? |
The only parts of the code affected are ones where
In practice, I do not know if there is any yambo simulation at present that is affected by this issue. |
I am still lost. The problem with the definition of the spin rotations was solved with the proper definition of the Still, that issue affects, theoretically, ALL spin rotations in the code and, thus, all results in the spinorial basis. Indeed we should also try GW, HF and more to see if issue https://github.com/yambo-code/yambo-devel/issues/544 is or not restricted only to BSE. Said this and on the basis of the @muralidhar-nalabothula confirmation that the double spin group is not needed I don't understand anymore what is the current issue about. |
I only partially agree about this. In all cases where the e-p matrix elements enter squared ( Another case where phases can appear are in the case of degenerate electronic levels. But as those are summed it holds the same argument used to support the case of dipoles, for example. |
Issue #50 did not affect the results. Before and after nothing changed.
Issue #544 is specific of BSE.
The present issue is not related to spin_sop (these are fine), just to the use of sop_table, e.g. considering spin_sop as if they were a group. As the title say. I propose let's slow down a bit and take some time to study and understand the point. Also because, as said, there is nothing not working in yambo at the moment. The issue we had was with the phases of exciton wave-functions and elph matrix elements. |
Applying in sequence two spin_sop operations gives a different result w.r.t. applying the spin_sop operation extracted from sop_tab, e.g. the table which constructs the map of composed symmetry operations.
The table is based on
O(3)
symmetry operation, e.g.SO(3) x Inv
(withInv
the inversion, either spatial-inversion or time-reversal), which constitute a closed group. However it cannot be used in the in spin spaceSU(2) x Trev
.Even without SOC, the operation does not work. Inded the relation between SU(2) and SO(3) is defined up to a factor 2. For a rotation of 360 degree the spin gets a factor -1
The text was updated successfully, but these errors were encountered: