def convert_frame_change(self, instruction): """Return converted `FrameChangeInstruction`. Args: instruction (PulseQobjInstruction): frame change qobj Returns: Schedule: Converted and scheduled Instruction """ t0 = instruction.t0 channel = self.get_channel(instruction.ch) phase = instruction.phase # This is parameterized if isinstance(phase, str): phase_expr = parse_string_expr(phase, partial_binding=False) def gen_fc_sched(*args, **kwargs): # this should be real value _phase = phase_expr(*args, **kwargs) return commands.FrameChange(_phase)(channel) << t0 return ParameterizedSchedule(gen_fc_sched, parameters=phase_expr.params) return commands.FrameChange(phase)(channel) << t0
def gen_fc_sched(*args, **kwargs): # this should be real value _phase = phase_expr(*args, **kwargs) return commands.FrameChange(_phase)(channel) << t0
def gen_fc_sched(*args, **kwargs): phase = abs(phase_expr(*args, **kwargs)) return commands.FrameChange(phase)(channel) << t0