The main focus of this release was an improved compilation. In particular, being able to provide Windows binaries, given that this is a recurring issue.
Version 0.3.6 is the first to ship a Windows distributable, consisting of a Python package with associated documentation and Demos. Everything is still somewhat crude (documentation, setup, required preparation), but it works at least.
To get there, a host of other changes needed to be done. Wavepacket now depends on an upgraded version of the tensor library (which builds rather easily on Windows). Another side effect was that I had to revisit how to build Wavepacket easily under any operating system. The upgraded Vagrantfile now provides a template for compiling all dependencies that should be rather portable to arbitrary systems.
To slowly improve the plotting capabilities, this release adds another plotting type. The plot is still somewhat simple compared to the Matlab version, but it is a first step towards more complex plotting setups.
This one has been on my personal agenda for years. I wanted to implement a polynomial solver similar to the Chebychev solver, but suitable for open quantum systems. The new Faber solve is moredifficult to use than the Chebychev solver because we need to specify a domain of convergence in the complex plane, not just an interval on the real/imaginary axis. However, the final result should be reasonably straight forward to use. See https://wavepacket.sourceforge.io/cpp-doc/current/demo_faber.html for the ugly details.
Because most of the effort in using the Faber solver is spent on figuring out the support of the Hamiltonian under study, this issue also spawned some additional functionality to get extremal potential values, to truncate simple operators (DvrOperator / FbrOperator, which are diagonal in the DVR or FBR), and to estimate the maximum eigenvalue with the power method.
As usual, other issues got fixed along the way I would just refer to the detailed changelog under https://sourceforge.net/p/wavepacket/cpp/git/ci/master/tree/NEWS instead of repeating it here.
I currently plan to finish the API, which will introduce some breaking changes over the next releases, and to implement the final functionality to be roughly en par with the Matlab version in terms of basic functionality. I also have a mild interest in fleshing out the Python interface more, because Python offers a more natural trial&error approach to running Wavepacket simulations.