Description
Overview This minor release (#622) adds some convenience functions to control QuEST's reporter functions, patches a critical segmentation fault in simulation above 32 qubits, patches the build's installation process and some minor reporter issues, and improves the documentation. New features Two new Debug > Reporting functions customise the outputs of functions like reportPauliStr() and reportPauliStrSum(): setReportedPauliChars() specifies new output characters to replace "IXYZ". setReportedPauliStrStyle() sets whether to print PauliStr as "XYIIIZ" or "Z0 Y4 X5". Patches #623 patched a critical bug in the amplitude-enumeration logic which caused a segmentation fault for simulations of over 32 qubits (believed to cause #618). 15a08ae693a4119f7676ad07e58e137c6eb855b1 removed superfluous re-validation of user input inside Trotter circuits. 5e449fe2eaf8c45194eb1bc774da7e88f8b69c99 patched a seg-fault when calling setMaxNumReportedItems(1,1) (though insignificant bug #588 remains). fb2527e5285b84fa46ae7f0f1a4c432d133936da patched reportScalar() which previously ignored the number of sig-figs set with setMaxNumReportedSigFigs(). c92ebb39eda859de41402788e602233a73e512b6 patched invalid-input error messages that interrupt reports which do not end in a trailing newline (by now always printing a newline before the error message). #624 restored C++17 compatibility of the source (by removing non-standard designated initialisers), which is now targeted by the build (though unit tests still require C++20). #601 and #616 patched the build's install process which previously required users to gratuitously re-specify preprocessor macros (like COMPILE_MPI) when including the pre-installed QuEST header. 420e11d25a2380c7e4853c91e5fa633b6243a4ec ensures that changes to the devel branch will trigger CI tests (as intended). Other changes Examples have been restructured, and a new example using QuEST to perform real-time Hamiltonian simulation (dynamics.c(pp)) was added. CI now runs Windows tests first since they are the most error-prone. CI now runs all isolated examples (in addition to merely compiling them), testing for link-time issues (see e9fa519617edd498a9f7e8901ce7273f44ceebe1). CI now compiles and runs all files in the new automated examples folder, offering external contributors a quick and easy way to platform-agnostically test their PR (in lieu of preparing a unit test)(see e9fa519617edd498a9f7e8901ce7273f44ceebe1). Code-coverage reporting in PRs (using LCOV) was disabled since it did not capture accelerated backend coverage. Many functions received new documentation (although the war continues). Several custom Doxygen tags were renamed (see #621) New contributors This release contained patches from new contributors: Luc Jaulmes in #616 James Richings in #623
Data Citation
Tyson Jones, aniabrown, Jacob Wilkins, Richard Meister, Fergus Cooper, BalintKoczor, Nicolas Vogt, Oliver Thomson Brown, Erich Essmann, Drew Silcock, Christopher, Gleb Struchalin, JPRichings, Kshitij Chhabra, Luc Jaulmes, Milos Prokop, & bruno villasenor. (2025). QuEST-Kit/QuEST: v4.1.0 (v4.1.0). Zenodo. https://doi.org/10.5281/zenodo.15531876
| Date made available | 28 May 2025 |
|---|---|
| Publisher | Zenodo |