dipc-cc / hubbard

Python tools for mean-field Hubbard models
https://dipc-cc.github.io/hubbard/
GNU Lesser General Public License v3.0
21 stars 8 forks source link

Open system contours #58

Open zerothi opened 4 years ago

zerothi commented 4 years ago

Hi both,

I have now created a utility which reads in TS.ChemPots and TS.Contour.* and then creates the required contours.

E.g. it could be useful for you when running open systems since you can change stuff in an fdf file, run tscontour CONTOUR.fdf and you will get the TSCC* contour outputs.

Perhaps this may be useful?

You can find it here: https://gitlab.com/nickpapior/siesta/-/archive/tbtrans-store/siesta-tbtrans-store.zip

Util/TS/tscontour

sofiasanz commented 4 years ago

Hi Nick! Thanks for sharing, sorry I just saw this issue. The idea would be to call TS before running the MFH code and use the created contour?

zerothi commented 4 years ago

Exactly, you define a temperature, and some chemical potentials, run the tscontour code which produces the contours (once), then read them in and do all your MFH with the given contours. The tscontour takes less than 3 seconds for any contour ;)

sofiasanz commented 4 years ago

Actually that would be much more versatile than what we have now, so great :-) I'm thinking how we can ease the usage of this, ie if we should specify whether the user has to run TS before running MFH (by itself) or if we should automatize this in the class with some method.. any thoughts?

zerothi commented 4 years ago

Probably a separate class that:

  1. First checks for files which contain contours.
  2. Enables calling the tscontour executable
  3. It should probably also write an fdf file with contours etc.
  4. Then the NEGF class should just accept this class instance which can then query the contour information in a standard way.

Generally one should try and make a class that does few things, so I think the contour and NEGF are separate.