Conversation
Thanks for the PR, it looks great!
You can keep pushing commits to your branch and they will appear here. |
|
I think i have cloned a wrong version of the hubbard code, the rest of the code still has the energy-loops, so this code doesnt make sense right now |
|
Added some more stuff |
|
I dont understand, is this related to the "batching" of the energy-points? :) |
Yes, but perhaps I misunderstood its purpose, I just saw you did |
|
Ahh that must be Sofias doing, i didnt know this was in there already! :) |
|
Yes I added the |
The way I think of this is that you also build up the entire |
|
Yes zS - H - sum(Sigma) is build for all the energy-points given, but I guess it only stores the A_i, B_i and C_i blocks so this only scales linearly with n_orbitals and linearly with E-points... I guess having call the matrix operations on these 4-dim arrays are the tradeoff of having to do this in python if we still want some speed? :) |
I think the speed only boils down to being important when the sizes of the blocks are small in which case the overhead becomes high. For larger matrices/blocks (say 400) I wouldn't suspect much of an overhead. This is about how a user would use the routines, not so much about efficiency (which users can control with the parameter). |
|
Just tried to see how far i could push my laptop: |
|
OK that seems undoable if we want to run calculations locally in our laptops... |
|
Hi, I have something that is partially working right now on the graphene strip, but im encountering an error where the self-energy parsed to the _G function has shape "(4,)" instead of the usual (4,4). Its not really a problem to tell the code what to do when it gets this parsed, but is it on purpose that a self-energy array with this shape is given? |
|
Hi @AleksBL which script are you using to test it? I for instance checked |
|
Okay cool, ill get back to it soon :) |
…tion or the full matrix, also divided the energy contour arrays in blocks to avoid using too much memory
…EQ correction integrals
…tly faster. (test-BTD_2.py)
Added the BTD inversion to NEGF.py
Edit: forgot to add the tbt flag to the _G calls in the NEGF class, im a githubnoob and it wont allow be to add this for some reason.....