quchip.control.signal¶
Signal-chain transforms for control equipment.
Transforms operate on complete analytic signals keyed by
(line_label, source_index) and are owned by
ControlEquipment (not by individual
drives). The equipment applies them after scheduling and before each
destination drive maps physical I/Q quadratures into the Hamiltonian.
Available transforms¶
Delay: per-line time shift.Gain: per-line complex scaling (IQ imbalance, attenuation).Crosstalk: linear leakage from a source line onto a victim line, parameterized by amplitudebeta, angletheta, and relativedelay. It is the standard single-parameter model, used by Sheldon et al., PRA 93, 060302 (2016) for two-qubit gate calibration. Sarovar et al., Quantum 4, 321 (2020) used it for crosstalk characterization.
Examples
>>> from quchip import ChargeDrive, Crosstalk, Delay, Gain
>>> # Crosstalk between two already-constructed drives:
>>> # xt = Crosstalk(source=drive_a, victim=drive_b, beta=0.02, theta=0.1)
Classes
|
Complete complex classical signal delivered on one control line. |
|
Linear crosstalk from a source drive line onto a victim line. |
|
Shift every signal on one control line by |
|
Scale every signal on one control line by a complex factor. |
|
A signal-map transform with shared parameter and setting declarations. |
- class quchip.control.signal.AnalyticSignal(program, carrier=None, phase_reference=None)[source]¶
Bases:
objectComplete complex classical signal delivered on one control line.
programincludes the envelope, schedule timing and phase, and any carrier. Classical equipment transforms this complete value before a drive maps its physical quadratures into the quantum Hamiltonian.- Parameters:
program (SignalProgram) – Complete envelope, timing, phase, and carrier program.
carrier (Any or None, default=None) – Carrier frequency in GHz, when uniquely defined.
phase_reference (Any or None, default=None) – Reference used to track coherent phase alignment.
- program: SignalNode¶
- classmethod from_pulse(pulse)[source]¶
Build the complete scheduled signal for one pulse record.
A
detuningmultiplies the envelope byexp(-2πi detuning τ)at local timeτ = t - start_time. Its phase is therefore zero at the pulse start, and the delivered carrier frequency isfreq + detuning.- Parameters:
pulse (object) – Scheduled pulse entry with envelope, timing, phase, carrier, and an optional
detuningin GHz.
- property i: PhysicsExpr¶
In-phase physical quadrature of the delivered signal.
- property q: PhysicsExpr¶
Quadrature-phase physical component of the delivered signal.
- evaluate(t, *, xp=None)[source]¶
Evaluate the complete complex signal.
- Parameters:
t (array-like) – Evaluation times in ns.
xp (array namespace or None, default=None) – Numerical array module; inferred when omitted.
- class quchip.control.signal.SignalTransform(**values)[source]¶
Bases:
Registrable,ABCA signal-map transform with shared parameter and setting declarations.
Implement
applyand declareserializable=Trueon classes whose fields can be saved. Import the extension before loading its instances.- Parameters:
**values (Any) – Settings and numerical parameters declared by the concrete transform.
- with_parameter_value(name, value)[source]¶
Validate and rebind one numerical field on an independent transform.
- Parameters:
name (str) – Declared numerical field name.
value (Any) – Replacement value in the field’s declared units.
- class quchip.control.signal.Delay(line, delta_t)[source]¶
Bases:
SignalTransformShift every signal on one control line by
delta_tns.- Parameters:
- delta_t: float = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit=None, symbol=None, noise=False, kw_only=False, required=True)¶
- class quchip.control.signal.Gain(line, factor)[source]¶
Bases:
SignalTransformScale every signal on one control line by a complex factor.
- Parameters:
- factor: complex = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit=None, symbol=None, noise=False, kw_only=False, required=True)¶
- class quchip.control.signal.Crosstalk(source, victim, beta, theta=0.0, delay=0.0)[source]¶
Bases:
SignalTransformLinear crosstalk from a source drive line onto a victim line.
For each scheduled operation on the source line, adds
\[\beta\, e^{i\theta}\, s_\mathrm{src}(t - \Delta t)\]onto the victim line. \(s_\mathrm{src}\) is the complete source signal, including its carrier, phase, and both quadratures, so delaying it includes the carrier phase \(2\pi f\Delta t\) without a separate correction. See Balewski et al., arXiv:2502.05362; Sheldon et al., PRA 93, 060302 (2016); Sarovar et al., Quantum 4, 321 (2020).
- Parameters:
- beta: Any = Parameter(default=unbound, positive=False, nonnegative=False, serialize=True, unit=None, symbol=None, noise=False, kw_only=False, required=True)¶
- theta: Any = Parameter(default=0.0, positive=False, nonnegative=False, serialize=True, unit=None, symbol=None, noise=False, kw_only=False, required=False)¶
- delay: Any = Parameter(default=0.0, positive=False, nonnegative=False, serialize=True, unit=None, symbol=None, noise=False, kw_only=False, required=False)¶