v3.5.0
Overview
This release adds some quality-of-life functions, mostly to the benefit of larger software stacks which integrate QuEST. It also includes some bug patches and internal software architectural clean-ups, primarily by @rrmeister.
New features
setDensityAmps()
allowing direct modification of the amplitudes of a density matrix.copySubstateToGPU()
allowing partial overwriting of a statevector in GPU memorycopySubstateFromGPU()
allowing partial loading of a GPU statevector into accessible memorymixNonTPKrausMap()
to simulate Kraus maps which are not necessarily trace-preserving
Other changes
- Updated the Bernstein-Vazirani demo to simulate more analogously to the experimental method
- Updated demo codes to use precision-agnostic string formatters
- Improved CMake build (f8747ca)
- Improved the internal validation architecture
Bug fixes
- patched rare distributed bug in
calcTotalProb()
of density matrices (#326) - patched rare GPU build bug in
applyPhaseFunc()
- patched rare memory leak during failed validation of
Qureg
andDiagonalOp
validation - patched GPU build flags (512966a)
- patched
invalidQuESTInputError()
build problem on Windows (#314) - patched build warnings related to precision of internal non-simulation functions (fc25c34)