This PR contains primarily a set of updates for the unit tests and for the tutorial/example notebooks aimed at reducing their runtime in the CI setting. This also includes some changes modernizing tests/notebooks moving away from use of legacy modelpacks. See issue #380 for a checklist summarizing the notebooks and tests which were identified as bottlenecks which have been addressed. In all cases the changes made are ones that reduce computational requirements without meaningfully impacting either the test coverage, or the message conveyance of a tutorial. E.g. switching from the XYI to the XY gate set in an example to reduce parameter counts (making stuff run more quickly) while still demoing the intended feature/analysis. With all of these changes in place the notebook regression checks now run in almost exactly half the time (at least from spot checking a couple ubuntu runners comparing two-weeks ago to today).
In the mix are also a couple of minor bugfixes/codebase changes. These are:
Set the default maximum iteration count for the optimizer to 100 when performing GST using the driver methods. Down from 100000 (essentially unlimited). This brings the default behavior inline with the defaults when using the OO interface using Protocol objects.
Some modernizations and tweaks to the qutrit model building helpers to conform with new line labeling behavior, and a switch to using TP constrained modelmembers by default.
Bugfix for StandardGST that ensures we make a copy of the target model rather than optimizing it in-place. I swear we had already done this fix well over a year ago, but perhaps this was inadvertently overwritten at some point.
This PR contains primarily a set of updates for the unit tests and for the tutorial/example notebooks aimed at reducing their runtime in the CI setting. This also includes some changes modernizing tests/notebooks moving away from use of legacy modelpacks. See issue #380 for a checklist summarizing the notebooks and tests which were identified as bottlenecks which have been addressed. In all cases the changes made are ones that reduce computational requirements without meaningfully impacting either the test coverage, or the message conveyance of a tutorial. E.g. switching from the XYI to the XY gate set in an example to reduce parameter counts (making stuff run more quickly) while still demoing the intended feature/analysis. With all of these changes in place the notebook regression checks now run in almost exactly half the time (at least from spot checking a couple ubuntu runners comparing two-weeks ago to today).
In the mix are also a couple of minor bugfixes/codebase changes. These are: