Code Monkey home page Code Monkey logo

lifeishard / padqoc Goto Github PK

View Code? Open in Web Editor NEW
6.0 2.0 1.0 104 KB

Parallel Automatic Differentiation Quantum Optimal Control (PADQOC) is an open-source, Python based quantum optimal control solver built with Tensorflow 2. Designed to be fast, extensible and useful for controlling general quantum systems. It supports GPU computing, Hamiltonian distributions and arbitrary parameterization of the control basis.

License: Apache License 2.0

Python 100.00%

padqoc's Introduction

PADQOC

Parallel Automatic Differentiation Quantum Optimal Control (PADQOC) is an open-source, Python based general quantum optimal control solver built on top of Tensorflow 2. It is designed to be fast, extensible and useful for controlling general quantum systems. It supports GPU computing, Hamiltonian distributions, arbitrary parameterization of the control basis and customizable optimizers.

Background

Designing control pulses to generate desired unitary evolution subjugated to experimental constraints (e.g., decoherence time, bandwidth) is a common task for quantum platforms, these type of problems are often addressed in the context of quantum optimal control.

Features

  • GPU computing
  • Arbitrary parameterization basis (builtin Time, Sinusoids, Slepians)
  • Distributions of Drift and Control Hamiltonians
  • Customizable Optimizers e.g. TF and Keras (adam) and Scipy L-BFGS-B

Usage

  • Easiest:relaxed: run it in Google Colab which also support GPU and TPU
  • Average:smirk: install Tensorflow 2 binaries and run locally
  • Difficult:worried: install Cuda 10.0 and other GPU support with Tensorflow 2 binaries
  • DifficultX2:persevere: install Cuda 10.0 and other GPU support and build Tensorflow 2 from source

First Demo

Running the time basis cnot example in Google colab

!git clone -l -s git://github.com/lifeishard/PADQOC.git cloned-repo
%cd cloned-repo
!ls
from __future__ import absolute_import, division, print_function, unicode_literals

# Install TensorFlow
!pip install -q tensorflow==2.0.0-beta1

import tensorflow as tf
%run time_basis_cnot.py

Alternative tools and projects

Authors

  • Michael Y. Chen - Initial work

Support

Email [email protected] if you have questions or concerns.

Built With

License

Apache License 2.0

Acknowledgement

If you find this tool useful feel free to cite Chen, M.Y. (2019). Discrete Time Quantum Walk Simulations of Symmetry Protected Topological Phases on Liquid State NMR Quantum Computers (Unpublished Master's Thesis). University of Waterloo, Waterloo, Canada.

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.