XanaduAI/thewalrus: Release 0.16.0
Creators
- 1. @XanaduAI
- 2. Xanadu Quantum Technologies
- 3. University of York
- 4. Slovak Academy of Sciences
- 5. Dept. of Maths, UniTS | @aicps-units | @sissa
Description
Adds the function
hafnian_sparse
to compute sparse loop hafnians (pure Python implementation). #245The
symplectic.squeezing
function is now generalized to multiple modes of single mode squeezing. #249Adds a function
symplectic.passive_transformation
which allows for Gaussian states to be transformed by arbitrary non-unitary, non-square linear optical transformations. #249The
torontonian_sample_state
function can now sample displaced Gaussian states. #248Adds the function
hafnian_banded
to calculate the hafnian of a banded matrix. #246Adds the functions
hermite_multidimensional_numba
andgrad_hermite_multidimensional_numba
to calculate renormalized multidimensional Hermite polynomials and its gradients using Numba. #251Adds the functions
mzgate
andgrad_mzgate
to calculate the Fock representation of the Mach-Zehnder gate and its gradients. #257Adds the ability to calculate n-body photon number distributions using the function
n_body_marginals
. #253Adds the ability to calculate cumulants and arbitrary expectation values of products of powers of photon numbers with the functions
photon_number_cumulant
andphoton_number_moment
respectively. #264Adds support for calculating the permanent using the BBFG algorithm and changes this to the default method for calculating permanents. #267
Adds the ability to calculate click cumulants in threshold detection with the function
click_cumulant
. #264
Speeds up the calculation of photon number variances/covariances. #244
Updates documentation for the the
tor
function. #265Numba methods for multidimensional hermite can now detect dtype automatically. #271
Corrects bug in the function
photon_number_covar
that gave incorrect results when the covariance between two modes with finite displacements was calculated. #264Fixes a bug in
setup.py
that would cause the build to fail when using miniforge for M1 macs. #273Updates the
samples.generate_hafnian_sample
function to renormalize probabilities. #250
- Torontonians and approximations to the hafnian for non-negative matrices are no longer calculated in C++ using the Eigen software library. Instead, they are now calculated in pure Python using Numba. These changes have the nice result of making The Walrus compilable from source using only a C++ compiler. #262 #259.
This release contains contributions from (in alphabetical order):
Ali Asadi, Jake Bulmer, Timjan Kalajdzievski, Filippo Miatto, Nicolas Quesada, Yuan Yao
Files
XanaduAI/thewalrus-v0.16.0.zip
Files
(2.0 MB)
Name | Size | Download all |
---|---|---|
md5:63ea13f994a6ed903c8f3eeb907dbf55
|
2.0 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/XanaduAI/thewalrus/tree/v0.16.0 (URL)