Tpm/eta phase units - #520
Merged
Merged
Conversation
S.get_eta_phase_array returns radians, but the 'eta_phase' key of a resonance dict is degrees. run_grad_descent_and_eta_scan wrote the radians value into res['eta_phase'] with update_tune=True, so the resulting tune file held radians under a degrees key and every phase came back ~57x too small when reloaded. plot_channel_resonance made the opposite mistake, converting the already-radians array with np.deg2rad before rotating the response, so the circle plot was drawn at the wrong angle. In get_full_band_sweep, restore the eta magnitude before the phase. Eta is stored in firmware as Cartesian etaI/etaQ and each setter recomputes from the other's current value, so setting the phase while the magnitude is zero writes (0, 0) and drops the phase. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
S.get_eta_phase_array returns radians, but the 'eta_phase' key of a resonance dict is degrees. run_grad_descent_and_eta_scan wrote the radians value into res['eta_phase'] with update_tune=True, so the resulting tune file held radians under a degrees key and every phase came back ~57x too small when reloaded. plot_channel_resonance made the opposite mistake, converting the already-radians array with np.deg2rad before rotating the response, so the circle plot was drawn at the wrong angle.
In get_full_band_sweep, restore the eta magnitude before the phase. Eta is stored in firmware as Cartesian etaI/etaQ and each setter recomputes from the other's current value, so setting the phase while the magnitude is zero writes (0, 0) and drops the phase.