This release is a pre-release and may not be stable for production use.
SImBA - Systematic Inference of Bosonic quAntum systems
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')
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
Metadata
Release files for quantum-simba 0.9.6.dev0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| quantum-simba-0.9.6.dev0.tar.gz | 20.1 kB | Without provenance | Details for quantum-simba-0.9.6.dev0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| quantum_simba-0.9.6.dev0-py3-none-any.whl | Python 3 | none | any | Details for quantum_simba-0.9.6.dev0-py3-none-any.whl |
Total release size: 42.8 kB
Release files / quantum-simba-0.9.6.dev0.tar.gz
| Download URL | quantum-simba-0.9.6.dev0.tar.gz |
|---|---|
| Size | 20.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e3d0c8fc2757e64095b7133430faa278b527d89b960a4b34e559439cb44465fb
|
|
BLAKE2b-256 checksum How to use checksums |
8a2b32ad04ebb23e7bafa963f0af1ada8486871376d767cca0f7c5a3c0d68a14
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / quantum_simba-0.9.6.dev0-py3-none-any.whl
| Download URL | quantum_simba-0.9.6.dev0-py3-none-any.whl |
|---|---|
| Size | 22.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2e1d6ff8df292505c9a7f54f39857d2037c2f5017265fff298006e2f3e5d4115
|
|
BLAKE2b-256 checksum How to use checksums |
fd6f5bc03f7fa7ec70c13131a06502c5146702dc74a24d484e03c93ab580dc86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Security for quantum-simba 0.9.6.dev0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.