Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

SImBA - Systematic Inference of Bosonic quAntum systems

License: MIT Documentation Status

>>Documentation<<

Compute graphical quantum system representations from transfer functions

from simba import transfer_function_to_graph, tf2rss, adiabatically_eliminate
from sympy import symbols

s = symbols('s')
gamma_f, lmbda = symbols('gamma_f lambda', real=True, positive=True)
tf = (s**2 + s * gamma_f - lmbda) / (s**2 - s * gamma_f - lmbda)

transfer_function_to_graph(tf, 'active_coupled_cavity.png', layout='dot')
Active coupled cavity realisation

Calculate system transfer functions from the inferred system

split_network = tf2rss(tf).to_slh().split()
h_int = split_network.interaction_hamiltonian
h_int.expr.simplify()

Compute transfer functions between any degrees of freedom of the system

print(split_network.state_vector)
tfm = split_network.tfm
tf = tfm.open_loop('a_1', 'aout_1').simplify()
gamma_1, _ = split_network.aux_coupling_constants
adiabatically_eliminate(tf, gamma_1)

Installation

Install via pip install quantum-simba

See notebooks for examples.

To clone the dev environment run,

$ conda env create -f=environment.yml
$ conda activate simba

To install simba for development purposes,

$ pwd
... (simba code directory containing setup.py)
$ pip install -e .
(then to run test suite)
$ py.test

To build documentation locally,

$ pwd
... (simba code directory containing setup.py)
$ ./make_docs.sh

Motivation

Often when designing detectors for high-precision measurements, we are most interested in the frequency domain behaviour of such systems. For example, when computing the measurement shot noise of a gravitational wave detector, the noise spectrum is determined solely by the transfer function from the internal degree of freedom perturbed by the passing gravitational wave to the measurement output of the detector.

Until recently there has been no way to infer the layout of a quantum system directly from its transfer function, but now due to recent research in the quantum control community this is possible.

This software makes the process of finding a given physical realisation from the input-output transfer function completely automatic. Once this has been computed, it can then be used, for example, to deduce physical realisations, or more interestingly, to compute the most sensitive possible detector for a given numbers of internal degrees of freedom by minimizing the quantum Cramer-Rao bound.

TODO

  • Example notebooks
  • Write paper
  • Implement scattering matrix
  • Include examples on this page

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quantum-simba-0.9.3.dev0.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quantum_simba-0.9.3.dev0-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file quantum-simba-0.9.3.dev0.tar.gz.

File metadata

  • Download URL: quantum-simba-0.9.3.dev0.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3

File hashes

Hashes for quantum-simba-0.9.3.dev0.tar.gz
Algorithm Hash digest
SHA256 01728724f7cfde5936ab009fc218592a8168f2f22606c91184261bf8db5c2da7
MD5 8ad08d6c90470bf0500a9b8b5a8adb87
BLAKE2b-256 895ee0f35f0dc4f8ce84dafb4b9eaac379a4a8be3824cad34af4f83e2fadc044

See more details on using hashes here.

File details

Details for the file quantum_simba-0.9.3.dev0-py3-none-any.whl.

File metadata

  • Download URL: quantum_simba-0.9.3.dev0-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.3

File hashes

Hashes for quantum_simba-0.9.3.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 56ad9b387572bba259686d4fc7e1aeb88706afca9ec4cad291c6e725c3465d65
MD5 e18a018b91807126c32207e1eaefbf0c
BLAKE2b-256 00f84f45675ef66d16f9ff5e2e8f3b9b3f1a40e0997e48d29d466404167894f2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page