ParameterizedQuantumControl.jl

Implementation of control methods for analytical parameterized control fields
Author JuliaQuantumControl
Popularity
1 Star
Updated Last
3 Months Ago
Started In
March 2024

ParameterizedQuantumControl.jl

Version Stable Dev Build Status Coverage

Implementation of control methods for analytical parameterized control fields.

Part of QuantumControl.jl and the JuliaQuantumControl organization.

Installation

As usual, the package can be installed with

pkg> add ParameterizedQuantumControl

Usage

  • Define a QuantumControl.ControlProblem that contains parameterized generators or control fields: get_parameters(problem) must return a vector of control parameters.

  • Call QuantumControl.optimize using method=ParameterizedQuantumControl, and give an appropriate backend and optimizer, e.g.,

    optimize(
        problem;
        method=ParameterizedQuantumControl,
        backend=Optimization,
        optimizer=NLopt.LN_NELDERMEAD(),
    )
    

Currently, only Optimization.jl is supported as a backend, and only with gradient-free optimizers. In the future, this will be extended to gradient-based optimizers (i.e., the "GOAT" method), as well as specific pulse parametrizations (e.g., CRAB).

Documentation

A minimal standalone documentation of ParameterizedQuantumControl.jl is available at https://juliaquantumcontrol.github.io/ParameterizedQuantumControl.jl.

For a broader perspective, see the documentation of the QuantumControl.jl package.

Used By Packages

No packages found.