spin_element ============ .. py:module:: quantify_scheduler.device_under_test.spin_element .. autoapi-nested-parse:: The module contains definitions related to spin qubit elements. Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: quantify_scheduler.device_under_test.spin_element.PortsSpin quantify_scheduler.device_under_test.spin_element.ClocksFrequenciesSpin quantify_scheduler.device_under_test.spin_element.RxyGaussian quantify_scheduler.device_under_test.spin_element.DispersiveMeasurementSpin quantify_scheduler.device_under_test.spin_element.BasicSpinElement .. py:class:: PortsSpin(parent: qcodes.instrument.base.InstrumentBase, name: str, **kwargs: float) Bases: :py:obj:`qcodes.instrument.InstrumentChannel` Submodule containing the ports. .. py:attribute:: microwave Name of the element's microwave port. .. py:attribute:: gate Name of the element's ohmic gate port. .. py:attribute:: readout Name of the element's readout port. .. py:class:: ClocksFrequenciesSpin(parent: qcodes.instrument.base.InstrumentBase, name: str, **kwargs: float) Bases: :py:obj:`qcodes.instrument.InstrumentChannel` Submodule containing the clock frequencies specifying the transitions to address. .. py:attribute:: f_larmor Larmor frequency for the spin qubit .. py:attribute:: readout Frequency of the ro clock. .. py:class:: RxyGaussian(parent: qcodes.instrument.base.InstrumentBase, name: str, **kwargs: float) Bases: :py:obj:`qcodes.instrument.InstrumentChannel` Submodule containing parameters for performing an Rxy operation. The Rxy operation uses a Gaussian pulse. .. py:attribute:: amp180 Amplitude required to perform a $\pi$ pulse. .. py:attribute:: duration Duration of the control pulse. .. py:class:: DispersiveMeasurementSpin(parent: qcodes.instrument.base.InstrumentBase, name: str, **kwargs: float) Bases: :py:obj:`quantify_scheduler.device_under_test.transmon_element.DispersiveMeasurement` Submodule containing parameters to perform a measurement. The measurement that is performed is using :func:`~quantify_scheduler.operations.measurement_factories.dispersive_measurement_spin`. .. py:attribute:: gate_pulse_amp Amplitude of the gate pulse. .. py:class:: BasicSpinElement(name: str, **kwargs: Any) Bases: :py:obj:`quantify_scheduler.device_under_test.device_element.DeviceElement` A device element representing a Loss–DiVincenzo Spin qubit. The element refers to the intrinsic spin-1/2 degree of freedom of individual electrons/holes trapped in quantum dots. The charge of the particle is coupled to a resonator. .. admonition:: Examples Qubit parameters can be set through submodule attributes .. jupyter-execute:: from quantify_scheduler import BasicSpinElement qubit = BasicSpinElement("q1") qubit.rxy.amp180(0.1) qubit.measure.pulse_amp(0.25) qubit.measure.pulse_duration(300e-9) qubit.measure.acq_delay(430e-9) qubit.measure.integration_time(1e-6) ... :param name: The name of the spin element. :param kwargs: Can be used to pass submodule initialization data by using submodule name as keyword and as argument a dictionary containing the submodule parameter names and their value. .. py:attribute:: reset :type: quantify_scheduler.device_under_test.transmon_element.IdlingReset Submodule :class:`~.IdlingReset`. .. py:attribute:: rxy :type: RxyGaussian Submodule :class:`~.RxyGaussian`. .. py:attribute:: measure :type: DispersiveMeasurementSpin Submodule :class:`~.DispersiveMeasurementSpin`. .. py:attribute:: pulse_compensation :type: quantify_scheduler.device_under_test.transmon_element.PulseCompensationModule Submodule :class:`~.PulseCompensationModule`. .. py:attribute:: ports :type: PortsSpin Submodule :class:`~.PortsSpin`. .. py:attribute:: clock_freqs :type: ClocksFrequenciesSpin Submodule :class:`~.ClocksFrequenciesSpin`. .. py:method:: _generate_config() -> dict[str, dict[str, quantify_scheduler.backends.graph_compilation.OperationCompilationConfig]] Generate part of the device configuration specific to a single qubit. This method is intended to be used when this object is part of a device object containing multiple elements. .. py:method:: generate_device_config() -> quantify_scheduler.backends.graph_compilation.DeviceCompilationConfig Generate a valid device config. The config will be used for the quantify-scheduler making use of the :func:`~.circuit_to_device.compile_circuit_to_device_with_config_validation` function. This enables the settings of this qubit to be used in isolation. .. note: This config is only valid for single qubit experiments.