SLHQuantumSystems.jl

SLHQuantumSystems.jl is a Julia package for creating and composing open quantum systems using the SLH framework.

Quick Start

Get started by running one of the examples!

julia> include("examples/cascadedcavities.jl")SLH("sys", SLHQuantumSystems.Subspace[OpticalMode("A_"), OpticalMode("B_")], Dict{Symbol, SymbolicUtils.BasicSymbolic{Real}}(:B_l => B_l, :A_ω => A_ω, :B_ω => B_ω, :A_κ => A_κ, :A_l => A_l, :B_κ => B_κ), ["B_in"], ["A_out"], [1.0;;], SecondQuantizedAlgebra.QAdd[(A_ω*(A_a)+B_ω*(B_a))], (B_l*(B_a′*B_a)+(0.0 - 0.5im)*A_ω*B_ω*(A_a′*B_a)+(0.0 + 0.5im)*A_ω*B_ω*(A_a*B_a′)+A_l*(A_a′*A_a)))

Overview of SLH systems

The SLH framework represents each open quantum systems with three components:

  • S: Scattering matrix describing direct input-output coupling of external (bath) modes
  • L: Coupling vector describing the interaction of the internal modes with the external modes
  • H: System Hamiltonian describing internal dynamics

Component Library

The SLH framework enables you to create complicated quantum systems by combining simple, reusable components

  • Pre-built quantum components including:
    • Basic cavities
    • Squeezing cavities
    • Radiation pressure cavities
    • Jaynes-Cummings QED cavity

Dependencies

References

[1]
J. Combes, J. Kerckhoff and M. Sarovar. The SLH framework for modeling quantum input-output networks. Advances in Physics: X 2, 784–888 (2017), arXiv:1611.00375 [quant-ph].