by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
kwant-bot
@kwant-bot
michaelwimmer:
Monday morning?
anton:
Sounds good, 11?
kwant-bot
@kwant-bot
slavoutich:
OK for me
kwant-bot
@kwant-bot
michaelwimmer:
Ok for me
kwant-bot
@kwant-bot
basnijholt:
Yes I did and wit worked fine.
kwant-bot
@kwant-bot
basnijholt:
@cwg @xavier, I made a start with the conda-recipe for
kwant-bot
@kwant-bot
basnijholt:
It seems like finding the _dop lib is failing here.
kwant-bot
@kwant-bot
xavier:
@basnijholt Great, thanks! @tkloss has just started looking into conda-forge but it looks a bit like dark magic.
xavier:
There is a tkwant channel BTW.
kwant-bot
@kwant-bot
anton:
@michaelwimmer @slavoutich shall we chat?
michaelwimmer:
yes
slavoutich:
I am still chatting in the coffee room. Should we zoom?
anton:
Yep, link above
kwant-bot
@kwant-bot
cosma:
I noticed that kwant.operator.Current does not live inside a .py file, but in something that looks precompiled. was it written in python and then cythoned? is there a way to see the code itself? I'm asking because I want to compute current operators in non-Hermitian systems, so I might have to go around the pre-built functionality of kwant
cwg:
The module kwant.operator is written in Cython. The sources are of course available (git or tarball).
cwg:
Cosma, did you check out the check_hermiticity flag of the existing operator classes?
cosma:
thx
cwg:
Perhaps this will do just what you need?
kwant-bot
@kwant-bot
cosma:
this is very interesting... I think my problem is that I have a model in which hoppings t_ab > t_ba, so I don't build it directly using kwant
instead, I get the Hamiltonian by summing up its Hermitian and anti-Hermitian parts (both of which are obtained using kwant)
I'm not sure if check_hermiticity will help me... if kwant.operator.Current(syst) uses the hopping functions of syst, then probably not
kwant-bot
@kwant-bot
cwg:
You should be able to define non-hermitian Hamiltonians with Kwant's builder. For that, the values must by defined using value functions (otherwise Hermiticity will be enforced), and when using solvers, you have to pass check_hermiticity=False.
cwg:
So by doing that and using the built-in operators with check_hermiticity=False you might be able to do what you want using entirely built-in Kwant functionality.
anton:
Cosma has a nonhermitian hopping, that wouldn't work.
kwant-bot
@kwant-bot
cwg:
I was unsure whether we always insist (in builder) on enforcing Hermiticity in hoppings. I thought we might have relaxed that at some point. But if we haven't then we're at least consistent and we treat all values (constants and value functions) in the same way.
kwant-bot
@kwant-bot
anton:
We haven't.
kwant-bot
@kwant-bot

slavoutich:
This commit attracted my attention:
https://gitlab.kwant-project.org/kwant/kwant/-/commit/4fd146cdec4a5f7daac974d308086e9e9633ad0c

Yeah, it inserts a bunch of ^L in builder.py. But why?

kwant-bot
@kwant-bot
anton:
Some editors recognize these as form feeds. (Or something like that)
anton:
I think @cwg uses these.
kwant-bot
@kwant-bot
cwg:
It's a way to structure source code. Some editors allow to jump to next/previous page easily.
octavio724
@octavio724
Hi all, I am new here. May be this questions has already asked. I have installed Ubuntu 20.04 in my Desktop, but now I can't install kwant . Is there any solution for this problem?.
...when trying to install, Ubuntu 20.04 reports that "The repository 'http://ppa.launchpad.net/kwant-project/ppa/ubuntu focal Release' does not have a Release file".
kwant-bot
@kwant-bot
anton:
Hi @octavio724, Kwant wasn't yet released on Ubuntu 20.04, sorry about that. In the meantime you can use conda.
octavio724
@octavio724

anton:
Hi @octavio724, Kwant wasn't yet released on Ubuntu 20.04, sorry about that. In the meantime you can use conda.

thank you for your answer. Is that means that after installing conda kwant would be included?

kwant-bot
@kwant-bot
anton:
No, you need to:
  1. Install miniconda
  2. Execute conda install kwant -c conda-forge
octavio724
@octavio724

anton:
No, you need to:

  1. Install miniconda
  2. Execute conda install kwant -c conda-forge

many thanks, I'll try it.

octavio724
@octavio724
Thank you anton, it did work.
octavio724
@octavio724
Hi all, I am here again. I have also a question about parallelization. For instance, when this line "trans = smatrix.transmission(1, 0)" is executing, is kwant executing it in parallel?. Suppose I am running it in a 4-core processor. Does kwant use the whole available cores, or just only one?.
kwant-bot
@kwant-bot
slavoutich:
Is there a code style guide for Kwant somewhere, except https://kwant-project.org/contribute? Like, git conventions are rather strict and not mentioned here :)
anton:
Not as far as I know, but please add.
slavoutich:
Also, it might be cool to add .pylintrc to the project.
anton:
Sure
kwant-bot
@kwant-bot
slavoutich:
And yeah, I am not going to add them right now, because I am afraid to get distracted again :) Just finished configuring VSCode so that I start enjoying it.
kwant-bot
@kwant-bot

jbweston:
It should use only 1 core. If you see more than 1 core working it's because one of the low-level linear algebra libraries is trying to use >1 core, but typically this actually makes Kwant calculations run slower.

You can set the environment variable OMP_NUM_THREADS=1 and that should ensure that everything runs on 1 core.

kwant-bot
@kwant-bot
anton:
@slavoutich shall we hack on vectorization around 13?
anton:
(sorry, this morning didn't work out)
slavoutich:
👍
kwant-bot
@kwant-bot
slavoutich:
I am around
anton:
Starting in a minute
kwant-bot
@kwant-bot
zoom:
Meeting started at https://zoom.us/j/5022602974.