Software

Pulsar.jl

A Julia toolbox for designing optimal control pulses for quantum systems — qubits (transmon, trapped-ion, neutral-atom, spin-qubit, NV-center) and spin systems (NMR, EPR, MAS solid-state, MRI, DNP).

Source on GitHub Documentation

Apache License 2.0 · Julia


Why it exists

Optimal control produces demonstrably better pulses than analytical shapes, but the barrier has rarely been the mathematics. It has been that every group writes its own optimizer from scratch, tuned to one platform, and it never leaves the group. Meanwhile the underlying problem is the same whether you are driving a transmon or a proton: find a control waveform that steers a quantum system to a target while respecting hardware limits and staying robust to what you cannot control.

Pulsar exists so that designing a pulse is something a spectroscopist or experimentalist can do at the console, rather than a project requiring a numerics specialist. The same optimizer that produces a broadband NMR inversion pulse produces a gate for a trapped-ion qubit; only the Hamiltonian changes.

What's in it

Optimizers

GRAPE, L-BFGS-B, Krotov, GOAT, CRAB, CMA-ES, Nelder–Mead, basin hopping.

Dynamics

Closed-system and open-system (Lindblad) propagation.

Robust control

Ensemble optimization, so one pulse works across a distribution of system parameters.

Gradients

Automatic differentiation, with ForwardDiff and Zygote loaded as package extensions.

Backends

CPU, CUDA and Metal — the same code scales from a laptop to a GPU node.

License

Apache 2.0. Free to use, modify and redistribute, including commercially.

Install

Pulsar.jl is in the Julia General registry, so it installs with the package manager:

julia> ]
pkg> add Pulsar

The documentation includes a quickstart that walks through single-qubit state transfer with GRAPE — system setup, target definition, control initialization and fidelity check.

Pulsar Studio

A graphical companion for designing and inspecting pulses without writing code — aimed at spectroscopists who want a better pulse, not a numerics project. In preparation; the accompanying paper is listed under publications.

Using Pulsar in your work? I'd genuinely like to hear about it — especially if it broke, or if your platform needs a Hamiltonian that isn't covered yet. Get in touch or open an issue.

Published pulse libraries

Alongside the software, my published work provides ready-to-use optimal control pulse sequences for ultrahigh-field spectrometers — including the 1.2 GHz library from Science Advances (2023) and the low-power sequences for 5 mm triple-resonance cryogenic probes from the Journal of Magnetic Resonance (2026). See the research page for what went into them.