HEADS UP: this repo was experimental and functionality will be moved to my new repo: QubitControl.jl
this package aims to provide an interface between the python package QuTiP and the Altro.jl trajectory optimization package.
the goal is to do multi-qubit quantum optimal control quickly and robustly.
to use this package, clone it, and then, from a julia REPL in the cloned directory run
(@v1.7) pkg> activate .
(QuantumControl) pkg> instantiate
one should have a python environment containing scipy and qutip (this can be achieved with conda, by activating the environment before running the julia scripts.
see experiments
directory for examples including:
- single qubit gates with a single quantum state
- single qubit gates with multiple quantum states
- bootstrapped single qubit, multi-state solves
this problem involves taking advantage of an experimental time-dependent qubit Hamiltonian that has a controllable parameter, e.g.
which governs the dynamics of a qubit state via the Schroedinger equation:
The goal is then to find
The above plot shows the dynamics for the wavefunction and control
- multistate single qubit script
- scripts for X, Y, Z gates
- add functionality to define wavefunctions as complex vectors
- add plotting utilities
- two qubit problem