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

Reworking the NoiseModel interface #710

Merged
merged 13 commits into from
Jul 19, 2024
Merged

Reworking the NoiseModel interface #710

merged 13 commits into from
Jul 19, 2024

Conversation

HGSilveri
Copy link
Collaborator

  • Allows a NoiseModel to be defined solely by its relevant parameters, assuming everything else to be 0.0/undefined
  • Deprecates the explicit definition of noise_types and reliance on default values
  • Updates the NoiseModel.__repr__() to show only relevant parameters
  • Modifies QutipEmulator to avoid Hamiltonian resampling with "amplitude" noise when amp_sigma=0.
  • Updates the JSON schema to accommodate these changes

Fixes #697 .

@HGSilveri HGSilveri requested a review from a-corni July 17, 2024 15:41
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Copy link
Collaborator

@a-corni a-corni left a comment

Choose a reason for hiding this comment

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

Thanks for tackling this ! I made few comments, the most interesting one might be about temperature - I think we can allow it to be 0, it fits with the current code and it gives a nice physical intuition of Doppler noise - it's perfect if T=0K.

pulser-core/pulser/noise_model.py Outdated Show resolved Hide resolved
pulser-core/pulser/noise_model.py Outdated Show resolved Hide resolved
pulser-core/pulser/noise_model.py Show resolved Hide resolved
pulser-core/pulser/noise_model.py Outdated Show resolved Hide resolved
pulser-core/pulser/noise_model.py Outdated Show resolved Hide resolved
pulser-core/pulser/noise_model.py Outdated Show resolved Hide resolved
pulser-core/pulser/noise_model.py Show resolved Hide resolved
pulser-core/pulser/noise_model.py Show resolved Hide resolved
pulser-simulation/pulser_simulation/hamiltonian.py Outdated Show resolved Hide resolved
Copy link
Collaborator

@a-corni a-corni left a comment

Choose a reason for hiding this comment

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

Thanks for tackling the last comments :) Just have few questions to increase my understanding, and then it will be good for me !

pulser-core/pulser/noise_model.py Show resolved Hide resolved
Copy link
Collaborator

@a-corni a-corni left a comment

Choose a reason for hiding this comment

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

I approve the PR ! I think my comment on the implementation of noise from amplitude fluctuations should be seen as possible improvements and tackled in a separate PR.

@HGSilveri HGSilveri merged commit 1b3735d into develop Jul 19, 2024
7 checks passed
@HGSilveri HGSilveri deleted the hs/noise-model-init branch July 19, 2024 14:00
@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.

Rework the NoiseModel interface
2 participants