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

Replace all results objects in 0.2 with arrays #899

Closed
andrea-pasquale opened this issue May 8, 2024 · 2 comments · Fixed by #940
Closed

Replace all results objects in 0.2 with arrays #899

andrea-pasquale opened this issue May 8, 2024 · 2 comments · Fixed by #940
Assignees
Milestone

Comments

@andrea-pasquale
Copy link
Contributor

Originally posted by @alecandido in #896 (review)

@alecandido
Copy link
Member

alecandido commented Jul 19, 2024

The dimension of the array will be:

(shots, sweeper1, sweeper2, ..., sweeperN)  # discriminated
(shots, sweeper1, sweeper2, ..., sweeperN, 2)  # IQ
(shots, sweeper1, sweeper2, ..., sweeperN, times)  # raw waveforms

without shots if an average is taken.

A function to yield the shape given ExecutionParametrs, list[Sweeper] will be provided (mainly for testing and validation, but also exposed to the user, documenting the meaning).

@alecandido alecandido linked a pull request Jul 23, 2024 that will close this issue
2 tasks
@alecandido
Copy link
Member

@stavros11 @andrea-pasquale: I was considering having a fixed amount of dimensions, other than the sweeper ones. I.e. replacing "missing" dimensions with 1s.

This operation could be automatically undone with np.squeeze.

The idea behind would be to have a more predictable shape, and to keep the same rank (as much as possible).
On the other side, dimensions are useful: for the same reason for which we have a variable shape length because of sweepers, it is better to have a (143, 2) shape for a raw waveform than a (286,) one (is it raw major? column major?), and better no dimension at all if discriminated.

In principle, this may complicate the handling of different execution parameters (acquisition type and averaging mode). In practice, I expect that they have to be handled separately in any case...

@alecandido alecandido self-assigned this Aug 2, 2024
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 a pull request may close this issue.

2 participants