Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop QuTiP dependency #25

Closed
thangleiter opened this issue May 28, 2020 · 1 comment
Closed

Drop QuTiP dependency #25

thangleiter opened this issue May 28, 2020 · 1 comment

Comments

@thangleiter
Copy link
Member

In the core package, QuTiP is only used for plotting Bloch sphere trajectories. Reimplementing this (or copying their code should the licensing allow it) should significantly lower the installation barrier.

At first glance, this would require

  • reimplementing plotting.plot_bloch_vector_evolution() and
  • dynamically checking if QuTiP is available for the types.Operator, types.State types.

Keeping the dependency for the examples / documentation is okay since we still want to interface easily with QuTiP.

@thangleiter
Copy link
Member Author

Much simpler than reimplementing plotting.plot_bloch_vector_evolution() etc. is simply handling QuTiP as an optional dependency at install. Hence, we'd introduce a new extra, bloch_sphere_visualization with requirements matplotlib and qutip.

In the same vein, it makes sense to make the whole plotting module an extra. It is not part of the core functionality and requires an additional dependency (matplotlib). Since most users will have matplotlib installed anyway, the module should be available to mostly everyone anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant