/ipie

ipie stands for Intelligent Python-based Imaginary-time Evolution with a focus on simplicity and speed.

Primary LanguagePythonApache License 2.0Apache-2.0

ipie stands for Intelligent Python-based Imaginary-time Evolution with a focus on simplicity and speed.

ipie inherits a lot of QMC features from pauxy.

image

image

image

image

Copyright by Joonho Lee (joonholee@g.harvard.edu)

Features

ipie currently supports:

  • estimation of the ground state energy of ab-initio systems using phaseless AFQMC with support for CPUs and GPUs.
  • simple data analysis.
  • other legacy functionalities available in pauxy such as the ground state and finite-temperature energies and properties (via backpropagation) of the ab initio, UEG, Hubbard, and Hubbard-Holstein models.

Installation

Clone the repository

$ git clone https://github.com/linusjoonho/ipie.git

and run the following in the top-level ipie directory

$ pip install -r requirements.txt
$ python setup.py build_ext --inplace
$ python setup.py install

You may also need to set your PYTHONPATH appropriately.

Requirements

  • python (>= 3.6)
  • numpy
  • scipy
  • h5py
  • mpi4py
  • cython
  • pandas

Minimum versions are listed in the requirements.txt. To run the tests you will need pytest. To perform error analysis you will also need pyblock.

Running the Test Suite

ipie contains unit tests and some longer driver tests that can be run using pytest by running:

$ pytest -v

in the base of the repo. Some longer parallel tests are also run through the CI. See .github/workflows/ci2.yml for more details.

image

Documentation

Documentation and tutorials are available at readthedocs.

image