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")Combined system Hamiltonian:
(A_ω*(A_a′*A_a)+B_ω*(B_a′*B_a)+(0.0 - 0.5im)*sqrt(A_κ)*conj(sqrt(B_κ))*(A_a*B_a′)+(-0.0 + 0.5im)*conj(sqrt(A_κ))*sqrt(B_κ)*(A_a′*B_a))

System operators:
Set(SecondQuantizedAlgebra.QNumber[A_a, B_a′, A_a′, B_a])

System parameters:
Set(SymbolicUtils.Symbolic[B_κ, B_ω, 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