Skip to content
@JuliaQuantumControl

JuliaQuantumControl

Julia Framework for Quantum Optimal Control

A Julia Framework for Quantum Optimal Control.

Stable Dev

The JuliaQuantumControl organization collects packages implementing a comprehensive collection of methods of open-loop quantum optimal control.

Quantum optimal control theory attempts to steer a quantum system in some desired way by finding optimal control parameters or control fields inside the system Hamiltonian or Liouvillian. Typical control tasks are the preparation of a specific quantum state or the realization of a logical gate in a quantum computer. Thus, quantum control theory is a critical part of realizing quantum technologies, at the lowest level. Numerical methods of open-loop quantum control (methods that do not involve measurement feedback from a physical quantum device) such as Krotov's method and GRAPE address the control problem by simulating the dynamics of the system and then iteratively improving the value of a functional that encodes the desired outcome.

The packages in JuliaQuantumControl that implement specific individual methods should be used via the high-level package QuantumControl.jl.

Packages

Package Version            CI Status      Coverage           Description
⭐️ QuantumPropagators.jl version Build Status Coverage Simulate the time evolution of quantum systems (docs)
QuantumControlBase.jl version Build Status Coverage Shared methods and data structures (docs)
QuantumGradientGenerators.jl version Build Status Coverage Dynamic Gradients for Quantum Control (docs)
Krotov.jl version Build Status Coverage Krotov's method of optimal control (docs)
GRAPE.jl version Build Status Coverage Gradient Ascent Pulse Engineering method (docs)
TwoQubitWeylChamber.jl version Build Status Coverage Optimizing two-qubit gates in the Weyl chamber (docs)
QuantumControlTestUtils.jl version Build Status Tools for testing and benchmarking (docs)
⭐️ QuantumControl.jl version Build Status Coverage Framework for Quantum Dynamics and Control (docs)

Documentation

Read the QuantumControl.jl documentation for a comprehensive description of the framework.

Support is also available in the #quantumcontrol channel in the Julia Slack.

Installation

The QuantumControl.jl package can be installed via the standard Pkg manager:

pkg> add QuantumControl

You may also want to install additional packages from the JuliaQuantumControl organization as needed:

pkg> add QuantumPropagators
pkg> add Krotov
pkg> add GRAPE

Development

Development or pre-release use of JuliaQuantumControl packages requires a dev-installation of all packages. To facilitate this, we provide a development environment for the entire organization in the JuliaQuantumControl repository . Cloning that repository provides a Makefile to develop across all packages. In order to use this Makefile, it is strongly recommended that you use Unix as a development platform (Linux, macOS, or WSL on Windows).

See the dev-environment README for details.

Pinned

  1. QuantumControl.jl QuantumControl.jl Public

    Julia Framework for Quantum Dynamics and Control

    Julia 47 6

  2. QuantumPropagators.jl QuantumPropagators.jl Public

    Propagators for Quantum Dynamics and Optimal Control

    Julia 14 4

  3. JuliaQuantumControl JuliaQuantumControl Public

    Development environment for the @JuliaQuantumControl organization

    Julia 4 2

Repositories

Showing 10 of 18 repositories