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

Enable definition of effective noise operators in all basis #716

Merged
merged 8 commits into from
Aug 7, 2024

Conversation

a-corni
Copy link
Collaborator

@a-corni a-corni commented Aug 2, 2024

  • Enables the definition of effective noise operators in a Simulation of a Sequence with Rydberg and Raman channels.
  • Redefines the collapse operators associated with dephasing noise: the collapse operators become $ \sqrt{2\gamma} \left |r \right>\left <r \right |$ and $ \sqrt{2\gamma_h} \left |h \right>\left <h \right |$.
  • Test the reduction to basis of a density matrix obtained after simulation using effective noise operators in all basis (not implemented error)

@a-corni a-corni requested a review from HGSilveri August 2, 2024 08:01
Copy link
Collaborator

@HGSilveri HGSilveri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good! Are you still updating the tutorial on this one?

@@ -865,6 +855,73 @@ def test_noises_digital(matrices, noise, result, n_collapse_ops, seq_digital):
seq_digital.register.qubits
)
trace_2 = res.states[-1] ** 2
assert np.abs(np.trace(trace_2)) < 1 and not np.isclose(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was the np.abs() needed because there was an imaginary part?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was not really needed, but just at some point I had some issues with this test and I was wondering if it was coming from there...

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, let's revert it then!

Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@HGSilveri HGSilveri linked an issue Aug 6, 2024 that may be closed by this pull request
@HGSilveri
Copy link
Collaborator

I fixed the issue in the test on #717 , it is unrelated

Copy link
Collaborator

@HGSilveri HGSilveri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, great job!

@a-corni a-corni merged commit 0455ed1 into develop Aug 7, 2024
7 checks passed
@a-corni a-corni deleted the noise_all branch August 7, 2024 08:34
@a-corni a-corni restored the noise_all branch August 7, 2024 08:52
a-corni added a commit that referenced this pull request Aug 7, 2024
@a-corni a-corni deleted the noise_all branch August 7, 2024 09:04
@HGSilveri HGSilveri mentioned this pull request Sep 20, 2024
HGSilveri added a commit that referenced this pull request Sep 20, 2024
**Main changes:**
- Reworking the NoiseModel interface (#710)
- Allow modification of the EOM setpoint without disabling EOM mode (#708)
- Enable definition of effective noise operators in all basis (#716)
- Add leakage (#720)
- Support differentiability through Torch tensors (#703)
- Add from_abstract_repr to Device and VirtualDevice (#727) 
- [FEAT] Handle batches with partial results (#707)
- Add open batches to pulser-pasqal (#701)
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

Successfully merging this pull request may close these issues.

Adding effective channel noises to digital basis
2 participants