Git Product home page Git Product logo

pyci_old's Introduction

Python 3

PyCI

PyCI is a flexible quantum chemistry Configuration Interaction library for Python 3.

PyCI is distributed under the GNU General Public License version 3 (GPLv3).

See http://www.gnu.org/licenses/ for more information.

Installation

Dependencies

The following programs/libraries are required to run PyCI:

The following programs/libraries are required to build PyCI:

Some header-only C++ libraries are downloaded automatically:

Install dependencies

The programs required to build and run PyCI can be installed with your operating system's package manager.

E.g., for Debian- or Ubuntu- based Linux systems:

sudo apt-get install make git gcc python3 python3-devel python3-pip

The required Python packages can then be installed with pip:

python3 -m pip install numpy scipy pytest pycodestyle pydocstyle

Download PyCI

Run the following in your shell to download PyCI via git:

git clone https://github.com/msricher/pyci.git && cd pyci

Install PyCI

Run the following to build and install PyCI:

make
python3 -m pip install .

Run the following to test PyCI:

python3 -m pytest -v ./pyci

Build documentation

Run the following in your shell to install the packages required to build the documentation:

python3 -m pip install jupyter-notebook sphinx sphinx-rtd-theme nbsphinx

Then, after building PyCI, run the following to build the HTML API documentation:

cd doc && make html

Citing PyCI

See the CONTRIBUTORS file.

pyci_old's People

Contributors

ali-tehrani avatar gabrielasd avatar kimt33 avatar marco-2023 avatar msricher avatar paulwayers avatar richrick1 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

pyci_old's Issues

ENPT2

Finish adding ENPT2 routines

Eigensolvers

Not sure if it matters, but we are looking at large-scale eigensolvers together for @Ali-Tehrani problems. They are a bit different from what you are doing in PyCI (and EOM/ERPA) but here is what we've found (emphasizing GPU and hybrid codes).

We are starting with PySparse, but these may be better sources (just harder).

Jacobi-davidson works well with GPUs too. But it takes more memory than Lanczos.

Fortran and C codes

SLEPc seems to have a Python interface. As part of PETSC a GPU implemention should be coming (if it isn't there already).

PHIST looks like a really cool (and modern!) GPU code.

Test suite

  • [DONE] Use pytest instead of nose
    See comment below.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.