Skip to content

Conversation

@eggerdj
Copy link
Contributor

@eggerdj eggerdj commented Jun 8, 2021

Summary

This PR introduce an experiment to do resonator spectroscopy.

Details and comments

Resonator spectroscopy is done by sweeping the frequency of a pulse applied to the readout resonator. Since no discriminator is available (we don't even know the frequency of the resonator when doing this experiment) IQ data must be used. Furthermore, the IQ data may rotate in the IQ plane depending on the frequency of the readout pulse. Therefore, the standard SVD node cannot process the data and the ToAbs node is introduced.

* Added ToAbs IQ data processing node.
* Extended functionality of get_to_signal_processor.
@coruscating coruscating added this to the Release 0.2 milestone Aug 2, 2021
@eggerdj eggerdj removed this from the Release 0.2 milestone Aug 19, 2021
@coruscating coruscating added the blocked Can't be worked on until another issue is resolved label Aug 19, 2021
@yaelbh
Copy link
Collaborator

yaelbh commented Oct 20, 2021

@eggerdj Do you intend to complete this PR ?

There has been some discussion around #387. @jyu00 prefers to merge #387 only after #90 is done. Do you agree? @nkanazawa1989 What do you think?

@eggerdj
Copy link
Contributor Author

eggerdj commented Oct 20, 2021

@yaelbh Yes, I intend to complete this PR. Currently it is still blocked since pulse gates do not play nicely with acquire instructions. As far as I understand Lauren has been actively working on the pulse gate and acquire issue.

@lcapelluto
Copy link

This is so nice -- just by skimming the PR and cloning qiskit_experiments I was able to create a ResonatorSpectroscopy class to grab circuits, (added 3 lines to create circuits rather than schedules) and used that to create test cases on the backend side! 😄

fyi these were my changes

            with pulse.build(backend=backend, name="spectroscopy") as meas_cal:
                ...

            circuit = QuantumCircuit(1, 1)
            circuit.measure(qubit, qubit)
            circuit.add_calibration('measure', [qubit], block_to_schedule(meas_cal))

            ...
            circuits.append(circuit)

(probably needs to be QuantumCircuit(qubit, qubit), or something to avoid out of bounds errors)

@eggerdj
Copy link
Contributor Author

eggerdj commented Oct 20, 2021

@lcapelluto yes the PR was originally written with schedules due to the pulse gate issue. The changes you suggest are the way to go.

@eggerdj eggerdj mentioned this pull request Dec 17, 2021
4 tasks
@wshanks
Copy link
Collaborator

wshanks commented Jan 20, 2022

Should this be closed now that there is #583?

@eggerdj
Copy link
Contributor Author

eggerdj commented Jan 20, 2022

Replaced by #583

@eggerdj eggerdj closed this Jan 20, 2022
@eggerdj eggerdj deleted the resonator_spectroscopy branch March 17, 2022 16:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

blocked Can't be worked on until another issue is resolved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants