Welcome to the Echoed Conditional Displacement (ECD) control package! Built with Tensorflow in python.
ECD control is a fast, echoed, gate-based approach to the quantum control of an oscillator with weak dispersive coupling to a qubit.
Based on the paper Fast universal control of an oscillator with a weak dispersive coupling to a qubit (2021) arXiv:2111.06414.
This repository can be used to optimize circuit parameters and generate ECD pulse sequences to be used in an experiment.
For any issues, comments, or questions, please open a github issue or contact: alec.eickbusch@yale.edu.
qutip (4.0.0 or later), Tensorflow (2.3.0 or later), h5py (working with 3.1.0)
To install, clone this repository and run:
$ pip install -e ECD_control
Given a quantum control problem, optimization is performed in two steps:
-
ECD_optimization Optimization of ECD circuit parameters (betas, phis, thetas) for a quantum control problem. This step does not depend on device-specic parameters. Built with tensorflow
-
ECD_pulse_construction Given device-specific parameters, this step complies oscillator and qubit pulses from the ECD circuit parameters found in step 1.
Please see examples folder for more information. Current documentation is contained in these examples.
updated Aug 2022
tensorflow can be installed on apple silicion (M1 or M2) using the instructions here.
To install ECD_control with pip on apple silicon, replace the "tensorflow" requirement in setup.py with "tensorflow-macos".
Support for tensorflow on apple GPUs is ongoing. Currently I'm unable to run ECD_control on an integrated M2 apple GPU. Running on the apple silicon CPU works, using "with tf.device("/cpu:0"):".