Skip to content

JuliaQuantumControl/QuantumGradientGenerators.jl

Repository files navigation

QuantumGradientGenerators

Version Stable Dev Build Status REUSE Coverage

Dynamic Gradients for Quantum Control.

For a dynamical generator G that depends on one more control function ϵ₁(t)ϵₗ(t), this package defines the "gradient generator" and "gradient vector" |Ψ̃⟩ derived from a quantum state |Ψ⟩, so that

$$\exp(± i \tilde{G} t) |\tilde{Ψ}⟩ = \begin{pmatrix} \frac{∂}{∂ϵ_1} e^{± i G t} |Ψ⟩ \\\ \vdots \\\ \frac{∂}{∂ϵ_n} e^{± i G t} |Ψ⟩ \\\ e^{± i G dt} |Ψ⟩ \end{pmatrix}\,.$$

This gradient generator is a core part of evaluating gradients in the GRAPE method of quantum control.

To evaluate the above equation, the QuantumPropagators package should be used.

Documentation

The documentation of QuantumGradientGenerators.jl is available at https://juliaquantumcontrol.github.io/QuantumPropagators.jl.

Installation

The QuantumGradientGenerators package can be installed with Pkg as

pkg> add QuantumGradientGenerators

Note that this package is not intended for direct use. Instead, it serves as a building block for implementing quantum control methods, e.g. in the GRAPE package.

For development usage within the JuliaQuantumControl organization, see the organization development notes.

License

This project is REUSE-compliant. The entire package can be distributed under the MIT License: every file is available under MIT. Files that are not source code are additionally dual-licensed for reuse in other contexts — documentation (including the README and other prose) under Creative Commons Attribution (CC-BY-4.0), and trivial configuration or tooling files as public domain (CC0-1.0). The authoritative per-file copyright and licensing information is provided by SPDX tags in each file (and REUSE.toml where a file cannot carry a header). It can be verified using the reuse tool, e.g., by running reuse lint.