{"id":14989201,"url":"https://github.com/psi4/psi4numpy","last_synced_at":"2025-04-04T15:09:28.267Z","repository":{"id":19381345,"uuid":"22622192","full_name":"psi4/psi4numpy","owner":"psi4","description":"Combining Psi4 and Numpy for education and development.","archived":false,"fork":false,"pushed_at":"2024-01-08T00:41:05.000Z","size":12158,"stargazers_count":360,"open_issues_count":17,"forks_count":163,"subscribers_count":35,"default_branch":"master","last_synced_at":"2025-03-28T14:07:42.509Z","etag":null,"topics":["computational-chemistry","numpy","psi","python","scipy","tutorial"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/psi4.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2014-08-04T22:30:47.000Z","updated_at":"2025-03-26T01:45:02.000Z","dependencies_parsed_at":"2024-01-13T12:36:59.884Z","dependency_job_id":null,"html_url":"https://github.com/psi4/psi4numpy","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psi4%2Fpsi4numpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psi4%2Fpsi4numpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psi4%2Fpsi4numpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psi4%2Fpsi4numpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/psi4","download_url":"https://codeload.github.com/psi4/psi4numpy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247198461,"owners_count":20900080,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computational-chemistry","numpy","psi","python","scipy","tutorial"],"created_at":"2024-09-24T14:17:51.225Z","updated_at":"2025-04-04T15:09:28.249Z","avatar_url":"https://github.com/psi4.png","language":"Jupyter Notebook","readme":"\u003cp align=\"center\"\u003e\n\u003cbr\u003e\n\u003cimg src=\"media/psi4numpybanner.png\" alt=\"Psi4NumPy banner logo\" height=200\u003e \u003cbr\u003e\n\u003ca href=\"https://zenodo.org/badge/latestdoi/22622192\"\u003e \u003cimg src=\"https://zenodo.org/badge/22622192.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://travis-ci.org/psi4/psi4numpy\"\u003e\u003cimg src=\"https://travis-ci.org/psi4/psi4numpy.svg?branch=master\"\u003e\u003c/a\u003e\n\u003ca href=\"https://codecov.io/gh/psi4/psi4numpy\"\u003e \u003cimg src=\"https://codecov.io/gh/psi4/psi4numpy/branch/master/graph/badge.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://opensource.org/licenses/BSD-3-Clause\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-BSD%203--Clause-blue.svg\" /\u003e\u003c/a\u003e\n\u003cbr\u003e\n\u003ca href=\"#\"\u003e \u003cimg src=\"https://img.shields.io/github/release/psi4/psi4numpy.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"#\"\u003e \u003cimg src=\"https://img.shields.io/github/commits-since/psi4/psi4numpy/latest.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"#\"\u003e \u003cimg src=\"https://img.shields.io/github/release-date/psi4/psi4numpy.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"#\"\u003e \u003cimg src=\"https://img.shields.io/github/commit-activity/y/psi4/psi4numpy.svg\" /\u003e\u003c/a\u003e\n\u003cbr\u003e\n\u003c/p\u003e\n\n---\n\n### Overview\n\n\u003e What I cannot create, I do not understand. - Richard Feynman\n\nThe overall goal of the Psi4NumPy project is to provide an interactive quantum chemistry\nframework for reference implementations, rapid prototyping, development, and education.\nTo do this, quantities relevant to quantum chemistry are computed with the\n\u003cspan style=\"font-variant:small-caps;\"\u003e Psi4 \u003c/span\u003e electronic structure package, and subsequently manipulated \nusing the Numerical Python (NumPy) package.  This combination\nprovides an interface that is both simple to use and remains relatively fast\nto execute. \n\nA series of short scripts demonstrating the implementation of Hartree-Fock Self-Consistent \nField, SCF Response, Møller-Plesset Perturbation Theory, Symmetry-Adapted Perturbation Theory, \nCoupled Cluster Theory, and more are provided for the reference of the quantum chemistry\ncommunity at large to facilitate both reproducibility and low-level methodological understanding.\nAdditionally, the Tutorials folder above represents an interactive educational\nenvironment containing modules discussing the theory and implementation of various\nquantum and computational chemistry methods.  By leveraging the popular Jupyter Notebook\napplication, each tutorial is constructed as hybrid theory and programming in an easy to use\ninteractive environment, removing the gap between theory and implementation.\n\nIf you have comments, questions, or would like to contribute to the project\nplease see our [contributor guidelines](https://github.com/psi4/psi4numpy/blob/master/CONTRIBUTING.md).\n\n### Getting Started\n\n1. Obtain required software\n    1. [Psi4NumPy](https://github.com/psi4/psi4numpy) (clone this repository; no install available)\n    2. [Psi4](http://psicode.org/psi4manual/1.1/build_obtaining.html)\n        * Option 1 (easiest): [Download installer](https://psicode.org/installs/latest/) based on your preferred operating system and version of Python. Proceed to follow the instructions described at the bottom of that page.  \n        * Option 2 (easy): Download Conda package according to [instructions](https://psicode.org/psi4manual/master/conda.html#how-to-install-a-psi4-binary-into-an-ana-miniconda-distribution). To find the different versions available visit the [anaconda website](https://anaconda.org/psi4/psi4).\n          ```\n          # Have Anaconda or Miniconda (https://conda.io/miniconda.html)\n          \u003e\u003e\u003e conda create -n p4env psi4 -c psi4 # Create a new environment named p4env and install psi4. \n          \u003e\u003e\u003e bash\n          \u003e\u003e\u003e source activate p4env\n          ```\n        * Option 3 (medium): [Clone source](https://github.com/psi4/psi4) and [compile](https://github.com/psi4/psi4/blob/master/CMakeLists.txt#L16-L143) according to [instructions](http://psicode.org/psi4manual/master/build_faq.html#configuring-building-and-installing-psifour-via-source)\n          ```\n          # Get Psi4 source\n          \u003e\u003e\u003e git clone https://github.com/psi4/psi4.git\n          \u003e\u003e\u003e git checkout v1.1\n          \u003e\u003e\u003e cmake -H. -Bobjdir -Doption=value ...\n          \u003e\u003e\u003e cd objdir \u0026\u0026 make -j`getconf _NPROCESSORS_ONLN`\n          # Find `psi4` command at objdir/stage/\u003cTAB\u003e/\u003cTAB\u003e/.../bin/psi4; adjust path if needed\n          ```\n    3. [Python](https://python.org) 3.6+ (incl. w/ Psi4 Options 1 \u0026 2)\n    4. [NumPy](http://www.numpy.org) 1.7.2+ (incl. w/ Psi4 Options 1 \u0026 2)\n    5. [Scipy](https://scipy.org) 0.13.0+\n2. Enable Psi4 \u0026 PsiAPI (if Psi4 was built from source)\n   1. Find appropriate paths\n        ```\n        \u003e\u003e\u003e psi4 --psiapi-path\n        export PATH=/path/to/dir/of/python/interpreter/against/which/psi4/compiled:$PATH\n        export PYTHONPATH=/path/to/dir/of/psi4/core-dot-so:$PYTHONPATH\n        ```\n    2. Export relevant paths\n        ```\n        \u003e\u003e\u003e bash\n        \u003e\u003e\u003e export PATH=/path/to/dir/of/python/interpreter/against/which/psi4/compiled:$PATH\n        \u003e\u003e\u003e export PYTHONPATH=/path/to/dir/of/psi4/core-dot-so:$PYTHONPATH\n        ```\n3. Run scripts as conventional Python scripts\n    * Example: Run `DF-MP2.py`\n        ```\n        \u003e\u003e\u003e python psi4numpy/Moller-Plesset/DF-MP2.py\n        ```\n\nNew users can follow the\n[Tutorials](https://github.com/psi4/psi4numpy/blob/master/Tutorials/01_Psi4NumPy-Basics/) or the [PsiAPI documentation](http://psicode.org/psi4manual/master/psiapi.html) for an introduction to running Psi4 within the PsiAPI.\n\nA tutorial that covers the basics of NumPy can be found\n[here](https://education.molssi.org/python-data-analysis/01-numpy-arrays/index.html).\n\n### Repository Organization\n\nThis repository contains\n\n* reference implementations, which provide working Python scripts implementing\nvarious quantum chemical methods, and\n* interactive tutorials, which provide Jupyter notebooks presenting a hybrid\ntheory-and-implementation educational framework for learning to program quantum\nchemistry methods.\n\nReference implementations are organized into top-level directories\ncorresponding to the over-arching theory upon which each method is based, i.e.,\nboth EOM-CCSD and TD-CCSD are contained in the\n[Coupled-Cluster](https://github.com/psi4/psi4numpy/tree/master/Coupled-Cluster)\ndirectory.  All interactive tutorials are contained in the top-level directory\n[Tutorials](https://github.com/psi4/psi4numpy/tree/master/Tutorials).  These\ntutorials are organized in logical order of progression, which is enumerated in\ndetail\n[here](https://github.com/psi4/psi4numpy/tree/master/Tutorials#interactive-tutorials).\n\n### Psi4 v1.1 (c. May 2017)\nThis repostitory has recently been updated to be compatible with Psi4 version 1.1.\nPlease see the [v0.1-beta tag](https://github.com/psi4/psi4numpy/tree/v0.1-beta) for a Psi4 v1.0 compliant Psi4NumPy version. \n\n### Psi4 v1.2 (c. May 2018)\nThis reposititory is fully compatible with the upcoming Psi4 version 1.2.\nIn fact (for a while), if you use v1.2, there's no need to worry if your Psi4 has\nall the features to run all the reference implementations and tutorials.\n\n### Citation\nPlease consider citing this repository through the Psi4NumPy paper:\n\nPsi4NumPy: An Interactive Quantum Chemistry Programming Environment for Reference Implementations and Rapid Development\nDaniel G. A. Smith, Lori A. Burns, Dominic A. Sirianni, Daniel R. Nascimento, Ashutosh Kumar, Andrew M. James, Jeffrey B. Schriber, Tianyuan Zhang, Boyi Zhang, Adam S. Abbott, Eric J. Berquist, Marvin H. Lechner, Leonardo A. Cunha, Alexander G. Heide, Jonathan M. Waldrop, Tyler Y. Takeshita, Asem Alenaizan, Daniel Neuhauser, Rollin A. King, Andrew C. Simmonett, Justin M. Turney, Henry F. Schaefer, Francesco A. Evangelista, A. Eugene DePrince III, T. Daniel Crawford, Konrad Patkowski, and C. David Sherrill\n*Journal of Chemical Theory and Computation*, **2018**, 14 (7), 3504-3511\nDOI: 10.1021/acs.jctc.8b00286\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsi4%2Fpsi4numpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpsi4%2Fpsi4numpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsi4%2Fpsi4numpy/lists"}