Adding Delay, ShiftPhase, and SetPhase instruction handling to pulse simulator #813
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.
Summary
This handles the first part of issue #736 , adding support/testing for the
Delay
,ShiftPhase
, andSetPhase
instructions.This PR depends on the changes in PR #811.Details and comments
Delay
didn't require any additional handling, as it doesn't enter theqobj
.experiment_to_structs
indigest_pulse_qobj.py
and the functionchan_value
innumeric_integrator.cpp
has been changed from relative to absolute.FrameChange
instruction (which has been replaced byShiftPhase
) was relative to the current phase. However,SetPhase
is an absolute instruction, and therefore requires absolute phase handling.experiment_to_structs
has been changed to construct an array tracking absolute phases, andchan_value
has been changed to look this value up (whereas previously it would add up all the relative phase changes).SetPhase
instruction has been added toexperiment_to_structs
.SetPhase
andShiftPhase
have been added.