Package Details: python-kwant 1.3.1-2

Git Clone URL: https://aur.archlinux.org/python-kwant.git (read-only)
Package Base: python-kwant
Description: Python package for numerical calculations on tight-binding models with a strong focus on quantum transport
Upstream URL: http://kwant-project.org/
Licenses: BSD
Submitter: lobachevsky
Maintainer: lobachevsky
Last Packager: lobachevsky
Votes: 0
Popularity: 0.000000
First Submitted: 2015-12-19 16:09
Last Updated: 2017-10-09 20:37

Dependencies (9)

Required by (0)

Sources (2)

Latest Comments

lobachevsky commented on 2017-10-09 20:39

Thanks for the comment! I saw it in the docs, but somehow forgot to add it.

rskolasinski commented on 2017-10-09 19:17

Hi Guys, I just wanted to mention that since Kwant 1.3 sympy is an optional dependency as well required to use kwant.continuum module.

It is awesome to see Kwant in AUR! ;)

gerson commented on 2017-01-31 18:23

Yes, you are right. Multi-thread is working perfectly with the AUR package openblas-lapack and mumps-seq-shared. Thanks again! It is perfect now.

lobachevsky commented on 2017-01-30 12:49

Hi Gerson,

thank's about the hint for build.conf. I missed that, since it built on my machine. I'll fix that.

About which mumps to build against: Kwant itself is not parallel in any sense, as of yet, so building mumps with any MPI support is of little use; mumps-seq uses a shim to pretend something like MPI existed without the actual need for an MPI installation.
You can build mumps with OpenMP support, though [1], which is more akin to what you want, because it allows Mumps to work in a multi-threaded manner. You will also need an OpenMP-capable BLAS, though.

[1] section 3.12 http://mumps.enseeiht.fr/doc/userguide_5.0.2.pdf

gerson commented on 2017-01-30 12:07

Hi Lobachevsky, thanks for the update. But there's still something to fix.

The include dir is pointing to mumps-seq, and not to mumps-seq-shared. I had to edit the build.conf to fix this. After this, it works.

But also and more importantly, I think we should compile it with mumps, not mumps-seq. In my desktop I'm running Arch and this AUR version of kwant, but on my server I'm running Ubuntu. I can tell you that the Ubuntu version is running in multi-core, while this AUR version is running in a single core. I'm guessing it is due to mumps vs mumps-seq.

lobachevsky commented on 2017-01-26 14:51

Hi Gerson,

thanks for the reminder, I am a bit swamped and completely forgot about this, but your message yesterday reminded me and you can try the new version of the package, which should point you to the package mumps-seq-shared.

Taking a hint from how Debian builds the package I patch the Makefiles of mumps to build a shared library version against which kwant is able to build.

Have fun!

gerson commented on 2017-01-25 11:28

Hi Lobachevsky, any news on the mumps-seq fix? Recently, there was an update of the mumps-seq package, but it seems that it was not related to the kwant issue.

lobachevsky commented on 2016-12-29 11:36

Yes, after a lot of tinkering, I finally managed to fix this with mumps-seq. The problem there is the borked way they generate .so files from the .a
mumps-seq is sufficient, because kwant is (so far) singlethreaded.

I have a fixed version of mump-seq package, that I will upload (hopefully) soon. The problem is I did not commit early and often and the tabs in my fixed Makefile got messed up, so I have to fix that again. The fix was to simply adapt the Makefile from Debian's.
I will call my "fixed" version of mumps mumps-kwant and write to the maintainer of mumps-seq, so he can fix his package, in the meantime I will then fix the depend of python-kwant to my mumps version.
I should be able to get around to doing before the second week of January ends.

gerson commented on 2016-12-28 20:31

I've tried to add the (mumps5, mumps4, or mumps-seq) as suggested in the commend and kwant website. When using the mumps-seq we have to add _seq to some libraries. In all case it compiles, but when we run kwant, it either ignores mumps, or crashes when we call import kwant with a error message referring to MPICH. Did you manage to fix this?

lobachevsky commented on 2016-03-07 13:02

Hi, in principle it should be possible to get MUMPS support, but I haven't yet managed to actually getting it to work. It builds, but somehow the MUMPS support is still missing, as can be seen by a lot of skipped tests.

First, there is another missing dependency: aur/scotch
After installing that, you have to supply a build.conf, according to [1], so that the setup actually finds everything.

A sample build.conf that should make it compile is
[mumps]
libraries = zmumps mumps_common pord metis esmumps scotch scotcherr mpiseq gfortran
include_dirs = /usr/include/mumps-seq

Just put the build.conf in the same directory as the PKGBUILD.

You also need to patch the build function in the PKGBUILD by putting this in the first line of the function

cp "../build.conf" "$srcdir/kwant-$pkgver/build.conf"

so that the build.conf is actually in the appropriate directory at build time.

This will make the package compile without any errors, but the MUMPS-specific tests will still be skipped. I haven't had time to debug this yet, though. If you have a solution, please let me know.

[1] http://kwant-project.org/doc/1/pre/install

All comments