Giter VIP home page Giter VIP logo

pulser's Introduction

Pulser

Pulser is a framework for composing, simulating and executing pulse sequences for neutral-atom quantum devices.

Documentation for the latest release of pulser is available at https://pulser.readthedocs.io (for the docs tracking the develop branch of this repository, visit https://pulser.readthedocs.io/en/latest instead).

The source code can be found at https://github.com/pasqal-io/Pulser.

Overview of Pulser

Pulser is designed to let users create experiments that are tailored to specific neutral-atom devices. This reduces the level of abstraction and gives you maximal flexibility and control over the behaviour of the relevant physical parameters, within the bounds set by the chosen device.

Consequently, Pulser breaks free from the paradigm of digital quantum computing and also allows the creation of analog quantum simulations, outside of the scope of traditional quantum circuit approaches. Whatever the type of experiment or paradigm, if it can be done on the device, it can be done with Pulser.

Additionally, the pulser_simulation extension provides tools for classical simulation (using QuTiP libraries) to aid in the development and testing of new pulse sequences.

For a comprehensive overview of Pulser, check out Pulser's white paper.

Installation

Note: Pulser v0.6 introduced a split of the pulser package that prevents it from being correctly upgraded. If you have an older version of pulser installed and wish to upgrade, make sure to uninstall it first by running pip uninstall pulser.

To install the latest release of pulser, have Python 3.8 or higher installed, then use pip:

pip install pulser

The standard pulser distribution will install the core pulser package and the pulser_simulation extension package, which is required if you want to access the emulation features.

If you wish to install only the core pulser features, you can instead run:

pip install pulser-core

If you wish to install the development version of Pulser from source instead, do the following from within this repository after cloning it:

git checkout develop
make dev-install

Bear in mind that this installation will track the contents of your local Pulser repository folder, so if you checkout a different branch (e.g. master), your installation will change accordingly.

Development Requirements (Optional)

To run the tutorials or the test suite locally, after installation first run the following to install the development requirements:

pip install -r dev_requirements.txt

Then, you can do the following to run the test suite and report test coverage:

pytest --cov

Contributing

Want to contribute to Pulser? Great! See How to Contribute for information on how you can do so.

Citing Pulser

Citation references are generated through Zenodo. Click the badge below to get the citation to the latest Pulser release.

DOI

pulser's People

Contributors

hgsilveri avatar sebgrijalva avatar lhenriet avatar a-corni avatar laurentajdnik avatar karalekas avatar lucasgitq avatar cdeterra avatar julien-bremont avatar lvignoli avatar darcangelomauro avatar cdalyac avatar louis-paulhenry avatar varda-star avatar triplerd avatar nathanshammah avatar dakk avatar codoscope avatar awennersteen avatar rbstsai avatar yash-10 avatar paniash avatar dehond avatar louisjustintallot avatar matthieumoreau0 avatar slimane33 avatar wingcode avatar kvaithin avatar

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.