-
Notifications
You must be signed in to change notification settings - Fork 66
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
New sampler implementation #388
Conversation
itertools.pairwise is >=3.10.
Necessary to avoid circular imports
noise models were made void with the change from QubitSamples to ChannelSamples
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
Now we need to pass the duration of the parent sequence as a parameter to embed the samples in an array of the right length
Last commits restore the tests and update them to the new architecture. |
Thank you @lvignoli ! I'll take over from here and circle back to you if I have any questions |
@lvignoli the changes are done. I'm noticing there's a tutorial that I'm guessing should be untracked? |
Thank you @HGSilveri! The tutorial was simply to check that the sampler was working as intended, so you can delete it safely. Besides I think @arthurfaria would like to write a notebook tutorial once this is reviewed and merge, see #349. |
Sounds good. Perhaps I will start with that one. Is there any other channel we can communicate like slack or something? |
Indeed, we have a Slack channel that has been dormant but that we can use. I sent you an invite. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Up to my few comments, everything looks good to me!
Thank you for taking over the development 💪
NB: I cannot approve since I am the author of the PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved with @lvignoli 's blessing 🙏
The following sampler implementation is channel-centric—by opposing to the former one which was qubit centric.
Samples dataclasses are defined in
pulser-core/samples.py
. Samples are extracted at the channel level from the_ChannelSchedule.get_samples()
method. For the regular user, there is only one function to know, thesample(seq)
one exposed by thepulser-core/sampler/
module.Improvements:
ChannelDrawContent
fromChannelSamples
.There is much more info needed to draw, its a wider scope than the time series, so I am unsure about the right design.
Sequence
class to get samples?