Skip to content

Commit e24bfa0

Browse files
authored
Merge pull request #125 from ProjectQ-Framework/release-v0.1a3
Release v0.1a3
2 parents 7c91ac9 + d8fab6c commit e24bfa0

File tree

79 files changed

+2892
-571
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

79 files changed

+2892
-571
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,5 @@ ENV/
7070

7171
# mkdocs documentation
7272
/site
73+
74+
*.lprof

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ matrix:
2929
apt:
3030
sources: ['ubuntu-toolchain-r-test']
3131
packages: ['gcc-4.9', 'g++-4.9']
32-
env: CC=gcc-4.9 CXX=g++-4.9 PYTHON=3.5
32+
env: CC=gcc-4.9 CXX=g++-4.9 PYTHON=3.6
3333

3434
before_install:
3535
- pip$PY install --upgrade pip setuptools wheel

README.rst

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,12 @@ Getting started
2020
---------------
2121

2222
To start using FermiLib, simply follow the installation instructions in the `intro <http://fermilib.readthedocs.io/en/latest/intro.html>`__. There, you will also find `code examples <http://fermilib.readthedocs.io/en/latest/examples.html>`__. Also, make sure to check out the `ProjectQ
23-
website <http://www.projectq.ch>`__ and the detailed `code documentation <http://fermilib.readthedocs.io/en/latest/fermilib.html>`__. Moreover, take a look at the available `plugins <http://projectq.ch/code-and-docs/#Fermilib>`__ for FermiLib.
23+
website <http://www.projectq.ch>`__ and the detailed `code documentation <http://fermilib.readthedocs.io/en/latest/fermilib.html>`__. Moreover, take a look at the available plugins for FermiLib.
24+
25+
Plugins
26+
-------
27+
28+
In order to generate molecular hamiltonians in Gaussian basis sets and perform other complicated electronic structure calculations, one can install plugins. We currently support Psi4 (plugin `here <https://github.com/ProjectQ-Framework/FermiLib-Plugin-Psi4>`__, recommended) and PySCF (plugin `here <https://github.com/ProjectQ-Framework/FermiLib-Plugin-PySCF>`__).
2429

2530
How to contribute
2631
-----------------
@@ -41,6 +46,11 @@ Authors
4146
The first release of FermiLib (v0.1a0) was developed by `Ryan Babbush <https://research.google.com/pubs/RyanBabbush.html>`__, `Jarrod McClean <https://crd.lbl.gov/departments/computational-science/ccmc/staff/alvarez-fellows/jarrod-mcclean/>`__, `Damian S. Steiger <http://www.comp.phys.ethz.ch/people/person-detail.html?persid=165677>`__, `Ian D. Kivlichan <http://aspuru.chem.harvard.edu/ian-kivlichan/>`__, `Thomas
4247
Häner <http://www.comp.phys.ethz.ch/people/person-detail.html?persid=179208>`__, `Vojtech Havlicek <https://github.com/VojtaHavlicek>`__, `Matthew Neeley <https://maffoo.net/>`__, and `Wei Sun <https://github.com/Spaceenter>`__.
4348

49+
Questions?
50+
----------
51+
52+
If you have any other questions, please contact [email protected].
53+
4454
License
4555
-------
4656

docker/Dockerfile

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Dockerfile for FermiLib+ProjectQ
2+
3+
# Change the following line to "FROM continuumio/anaconda" to use Python 2
4+
FROM continuumio/anaconda3
5+
6+
USER root
7+
8+
RUN apt install -y g++
9+
10+
RUN pip install git+https://github.com/ProjectQ-Framework/ProjectQ.git && \
11+
pip install git+https://github.com/ProjectQ-Framework/FermiLib.git
12+

docker/README.rst

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
Docker Setup for FermiLib + ProjectQ
2+
====================================
3+
4+
This Docker image will help users to easily install `FermiLib <https://github.com/ProjectQ-Framework/FermiLib.git>`__ and `ProjectQ <https://github.com/ProjectQ-Framework/ProjectQ>`__. Check out Docker's `website <https://www.docker.com/what-container>`__ that describes what a container image is and why it can be so useful.
5+
6+
What is included?
7+
-----------------
8+
9+
- Conda Python 3 (but you can also use Python 2 with one minor change in the Dockerfile. See the Dockerfile for instructions.)
10+
- `ProjectQ <https://github.com/ProjectQ-Framework/ProjectQ.git>`__
11+
- `FermiLib <https://github.com/ProjectQ-Framework/FermiLib.git>`__
12+
13+
How to use it?
14+
--------------
15+
16+
1. To use this image, you first need to install `Docker <https://www.docker.com/>`__.
17+
18+
2. To build the Docker image, move the Dockerfile to your working directory. Then execute:
19+
20+
.. code-block:: bash
21+
22+
docker build -t "fermiq_docker" .
23+
24+
3. To run the image (assuming you're still inside your working directory), execute with :code:`YOUR_WORK_DIR` as the path to your working directory:
25+
26+
.. code-block:: bash
27+
28+
docker run -it -v $(pwd):YOUR_WORK_DIR -w YOUR_WORK_DIR fermiq_docker
29+
30+
When you're done using the Docker image, you can execute :code:`docker stop YOUR_CONTAINER_ID` or :code:`docker kill YOUR_CONTAINER_ID` to stop your container (you can get the container ID by using the command :code:`docker ps`). Finally, feel free to use this as a parent image to build a more customized image layer, perhaps containing the available plugins (`PySCF <https://github.com/ProjectQ-Framework/FermiLib-Plugin-PySCF>`__ or `Psi4 <https://github.com/ProjectQ-Framework/FermiLib-Plugin-Psi4>`__) for FermiLib.

docs/intro.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,3 +57,8 @@ To see a basic example with both fermionic and qubit operators as well as whethe
5757
This code creates the fermionic operator :math:`a^\dagger_2 a_0` and adds its Hermitian conjugate :math:`a^\dagger_0 a_2` to it. It then maps the resulting fermionic operator to qubit operators using two transforms included in FermiLib, the Jordan-Wigner and Bravyi-Kitaev transforms. Despite the different representations, these operators are iso-spectral. The example also shows some of the intuitive string methods included in FermiLib.
5858

5959
Further examples can be found in the docs (`Examples` in the panel on the left) and in the FermiLib examples folder on `GitHub <https://github.com/ProjectQ-Framework/FermiLib/tree/master/examples/>`_.
60+
61+
Plugins
62+
-------
63+
64+
In order to generate molecular hamiltonians in Gaussian basis sets and perform other complicated electronic structure calculations, one can install plugins. We currently support Psi4 (plugin `here <https://github.com/ProjectQ-Framework/FermiLib-Plugin-Psi4>`__, recommended) and PySCF (plugin `here <https://github.com/ProjectQ-Framework/FermiLib-Plugin-PySCF>`__).

0 commit comments

Comments
 (0)