ScalableSymbolicPulse¶
- class ScalableSymbolicPulse(pulse_type, duration, amp, angle, parameters=None, name=None, limit_amplitude=None, envelope=None, constraints=None, valid_amp_conditions=None)[source]¶
Bases:
qiskit.pulse.library.symbolic_pulses.SymbolicPulse
Subclass of
SymbolicPulse
for pulses with scalable envelope.Instance of
ScalableSymbolicPulse
behaves the same as an instance ofSymbolicPulse
, but its envelope is assumed to have a scalable form \(\text{amp}\times\exp\left(i\times\text{angle}\right)\times\text{F} \left(t,\text{parameters}\right)\), where \(\text{F}\) is some function describing the rest of the envelope, and both amp and angle are real (float). Note that both amp and angle are stored in theparameters
dictionary of theScalableSymbolicPulse
instance.When two
ScalableSymbolicPulse
objects are equated, instead of comparing amp and angle individually, only the complex amplitude :math:’text{amp}timesexpleft(itimestext{angle}right)’ is compared.Create a scalable symbolic pulse.
- Parameters
pulse_type (
str
) – Display name of this pulse shape.duration (
Union
[ParameterExpression
,int
]) – Duration of pulse.amp (
Union
[ParameterExpression
,float
,complex
]) – The magnitude of the complex amplitude of the pulse.angle (
Union
[ParameterExpression
,float
]) – The phase of the complex amplitude of the pulse.parameters (
Optional
[Dict
[str
,Union
[ParameterExpression
,complex
]]]) – Dictionary of pulse parameters that defines the pulse envelope.name (
Optional
[str
]) – Display name for this particular pulse envelope.limit_amplitude (
Optional
[bool
]) – IfTrue
, then limit the absolute value of the amplitude of the waveform to 1. The default isTrue
and the amplitude is constrained to 1.envelope (
Optional
[Expr
]) – Pulse envelope expression.constraints (
Optional
[Expr
]) – Pulse parameter constraint expression.valid_amp_conditions (
Optional
[Expr
]) – Extra conditions to skip a full-waveform check for the amplitude limit. If this condition is not met, then the validation routine will investigate the full-waveform and raise an error when the amplitude norm of any data point exceeds 1.0. If not provided, the validation always creates a full-waveform.
- Raises
PulseError – If both amp is complex and angle is not None or 0.
Methods
Plot the interpolated envelope of pulse.
Return a Waveform with samples filled according to the formula that the pulse represents and the parameter values it contains.
Return True iff the instruction is parameterized.
Validate parameters.
Attributes
- constraints¶
Return symbolic expression for the pulse parameter constraints.
- Return type
Expr
- duration¶
- envelope¶
Return symbolic expression for the pulse envelope.
- Return type
Expr
- id¶
Unique identifier for this pulse.
- Return type
int
- limit_amplitude = True¶
- name¶
- parameters¶
- Return type
Dict
[str
,Any
]
- pulse_type¶
Return display name of the pulse shape.
- Return type
str
- valid_amp_conditions¶
Return symbolic expression for the pulse amplitude constraints.
- Return type
Expr