-
Notifications
You must be signed in to change notification settings - Fork 19
start of QuantumToolboxExt #121
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
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #121 +/- ##
==========================================
- Coverage 76.62% 76.16% -0.47%
==========================================
Files 19 20 +1
Lines 830 839 +9
==========================================
+ Hits 636 639 +3
- Misses 194 200 +6 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Could you just print the error here? It makes review and answering questions faster.
Notice that the for loops are iterating through
Yeah, if you do want a new QuantumSymbolics.jl/src/QSymbolicsBase/predefined.jl Lines 119 to 132 in a4980ef
When defining the conversion in QuantumOptics, we are looping through each permutation of the two qubit gates and lining them up with the spin operators defined in QuantumOptics. |
Hi, I'm one of the developers in For your information, we have just merged a pull request (qutip/QuantumToolbox.jl#486) to implement This will be available in our next release |
@jeffwack what's the status on this PR? I can help you finish it if you want. |
@apkille That sounds great to me! Apologies, I let this fall off my todo list. If you want to take this over that is fine by me :) |
This is incomplete, but I have made some progress on #116 and have some questions. My strategy was to copy the file QuantumOpticsExt and go line by line to convert to QuantumToolbox. I ran into name collisions (basis and \otimes) come to mind, so I decided to be conservative and use the QuantumToolbox.function() form for all function calls.
I ran into a roadblock converting this:
Specifically, you cannot copy() a QuantumToolbox operator. This example shows the error:
So, to avoid type piracy we cannot implement the conversion as written without contributing a method for copy() to QuantumToolbox?
Another route would be to rework that chunk to avoid the copy, but I am not so clear on how it does what it does. Why the macro?