qibosoq.components package#
Helper objects.
Submodules#
qibosoq.components.base module#
Various helper objects.
- class qibosoq.components.base.Config(repetition_duration: int = 100, adc_trig_offset: int = 200, reps: int = 1000, soft_avgs: int = 1, average: bool = True)[source]#
Bases:
object
General RFSoC Configuration.
- class qibosoq.components.base.OperationCode(value)[source]#
Bases:
IntEnum
Available operations.
- EXECUTE_PULSE_SEQUENCE = 1#
- EXECUTE_PULSE_SEQUENCE_RAW = 2#
- EXECUTE_SWEEPS = 3#
- class qibosoq.components.base.Qubit(bias: float | None = None, dac: int | None = None)[source]#
Bases:
object
Qubit object, storing flux information.
- class qibosoq.components.base.Parameter(value)[source]#
-
Available parameters for sweepers.
- FREQUENCY = 'freq'#
- AMPLITUDE = 'gain'#
- RELATIVE_PHASE = 'phase'#
- DELAY = 't'#
- BIAS = 'bias'#
- DURATION = 'duration'#
qibosoq.components.pulses module#
Pulses objects.
- class qibosoq.components.pulses.Pulse(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int)[source]#
Bases:
object
Abstract Pulse object.
- class qibosoq.components.pulses.Rectangular(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int, shape: str = 'rectangular')[source]#
Bases:
Pulse
Rectangular pulse.
- class qibosoq.components.pulses.Gaussian(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int, rel_sigma: float, shape: str = 'gaussian')[source]#
Bases:
Pulse
Gaussian pulse.
- class qibosoq.components.pulses.Drag(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int, rel_sigma: float, beta: float, shape: str = 'drag')[source]#
Bases:
Pulse
Drag pulse.
- class qibosoq.components.pulses.FluxExponential(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int, tau: float, upsilon: float, weight: float, shape: str = 'fluxexponential')[source]#
Bases:
Pulse
Flux pulse with exponential rising edge to correct distortions.
- class qibosoq.components.pulses.Arbitrary(frequency: float, amplitude: float, relative_phase: int, start_delay: float, duration: float, name: str, type: str, dac: int, adc: int, i_values: List[float], q_values: List[float], shape: str = 'arbitrary')[source]#
Bases:
Pulse
Custom pulse.
- class qibosoq.components.pulses.Shape(value)[source]#
Bases:
Enum
Map shape names to the corresponding objects.
- RECTANGULAR = <class 'qibosoq.components.pulses.Rectangular'>#
- GAUSSIAN = <class 'qibosoq.components.pulses.Gaussian'>#
- DRAG = <class 'qibosoq.components.pulses.Drag'>#
- ARBITRARY = <class 'qibosoq.components.pulses.Arbitrary'>#
- FLUXEXPONENTIAL = <class 'qibosoq.components.pulses.FluxExponential'>#