Skip to main content

Adaptive band structure analyzer for Kwant leads

Project description

kwantSpectrum is an extension to Kwant that adaptively analyzes band structures of infinite quasi-1d systems. The bandstructure is approximated to an arbitrary precision by piecewise cubic polynomials. Functionality to deal with special points, intervals, and the periodic nature of the spectrum is provided.

kwantSpectrum is distributed under the 2-clause BSD license

Website: https://kwant-project.org/extensions/kwantspectrum

Source code: https://gitlab.kwant-project.org/kwant/kwantspectrum

Conda package: https://github.com/conda-forge/kwantspectrum-feedstock

Installation

kwantSpectrum packages are hosted on PyPI and conda. The installation should work GNU/Linux system as Debian and Ubuntu, as well as on MacOS and Windows.

PyPI:

python3 -m pip install --user kwantspectrum

conda:

conda install -c conda-forge kwantspectrum

Installation from source

kwantSpectrum can be installed directly from the source code repository:

python3 -m pip install --user git+https://gitlab.kwant-project.org/kwant/kwantspectrum.git

For development, kwantSpectrum can be cloned from the official repository with:

git clone https://gitlab.kwant-project.org/kwant/kwantspectrum.git

The requirements listed below must be installed by hand.

Build requirements

kwantSpectrum has following non-Python dependency:

Kwant can be installed with the following command:

sudo apt-add-repository -s ppa:kwant-project/ppa
sudo apt-get update
sudo apt-get install python3-kwant

kwantSpectrum requires at least Python 3.5. The following packages must be installed to build kwantSpectrum:

The packages can be installed by the standard pip command:

python3 -m pip install --user numpy scipy

Testing requirements

The kwantSpectrum test suite requires the following Python packages:

The packages can be installed by the standard pip command:

python3 -m pip install --user pytest pytest-cov

Documentation requirements

Building the documentation requires the following Python packages:

The packages can be installed by the standard pip command:

python3 -m pip install --user matplotlib sphinx jupyter-sphinx

Test suite

Unittests can be run directly in the local source repository from the command line:

pytest

Building the documentation

The documentation can be build directly in the /doc folder of the local source repository from the command line:

make html

The generated html documentation can be browsed by opening the file doc/build/html/index.html with a web browser.

Documentation

Full documentation including a tutorial:

Communication

The kwant-discuss mailing list is the main communication channel for questions and discussions around kwantSpectrum. Searching and using the mailing list is explained in section mailing list.

In addition, the authors can be reached by email, see below.

Contributing

Contributions and feedback are always welcome. Report bugs and follow development through the project repository. Authors can be reached by email or a merge request may be opened on the project’s website. Please make sure that the test suite runs without errors before opening a new merge request.

License

kwantSpectrum is distributed under BSD license, see the file LICENSE.rst in the project repository.

Authors

The principle developer of kwantSpectrum is:

Contributors to the project are:

  • Christoph Groth (CEA Grenoble)

  • Xavier Waintal (CEA Grenoble)

  • Benoît Rossignol (CEA Grenoble)

  • Bas Nijholt (Microsoft)

(CEA = Commissariat à l’énergie atomique et aux énergies alternatives)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kwantspectrum-0.1.1.tar.gz (35.6 kB view details)

Uploaded Source

Built Distribution

kwantspectrum-0.1.1-py3-none-any.whl (21.9 kB view details)

Uploaded Python 3

File details

Details for the file kwantspectrum-0.1.1.tar.gz.

File metadata

  • Download URL: kwantspectrum-0.1.1.tar.gz
  • Upload date:
  • Size: 35.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9

File hashes

Hashes for kwantspectrum-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5a6d141dc7e5647187719d405fa81ef78846f4b016033d6d9d20cb9a195e8ab7
MD5 af0c097c97c2d7a42c610ba11af007a9
BLAKE2b-256 065b98c2294ce72b9876e37e35aa52765e0f34f5b38211a7959f93365158c6a3

See more details on using hashes here.

File details

Details for the file kwantspectrum-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: kwantspectrum-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 21.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.9

File hashes

Hashes for kwantspectrum-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0daaf7d7d21682b6d69b77c5a1b86ac9aae563526d052bdaf3b821f590361e1f
MD5 95ee0aaa1afe6d63d7a0ba4f0da23c0c
BLAKE2b-256 bf8f90a513531674650d63b553558205934e342b2f14d77871f7840d3e29acef

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page