Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
OK, sorry for the unsolicited PRs, but I there were a couple of things that unsettled me in the tests, and I felt that such an optimiser should really have a harder test.
I've been doing my own stuff in the background, and have benefitted from reading this repository, so I thought I'd give something back. For reference, I originally was concerned because my VMCON could not solve this problem, so I checked it with this one, and found that it also couldn't. But then I tried different QSP solvers, and they do work.
EDIT: The gradient tests and the scipy stuff can be removed, I've just left them in to facilitate your review.