Changelog¶
for Quantum Information Toolkit (Python version)
0.12.0 (2021-09-05)¶
Features¶
Python 2 compatibility dropped.
Bump dependencies: NumPy 1.20, SciPy 1.6, matplotlib 3.4, Sphinx 4.1
New project setup with pyproject.toml, setup.cfg.
Unit tests now use pytest, more unit tests.
Docstrings now use sphinx.ext.napoleon, math in the docs is rendered using MathJax, API docs are generated using sphinx.ext.autosummary.
Classes renamed to begin with a capital letter: Lmap, State, Seq…
SU(2) rotations renamed to Rx, Ry, Rz
seq: sign convention changed, converted into the Seq class.
utils.tensorbasis also returns the integer locality of each element.
examples.bb84 prints more info.
examples.nmr_sequences updated, now also does pulse strength errors.
hamiltonian.jaynes_cummings updated.
hamiltonian.heisenberg updated.
invariant.plot_canonical_2q and invariant.plot_makhlin_2q also plot the set of perfect entanglers.
markov.MarkovianBath class rewritten, supports also fermionic baths.
Added:
Lmap.tensorpow
Lmap.real
Lmap.imag
State.werner
State.isotropic
gate.copydot
gate.plusdot
gate.epsilon
utils.cdot
utils.tensorsum
utils.rand_GL
utils.superop_to_choi
utils.trisurf
seq.knill
seq.dd, seq.cpmg merged into seq.dd
invariant.gate_leakage_inv
invariant.gate_adjoint_rep
invariant.canonical_inv_normalize
markov.MarkovianBath.plot_bath_correlation
markov.MarkovianBath.plot_spectral_correlation
markov.MarkovianBath.plot_spectral_correlation_vs_cutoff
examples.werner_states
examples.quantum_walk
ho.rotate
ho.beamsplitter
ho.cx
Bugfixes¶
Lmap.__init__ and Lmap.__repr__ now handle also sparse matrices.
invariant.LU fixed, renamed invariant.state_inv
markov.ops warns of possible RWA violations.
examples.qft_circuit now also works on all nonpalindromic dim vectors.
ho.squeeze: square the matrix, not the elements
0.11.0 (2014-04-09)¶
Features¶
Code now supports both Python 2.7 and Python 3.
Tests moved into the test subdirectory, rewritten using unittest. The tests can be run either individually or all together using python -m unittest discover -s test
Use specific reST syntax for documenting parameters where needed.
Use sphinxcontrib-bibtex for the references.
Bugfixes¶
seq.scrofulous now uses the phi parameter.
Lots of pylinting.
0.10.0 (2014-03-29)¶
Features¶
Bump dependencies: NumPy 1.7.1, SciPy 0.11.0, matplotlib 1.2
Code cleanup, references updated.
Use setuptools for packaging.
examples.nmr_sequences can also plot a user-given sequence.
plot.correlation_simplex_2q renamed to plot.correlation_simplex
Added:
utils.comm
utils.acomm
hamiltonian.heisenberg
hamiltonian.jaynes_cummings
hamiltonian.hubbard
hamiltonian.bose_hubbard
hamiltonian.holstein
Bugfixes¶
utils.fermion_ladder simplified and fixed.
utils.majorize fixed.
state.check fixed.
plot.adiabatic_evolution: indexing bug fixed.
0.9.13 (2014-03-24)¶
Features¶
Sphinx module docs moved into the module docstrings.
Examples beautified.
state.entropy also gives Rényi entropies.
utils.gellmann returns a 3-dimensional array instead of a list (in correct order!).
utils.rank uses a smarter default tolerance.
utils.eigsort renamed to utils.eighsort
Added:
state.check
lmap.__div__ for convenience until we migrate to Python 3.
utils.orth
utils.nullspace
utils.nullspace_hermitian
utils.superop_fp
Bugfixes¶
Scipy 0.10 fix: scipy.misc.factorial imported from the correct module.
state.plot 3D plot of mixed states fixed. Color is back, better viewpoint, bars follow matrix ordering.
state.propagate uses deepcopy on the results by default, multiple input time instances produce the correct output.
state.negativity: extra sqrt removed.
state.projector: should only work on kets.
state.scott: works again, lexicographic ordering of output terms.
0.9.12 (2012-08-31)¶
Features¶
Initialization message removed.
Better documentation, docstring backslash problems fixed.
Preparing for Python 3 conversion: added the absolute_import and unicode_literals __future__ features. Now we use every non-redundant __future__ feature available in Python 2.6.
examples.bb84 also prints the interesting stuff.
examples.quantum_channels and examples.nmr_sequences use GridSpec to define the subplots.
utils.majorize uses tolerances.
Entire seq module revamped.
Renamed some functions in the plot module by removing the redundant
plot_
prefix.plot.bloch_sphere no longer accepts a state as input.
Added:
Bernstein-Vazirani algorithm example.
lmap.norm
lmap.trace
utils.rand_pu, this is how utils.rand_positive gets its partition of unity.
utils.rand_SL
invariant.LU
plot.state_trajectory, plot.correlation_simplex_2q
Bugfixes¶
setup.py fixed.
eig/eigh, eigvals/eigvalsh in state.propagate and elsewhere. Now we get orthonormal eigenvectors with degenerate eigenvalues as well.
utils.expv no longer crashes with a cryptic error message when given np.matrix instances as input, now raising an exception instead.
0.9.11 (2012-08-22)¶
Features¶
Bump dependencies: matplotlib 1.0.1+, NumPy 1.5.1+, SciPy 0.9.0+. This fixes several problems with 3D plotting. Sparse matrix handling is improved.
setup.py, proper distutils packaging.
Bugfixes¶
3D subplots fixed.
0.9.10 (2011-06-26)¶
First public beta, based on the MATLAB QIT version 0.9.9, with several bugfixes.
Features¶
Sphinx documentation.