rokzitko / nrgljubljana

NRG Ljubljana is a numerical renormalization group implementation for solving quantum impurity problems in theoretical physics
GNU General Public License v3.0
31 stars 8 forks source link

Is there a way to use this code without Mathematica? #15

Open linwaytin opened 1 year ago

linwaytin commented 1 year ago

Hi,

This package looks awesome! I would like to try it but I do not have Mathematica. I know there is an interface but it seems to only support pre-defined model?

Is there a way to allow me to use the code with a custom model? Thank you.

rokzitko commented 1 year ago

You can use the code without Mathematica, but you need to create the input file manually. That is certainly possible, but it can be tedious.

The Python version of the code is fully decoupled from Mathematica, but again, to add an additional model one needs to use Mathematica (but just one single time to generate the template files).

On 19 Apr 2023, at 21:29, linwaytin @.***> wrote:

Hi,

This package looks awesome! I would like to try it but I do not have Mathematica. I know there is an interface but it seems to only support pre-defined model?

Is there a way to allow me to use the code with a custom model? Thank you.

— Reply to this email directly, view it on GitHub https://github.com/rokzitko/nrgljubljana/issues/15, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG57NBAA2OA77LARFHW4L4LXCA4KBANCNFSM6AAAAAAXEQLBOQ. You are receiving this because you are subscribed to this thread.

linwaytin commented 1 year ago

Thank you. So the role of Mathematica is to generate the input file, which is quite complicated. What is the content of this input file? And how does Mathematica generate it?

I'm wondering if I can generate the input file with python or some other tool I have.

rokzitko commented 1 year ago

The content of that file are eigenvalues for the initial cluster and the matrix elements of all operators of interest. Yes, you could use python to generate it. In TRIQS interface version, https://triqs.github.io/nrgljubljana_interface/latest/, a perl script is used in combination with some external tools to generate the input file from templates. It should be possible to rewrite all that in Python. The required template file for a new model can be generated by hand. In fact, this is how things were done in the past before computer algebra system started to be used. But that is a lot of work, quite error prone, and I would really not recommend it.

On 20 Apr 2023, at 17:45, linwaytin @.***> wrote:

Thank you. So the role of Mathematica is to generate the input file, which is quite complicated. What is the content of this input file? And how does Mathematica generate it?

I'm wondering if I can generate the input file with python or some other tool I have.

— Reply to this email directly, view it on GitHub https://github.com/rokzitko/nrgljubljana/issues/15#issuecomment-1516559532, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG57NBCESEGU5OGJORPFF43XCFKYZANCNFSM6AAAAAAXEQLBOQ. You are receiving this because you commented.

linwaytin commented 1 year ago

Thanks for the explanation. If I want to study the Anderson impurity model with 2 impurities, instead of one, can I do that easily with the TRIQS interface?

rokzitko commented 1 year ago

Using the TRIQS interface is easy, but actually setting up new models is not, that takes some effort and time on the part of the user, precisely because of the decoupling from Mathematica. With Mathematica and the standard version of the code, changing model definition is quite trivial.

On 22 Apr 2023, at 03:52, linwaytin @.***> wrote:

Thanks for the explanation. If I want to study the Anderson impurity model with 2 impurities, instead of one, can I do that easily with the TRIQS interface?

— Reply to this email directly, view it on GitHub https://github.com/rokzitko/nrgljubljana/issues/15#issuecomment-1518465648, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG57NBHIEJFINGKRWEARRNTXCM2WZANCNFSM6AAAAAAXEQLBOQ. You are receiving this because you commented.

linwaytin commented 1 year ago

Ok. Thank you for the clear explanation. Unfortunate I do not have Mathematica on my system and the code looks quite complicated...