Skip to main content

Quantum cluster methods for the physics of strongly correlated systems.

Project description

Pyqcm

Pyqcm is a Python/C++ library that implements a few quantum cluster methods with an exact diagonalization impurity solver. Quantum cluster methods are used in the study of strongly correlated electrons to provide an approximate solution to Hubbard-like models. The methods covered by this library are Cluster Perturbation Theory (CPT), the Variational Cluster Approach (VCA) and Cellular (or Cluster) Dynamical Mean Field Theory (CDMFT). The impurity solver (the technique used to compute the cluster's interacting Green function) is exact diagonalization from sparse matrices, using the Lanczos algorithm and variants thereof. The core library is written in C++ for performance, but the interface is in Python, for ease of use and inter-operability with the numerical Python ecosystem. The library is distributed under the GPL license.

A comprehensive paper describing the different methods and version 2.1 of the software is available on arXiv repository.

Installation

Pyqcm depends on a BLAS-LAPACK implementation available on your system (such as OpenBLAS) and the Eigen template librairie. These dependencies can be installed using the apt package manager on Debian system as (Ubuntu):

sudo apt install libopenblas-dev libeigen3-dev

Once installed, Pyqcm can be installed using the pip package manager as:

pip install pyqcm

Note only sources distribution are available and compilation is carried on the target system. This is for enabling the most appropriate optimizations at building time for faster running time. By default, a build-capability build of Pyqcm is carried. Pyqcm is compatible (i.e. have been tested) on various Linux distribution on x86 computers (Intel and AMD) and Apple ARM processors. Finely tuned installation can be acheived by specifiyng the environment variable CMAKE_ARGS before to install Pyqcm via pip (see the section Advanced installation on the documentation).

Examples and documentation

Pyqcm documentation is hosted on ReadTheDocs and is available at https://qcm-wed.readthedocs.io/.

EXAMPLES can be found in the notebooks/ folder, either in plain python files (*.py) or in the form of Jupyter notebooks (*.ipynb).

Contact

Questions and comments can be addressed to:

david.senechal@usherbrooke.ca

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

pyqcm-2.21.1.tar.gz (1.2 MB view details)

Uploaded Source

File details

Details for the file pyqcm-2.21.1.tar.gz.

File metadata

  • Download URL: pyqcm-2.21.1.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pyqcm-2.21.1.tar.gz
Algorithm Hash digest
SHA256 67f5e789226a44bf84cb1308f200fe3364b8cf4cec9b30b7898f3a46b7f18774
MD5 c46d157e3f801b69ab1db0330de28442
BLAKE2b-256 d9501a9869e4cb8830695899f3825a4d175b86aba297e2b121dd9c5d5884b271

See more details on using hashes here.

Supported by

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