Open yinchen1990 opened 18 hours ago
Hi @yinchen1990, thank you for your inquiry. Indeed, I am aware of the new impurity solver you developed and would be interested to try it in the long run so your plan sounds great. :) Regarding the state of the fully charge self-consistent (CSC) calculations, this depends on the DFT code you'd like to use. In solid_dmft we have two tutorials on CSC calculations (with VASP or Quantum Espresso) and a fairly easy setup for impurity solvers that would probably be easiest to start from for you. I.e., we currently also have an interface to the FTPS solver that is probably the closest to your solver. That being said, both Wien2k and Elk also have a CSC interface in DFTTools, but they are not integrated in solid_dmft at the moment. Regarding the usage of SOC, that depends on your choice of DFT code. In VASP it's under development, in Wien2k and Elk I think it works, and for Quantum Espresso I have to check. (@alberto-carta, do you know?)
Thank you for your response. My question is as follows: In the Anderson impurity model with SOC, both the Green's function and the self-energy have off-diagonal elements, not just diagonal ones. Currently, in the NORG impurity solver, the Green's function and self-energy obtained for the SOC Anderson impurity model contain off-diagonal elements. In this case, does the TRIQS DFTTools tool take into account the presence of off-diagonal elements in the self-energy and Green's function?
For instance, in the two types of double-counting corrections within the DFTTools tool, are only the diagonal elements considered, or are off-diagonal elements also taken into account? When passing the self-energy back to DFT within DFTTools, does it include off-diagonal elements, or does it only consider diagonal elements? I am currently unsure if the design of DFTTools initially accounted for the presence of off-diagonal elements in these cases.
在 2024年10月30日星期三,Sophie Beck @.***> 写道:
Hi @yinchen1990 https://github.com/yinchen1990, thank you for your inquiry. Indeed, I am aware of the new impurity solver you developed and would be interested to try it in the long run so your plan sounds great. :) Regarding the state of the fully charge self-consistent (CSC) calculations, this depends on the DFT code you'd like to use. In solid_dmft https://triqs.github.io/solid_dmft/tutorials.html we have two tutorials on CSC calculations (with VASP or Quantum Espresso) and a fairly easy setup for impurity solvers that would probably be easiest to start from for you. I.e., we currently also have an interface to the FTPS solver https://journals.aps.org/prx/abstract/10.1103/PhysRevX.7.031013 that is probably the closest to your solver. That being said, both Wien2k and Elk also have a CSC interface in DFTTools, but they are not integrated in solid_dmft at the moment. Regarding the usage of SOC, that depends on your choice of DFT code. In VASP it's under development, in Wien2k and Elk I think it works, and for Quantum Espresso I have to check. @.*** https://github.com/alberto-carta, do you know?)
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2447624505, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFPAXKIBUNMEMRQPSI3Z6D6OPAVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBXGYZDINJQGU . You are receiving this because you were mentioned.Message ID: @.***>
I can confirm that the SOC (i.e. off-diagonal elements in the Gf or self-energy) can be taken into account. One example is described here: https://triqs.github.io/dft_tools/latest/tutorials.html#sr2mgoso6-with-soc-non-magnetic
Yes, I am aware of this example, but it is a one-shot calculation, not fully charge self-consistent. Fully charge self-consistent calculations involve passing the DMFT-calculated self-energy with off-diagonal elements back to DFT, as well as performing double-counting corrections with off-diagonal elements. Currently, there are no examples of fully charge self-consistent SOC calculations in the documentation. I am not sure if anyone has previously implemented fully charge self-consistent DFT+DMFT with SOC in TRIQS or if only one-shot SOC calculations have been realized. If there are implementations of fully charge self-consistent SOC, are there any examples or references?
在 2024年10月31日星期四,Sophie Beck @.***> 写道:
I can confirm that the SOC (i.e. off-diagonal elements in the Gf or self-energy) can be taken into account. One example is described here: https://triqs.github.io/dft_tools/latest/tutorials.html#sr2m goso6-with-soc-non-magnetic
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2447777600, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFJIUSNENW4XZPNMPCTZ6EEPZAVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBXG43TONRQGA . You are receiving this because you were mentioned.Message ID: @.***>
Dear YinChen,
Thank you for your question and for the contribution that you want to make to TRIQS. It would be incredibly exciting to add another solver to our solid_dmft arsenal.
I can answer for the Quantum Espresso side of things that for charge-self consistent calculation, at the moment we do not have an interface for spinor occupation corrections, but this should be present/is under development for Vasp/Wien2k/Elk as Sophie pointed out before. In solid_dmft at the moment we support the interfaces to Vasp and QE.
This is just an implementation issue and all the element to extend the current implementation are in principle there and should not be too difficult, just it hasn't been done so far. Feel free to write to me if this is a route you are interested in pursuing.
A temporary workaround for this would be to treat the spin-orbit coupling within the tight-binding model, by adding a spin off-diagonal one particle shift to the self energy to mimic the effects of SOC, and average out the density before feeding it back to the DFT code. This would treat the SOC physics completely outside of DFT and use DFT only for the exchange-correlation part coming from the density.
Please tell me if this answers your questions and feel free to write us,
Alberto
Hi @yinchen1990 ,
I think @phibeck and @alberto-carta already gave a quite comprehensive answer about the current state. I would just like to clarify one thing:
Fully charge self-consistent calculations involve passing the DMFT-calculated self-energy with off-diagonal elements back to DFT, as well as performing double-counting corrections with off-diagonal elements.
to perform the CSC update you will use the funktion calc_density_correction
within the SumK class of dft_tools. This will calculate from the self-energy obtained in DMFT and the double counting correction, the occupation (or in VASP and QE? the changes of the occupations) at each k-point for each original KS orbital. Hence, you will pass to the DFT code occupation matrices that are indeed off-diagonal, always. So the only thing that has to be implemented is to write out spinor occupation updates. As correctly stated here already we do allow for off-diagonal elements everywhere. Also in the Double counting. The common analytic expressions of the DC usually just happen to be only diagonal.
I hope that clarifies a bit the task or workflow.
Best, Alex
Thank you very much for your response; I think I understand now. I'll first get familiar with TRIQS’s DFT+DMFT setup, then integrate the NORG impurity solver to perform SOC calculations. I’ll also study the core source code of DFTTools, and I’ll reach out for further questions if I encounter any issues.
在 2024年10月31日星期四,Alberto Carta @.***> 写道:
Dear YinChen,
Thank you for your question and for the contribution that you want to make to TRIQS. It would be incredibly exciting to add another solver to our solid_dmft arsenal.
I can answer for the Quantum Espresso side of things that for charge-self consistent calculation, at the moment we do not have an interface for spinor occupation corrections, but this should be present/is under development for Vasp/Wien2k/Elk as Sophie pointed out before. In solid_dmft at the moment we support the interfaces to Vasp and QE.
This is just an implementation issue and all the element to extend the current implementation are in principle there and should not be too difficult, just it hasn't been done so far. Feel free to write to me if this is a route you are interested in pursuing.
A temporary workaround for this would be to treat the spin-orbit coupling within the tight-binding model, by adding a spin off-diagonal one particle shift to the self energy to mimic the effects of SOC, and average out the density before feeding it back to the DFT code. This would treat the SOC physics completely outside of DFT and use DFT only for the exchange-correlation part coming from the density.
Please tell me if this answers your questions and feel free to write us,
Alberto
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2448025224, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFLQL26YQK5F7QJ6P5DZ6EQH5AVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBYGAZDKMRSGQ . You are receiving this because you were mentioned.Message ID: @.***>
Thank you very much for your response; your answer was very clear. I am now very confident about TRIQS, and I really appreciate its modular code structure. I'll first get familiar with TRIQS’s DFT+DMFT and DFTTools, then integrate the NORG solver. I’ll reach out to consult you again if I encounter any issues.
在 2024年10月31日星期四,Alexander Hampel @.***> 写道:
Hi @yinchen1990 https://github.com/yinchen1990 ,
I think @phibeck https://github.com/phibeck and @alberto-carta https://github.com/alberto-carta already gave a quite comprehensive answer about the current state. I would just like to clarify one thing:
Fully charge self-consistent calculations involve passing the DMFT-calculated self-energy with off-diagonal elements back to DFT, as well as performing double-counting corrections with off-diagonal elements.
to perform the CSC update you will use the funktion calc_density_correction within the SumK class of dft_tools. This will calculate from the self-energy obtained in DMFT and the double counting correction, the occupation (or in VASP and QE? the changes of the occupations) at each k-point for each original KS orbital. Hence, you will pass to the DFT code occupation matrices that are indeed off-diagonal, always. So the only thing that has to be implemented is to write out spinor occupation updates. As correctly stated here already we do allow for off-diagonal elements everywhere. Also in the Double counting. The common analytic expressions of the DC usually just happen to be only diagonal.
I hope that clarifies a bit the task or workflow.
Best, Alex
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2448048680, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFLOQBA54GFVTLSINHTZ6EREXAVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBYGA2DQNRYGA . You are receiving this because you were mentioned.Message ID: @.***>
Hi, thanks for your interest in the TRIQS package! I agree with almost everything that has been said, just want to confirm a few things: SOC calculations (full charge self consistent) are implemented for Wien2k and (since TRIQS 3.3) also for VASP. The charge updates take the full matrix structure of the self energy into account (as Alex pointed out already). I am not so sure, though, what you mean by off diagonals of the double counting correction. As far as I am concerned, I treat the double counting correction as an identity matrix in orbital space, hence it is basically a number. A long time ago we tested orbital dependent double countings, which had some issues back then. The first full charge self consistent tests with full SOC included were done for gamma-Ce, using Wien2k. We used the standard FLL double counting back then.
Here is the English translation:
Then I must have misunderstood. I thought that when the self-energy has off-diagonal elements, the double-counting correction would also have off-diagonal elements, but it turns out it’s just a scalar value.
Regarding what you mentioned: "The first fully charge self-consistent tests with full SOC included were done for gamma-Ce, using Wien2k. We used the standard FLL double counting back then."—I couldn’t find this example on the official website; there is only a one-shot SOC example. Do you have a tutorial for this fully charge self-consistent SOC example? I think adding such an example to the TRIQS website would be very helpful, as it would clarify that TRIQS supports not only one-shot SOC but also fully charge self-consistent SOC.
在 2024年10月31日星期四,Markus Aichhorn @.***> 写道:
Hi, thanks for your interest in the TRIQS package! I agree with almost everything that has been said, just want to confirm a few things: SOC calculations (full charge self consistent) are implemented for Wien2k and (since TRIQS 3.3) also for VASP. The charge updates take the full matrix structure of the self energy into account (as Alex pointed out already). I am not so sure, though, what you mean by off diagonals of the double counting correction. As far as I am concerned, I treat the double counting correction as an identity matrix in orbital space, hence it is basically a number. A long time ago we tested orbital dependent double countings, which had some issues back then. The first full charge self consistent tests with full SOC included were done for gamma-Ce, using Wien2k. We used the standard FLL double counting back then.
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2448207195, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFPTB7EIFPWSXQZPHILZ6EZFFAVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBYGIYDOMJZGU . You are receiving this because you were mentioned.Message ID: @.***>
In principle, the example is here: https://triqs.github.io/dft_tools/latest/tutorials/ce-gamma-fscs_wien2k.html
However, when looking at it now, I am afraid that the Hubbard I solver does not work any more as shown in the example... There is a new Hubbard I solver, but I never used it for that purpose. @the-hampel, there have been discussions about hubbard I in solid_dmft, is there an update from that side maybe?
Thank you for your reply. This fully charge self-consistent non-SOC example ( https://triqs.github.io/dft_tools/latest/tutorials/ce-gamma-fscs_wien2k.html) combined with the one-shot SOC example ( https://triqs.github.io/dft_tools/latest/tutorials/sr2mgoso6_soc.html) should be able to achieve fully charge self-consistent SOC.
在 2024年10月31日星期四,Markus Aichhorn @.***> 写道:
In principle, the example is here: https://triqs.github.io/dft_tools/latest/tutorials/ce- gamma-fscs_wien2k.html
However, when looking at it now, I am afraid that the Hubbard I solver does not work any more as shown in the example... There is a new Hubbard I solver, but I never used it for that purpose. @the-hampel https://github.com/the-hampel, there have been discussions about hubbard I in solid_dmft, is there an update from that side maybe?
— Reply to this email directly, view it on GitHub https://github.com/TRIQS/dft_tools/issues/260#issuecomment-2448397010, or unsubscribe https://github.com/notifications/unsubscribe-auth/BMRPTFPX3QDAV5HOZ457OJTZ6FEB3AVCNFSM6AAAAABQ4K4RNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBYGM4TOMBRGA . You are receiving this because you were mentioned.Message ID: @.***>
Yes we should update the tutorial as soon as possible. I mean in principle the scripts are very similar to the changes @harrisonlabollita recently did on the hubbardI repository: https://github.com/TRIQS/hubbardI/pull/17
I would like to perform fully charge self-consistent DFT+DMFT calculations with spin-orbit coupling (SOC) using TRIQS. Does the current version of DFTTools in TRIQS support this feature? If not, I am considering modifying the interface between DFT and DMFT myself. Would these modifications be extensive? Are there good resources you would recommend for this? My research group has developed a zero-temperature impurity solver called the Natural Orbital Renormalization Group (NORG). You can find several publications on it by searching for "NORG" on Google Scholar. I want to integrate this impurity solver into TRIQS to perform zero-temperature SOC calculations. I like the open-source nature and modularity of TRIQS. After I successfully integrate the zero-temperature impurity solver NORG with TRIQS and can perform fully charge self-consistent DFT+DMFT calculations with SOC (spin-orbit coupling), I will open-source NORG combine with TRIQS. Could you please help answer my questions? Thank you.