{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "f83bb07b", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:37.070745Z", "iopub.status.busy": "2025-10-02T01:28:37.070464Z", "iopub.status.idle": "2025-10-02T01:28:37.074502Z", "shell.execute_reply": "2025-10-02T01:28:37.073758Z" }, "nbsphinx": "hidden" }, "outputs": [], "source": [ "# Copyright 2025 Keysight Technologies Inc." ] }, { "cell_type": "raw", "id": "fbc14b2c", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Compiling multi-qubit native gates to waveforms\n", "===============================================\n", "\n", "In this guide, we build on on :doc:`parameterized_linker_native_gates_sq` to\n", "demonstrate how to create a linker for a typical multi-qubit gate. We define two\n", "linkers for a cross-resonance gate, a common entangling gate in superconducting\n", "systems. The first is a basic implementation, while the second adds an extra pulse for\n", "crosstalk suppression.\n", "\n", "Here, we only consider one of two commuting subsets of multi-qubit gates assuming\n", "linear connectivity." ] }, { "cell_type": "raw", "id": "fa791b35", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Creating the Linkers\n", "--------------------\n", "We define the cross-resonance gate and a corresponding instruction. We work with all\n", "phases in the gate being ``0`` for simplicity, resulting in a gate proportional to\n", ":math:`ZX` with angle :math:`\\beta`." ] }, { "cell_type": "code", "execution_count": 2, "id": "b9339b45", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:37.076693Z", "iopub.status.busy": "2025-10-02T01:28:37.076525Z", "iopub.status.idle": "2025-10-02T01:28:40.082537Z", "shell.execute_reply": "2025-10-02T01:28:40.081849Z" } }, "outputs": [], "source": [ "import keysight.qcs as qcs\n", "import numpy as np\n", "import math\n", "\n", "n_targets = 4\n", "qubits = qcs.Qudits(range(n_targets))\n", "\n", "# the number of commuting multi-qubit gates\n", "n_mq = math.floor(n_targets / 2)\n", "\n", "# create the multi-qudit targets\n", "mq_targets = qcs.MultiQudits.from_qudits((qubits[: 2 * n_mq : 2], qubits[1::2]))\n", "\n", "zx = qcs.PAULIS.sigma_z & qcs.PAULIS.sigma_x\n", "cr_gate = qcs.ParametricGate([zx], [\"beta\"])\n", "\n", "angles = qcs.Array(name=\"beta\", shape=(n_mq,), dtype=float)\n", "cr_param_gate = qcs.ParameterizedGate(cr_gate, angles)" ] }, { "cell_type": "raw", "id": "c37f9d97", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "The first linker corresponds to the basic implementation. Here, we apply a pulse to\n", "to the control qubit with the resonant frequency of the target qubit, resulting in a\n", "rotation around :math:`Z` for the control and around :math:`X` for the target.\n", "Note that we use the same frequencies as those in\n", ":doc:`parameterized_linker_native_gates_sq`." ] }, { "cell_type": "code", "execution_count": 3, "id": "123533c6", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:40.085038Z", "iopub.status.busy": "2025-10-02T01:28:40.084689Z", "iopub.status.idle": "2025-10-02T01:28:40.210073Z", "shell.execute_reply": "2025-10-02T01:28:40.209309Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", "
\n", "
\n", " Program\n", "
\n", "
\n", " \n", " \n", "\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " \n", "\tkeysight-logo-svg\n", "\t\n", "\t\n", "\t\t\n", "\t\n", "\n", "\n", " \n", "
\n", " Program Body\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Program\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
Layers1
Targets2
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #0\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #0 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
\n", "
\n", "\n", "
\n", "
\n", "
\n", " xy_channels\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 2\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 2)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": { "text/html": { "isolated": true } }, "output_type": "display_data" } ], "source": [ "channels = qcs.Channels(range(n_targets), name=\"xy_channels\")\n", "\n", "sq_freqs = [5e9 + 100e6 * n for n in range(n_targets)]\n", "freqs = qcs.Array(\"single_qubit_frequencies\", value=sq_freqs, dtype=float)\n", "amps = qcs.Array(\"multi_qubit_amplitudes\", value=[0.5] * n_mq, dtype=float)\n", "dur = qcs.Scalar(\"multi_qubit_duration\", value=30e-9, dtype=float)\n", "\n", "pulse = qcs.RFWaveform(dur, qcs.GaussianEnvelope(), angles * amps, freqs[1::2])\n", "\n", "cr_prog = qcs.Program()\n", "cr_prog.add_waveform(pulse, channels[: 2 * n_mq : 2])\n", "\n", "# create the linker\n", "cr_linker = qcs.ParameterizedLinker(cr_param_gate, mq_targets, cr_prog)\n", "\n", "cr_prog.draw()" ] }, { "cell_type": "raw", "id": "f81fe7db", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "We now extend the above linker to suppress crosstalk by playing a simultaneous pulse\n", "on the target qubit at the same frequency with a fraction of the amplitude\n", ":math:`\\alpha`." ] }, { "cell_type": "code", "execution_count": 4, "id": "d33fe6ec", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:40.212013Z", "iopub.status.busy": "2025-10-02T01:28:40.211836Z", "iopub.status.idle": "2025-10-02T01:28:40.232984Z", "shell.execute_reply": "2025-10-02T01:28:40.232209Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", "
\n", "
\n", " Program\n", "
\n", "
\n", " \n", " \n", "\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " \n", "\tkeysight-logo-svg\n", "\t\n", "\t\n", "\t\t\n", "\t\n", "\n", "\n", " \n", "
\n", " Program Body\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Program\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
Layers1
Targets4
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #0\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #0 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
\n", "
\n", "\n", "
\n", "
\n", "
\n", " xy_channels\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 1\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 1)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 2\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 2)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 3\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('xy_channels', 3)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=multi_qubit_duration, value=30 ns, dtype=float, unit=s)
AmplitudeArray(name=_implicit, shape=(2,), dtype=float, unit=none)
FrequencyArraySlice(name=single_qubit_frequencies, shape=(2,), dtype=float, unit=Hz, value=[5.1 GHz, 5.3 GHz])
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": { "text/html": { "isolated": true } }, "output_type": "display_data" } ], "source": [ "alpha = qcs.Scalar(\"alpha\", value=0.3, dtype=float)\n", "pulse_supp = qcs.RFWaveform(\n", " dur, qcs.GaussianEnvelope(), alpha * angles * amps, freqs[1::2]\n", ")\n", "\n", "cr_prog_supp = qcs.Program()\n", "cr_prog_supp.add_waveform(pulse, channels[: 2 * n_mq : 2])\n", "cr_prog_supp.add_waveform(pulse_supp, channels[1::2])\n", "\n", "# create the linker\n", "cr_linker_supp = qcs.ParameterizedLinker(cr_param_gate, mq_targets, cr_prog_supp)\n", "\n", "cr_prog_supp.draw()" ] }, { "cell_type": "raw", "id": "90e0a9da", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "Using the Linkers\n", "-----------------\n", "We can use either of the linkers defined above to replace cross-resonance gates. The\n", "first linker gives a single waveform." ] }, { "cell_type": "code", "execution_count": 5, "id": "73d83ab0", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:40.234923Z", "iopub.status.busy": "2025-10-02T01:28:40.234733Z", "iopub.status.idle": "2025-10-02T01:28:42.269025Z", "shell.execute_reply": "2025-10-02T01:28:42.268426Z" } }, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "dx": 4.166666666666667e-10, "legendgroup": "xy_channels, labels: (0,)", "legendgrouptitle": { "text": "xy_channels, labels: (0,)" }, "name": "Drive pulse for xy_channels, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ 2.179917811255395e-17, 0.013951286696175715, 0.02606513073409425, 0.0332305094917405, 0.03258030127219379, 0.02189826020894174, 2.3390471109515337e-17, -0.03296056222101625, -0.07530535077754401, -0.12380452624410315, -0.1738307439377397, -0.21970017033754155, -0.25518348341863467, -0.27414779740126916, -0.27127025849808145, -0.24274872841914696, -0.18692698023590504, -0.1047529855429253, -2.9027343146749384e-16, 0.12079911463178133, 0.24872520362135697, 0.37314081303752605, 0.48260468567947024, 0.5659521976482902, 0.6134358519169865, 0.617805326380759, 0.5752051997941791, 0.485781379829292, 0.35391371925637954, 0.18802986056506651, 7.834640574666689e-16, -0.1958410701526642, -0.38395514720464935, -0.5490212553154753, -0.6773709202022606, -0.7582883428393825, -0.7850378592242477, -0.7555090912360978, -0.6724109667326021, -0.5429945765197749, -0.3783358950170974, -0.19225669525571099, -1.0283738105631768e-15, 0.18319922173323422, 0.3434993078514491, 0.46965307896379566, 0.5539091022077668, 0.5925335321382534, 0.5859168294760143, 0.53827558377485, 0.4570022970745986, 0.3517505562653335, 0.23336596923138367, 0.11278258314572223, 5.729155283469988e-16, -0.09676052505710882, -0.17164927198958999, -0.22149123857106356, -0.24579419089887458, -0.2464883170764674, -0.22745035318249474, -0.193883001859722, -0.15162895857253103, -0.10649784838886617, -0.06367491659657497, -0.02726433906875091, -1.1976606921952551e-16, 0.01686480492884321, 0.02349751860389363, 0.021282090125822075, 0.012508381456975618, 2.1056389130791245e-17 ], "yaxis": "y" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Waveforms", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.0, "yanchor": "bottom", "yref": "paper" } ], "height": 500, "template": { "data": { "bar": [ { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" } ], "scatter": [ { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" } ], "violin": [ { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" } ] }, "layout": { "annotationdefaults": { "font": { "size": 12 } }, "autotypenumbers": "strict", "hoverlabel": { "bgcolor": "white", "font": { "family": "Rockwell", "size": 14 } }, "hovermode": "x unified", "legend": { "bgcolor": "white", "bordercolor": "Black", "borderwidth": 1, "font": { "family": "Rockwell" } }, "xaxis": { "linecolor": "black", "linewidth": 1, "mirror": true, "showline": true }, "yaxis": { "linecolor": "black", "linewidth": 1, "mirror": true, "showline": true } } }, "width": 900, "xaxis": { "anchor": "y", "domain": [ 0.0, 1.0 ], "showticklabels": true, "title": { "text": "Time (s)" } }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": { "text": "Fractional Voltage" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "program = qcs.Program()\n", "some_beta = qcs.Array(\"beta\", value=[np.pi / 2])\n", "program.add_parametric_gate(cr_gate, [some_beta], (qubits[0], qubits[1]))\n", "\n", "linker_pass = qcs.LinkerPass(cr_linker)\n", "program_compiled = linker_pass.apply(program)\n", "\n", "program_compiled.render(\n", " channel_subplots=False,\n", " lo_frequency=5e9,\n", " sample_rate=qcs.SAMPLE_RATES[qcs.InstrumentEnum.M5300AWG],\n", ")" ] }, { "cell_type": "raw", "id": "15f9fedd", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Reusing the same program to compile, the second linker renders two waveforms on\n", "different channels." ] }, { "cell_type": "code", "execution_count": 6, "id": "20e57504", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:28:42.286226Z", "iopub.status.busy": "2025-10-02T01:28:42.285967Z", "iopub.status.idle": "2025-10-02T01:28:42.360334Z", "shell.execute_reply": "2025-10-02T01:28:42.359734Z" } }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "dx": 4.166666666666667e-10, "legendgroup": "xy_channels, labels: (0,)", "legendgrouptitle": { "text": "xy_channels, labels: (0,)" }, "name": "Drive pulse for xy_channels, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ 2.179917811255395e-17, 0.013951286696175715, 0.02606513073409425, 0.0332305094917405, 0.03258030127219379, 0.02189826020894174, 2.3390471109515337e-17, -0.03296056222101625, -0.07530535077754401, -0.12380452624410315, -0.1738307439377397, -0.21970017033754155, -0.25518348341863467, -0.27414779740126916, -0.27127025849808145, -0.24274872841914696, -0.18692698023590504, -0.1047529855429253, -2.9027343146749384e-16, 0.12079911463178133, 0.24872520362135697, 0.37314081303752605, 0.48260468567947024, 0.5659521976482902, 0.6134358519169865, 0.617805326380759, 0.5752051997941791, 0.485781379829292, 0.35391371925637954, 0.18802986056506651, 7.834640574666689e-16, -0.1958410701526642, -0.38395514720464935, -0.5490212553154753, -0.6773709202022606, -0.7582883428393825, -0.7850378592242477, -0.7555090912360978, -0.6724109667326021, -0.5429945765197749, -0.3783358950170974, -0.19225669525571099, -1.0283738105631768e-15, 0.18319922173323422, 0.3434993078514491, 0.46965307896379566, 0.5539091022077668, 0.5925335321382534, 0.5859168294760143, 0.53827558377485, 0.4570022970745986, 0.3517505562653335, 0.23336596923138367, 0.11278258314572223, 5.729155283469988e-16, -0.09676052505710882, -0.17164927198958999, -0.22149123857106356, -0.24579419089887458, -0.2464883170764674, -0.22745035318249474, -0.193883001859722, -0.15162895857253103, -0.10649784838886617, -0.06367491659657497, -0.02726433906875091, -1.1976606921952551e-16, 0.01686480492884321, 0.02349751860389363, 0.021282090125822075, 0.012508381456975618, 2.1056389130791245e-17 ], "yaxis": "y" }, { "dx": 4.166666666666667e-10, "legendgroup": "xy_channels, labels: (1,)", "legendgrouptitle": { "text": "xy_channels, labels: (1,)" }, "name": "Drive pulse for xy_channels, labels: (1,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ 6.5397534337661846e-18, 0.004185386008852715, 0.007819539220228275, 0.00996915284752215, 0.009774090381658135, 0.0065694780626825225, 7.017141332854601e-18, -0.009888168666304877, -0.022591605233263198, -0.03714135787323094, -0.05214922318132191, -0.06591005110126245, -0.0765550450255904, -0.08224433922038075, -0.08138107754942443, -0.07282461852574411, -0.056078094070771516, -0.03142589566287758, -8.708202944024815e-17, 0.03623973438953441, 0.0746175610864071, 0.11194224391125782, 0.14478140570384107, 0.16978565929448702, 0.18403075557509596, 0.18534159791422772, 0.1725615599382537, 0.14573441394878758, 0.10617411577691387, 0.056408958169519956, 2.3503921724000073e-16, -0.05875232104579925, -0.1151865441613948, -0.1647063765946426, -0.2032112760606782, -0.2274865028518147, -0.2355113577672743, -0.22665272737082937, -0.20172329001978062, -0.16289837295593249, -0.11350076850512922, -0.057677008576713304, -3.0851214316895303e-16, 0.05495976651997026, 0.10304979235543475, 0.1408959236891387, 0.16617273066233004, 0.17776005964147604, 0.1757750488428043, 0.16148267513245498, 0.13710068912237958, 0.10552516687960006, 0.0700097907694151, 0.033834774943716665, 1.7187465850409965e-16, -0.029028157517132645, -0.051494781596876996, -0.06644737157131907, -0.07373825726966238, -0.07394649512294023, -0.06823510595474841, -0.05816490055791661, -0.04548868757175931, -0.03194935451665985, -0.019102474978972495, -0.008179301720625273, -3.5929820765857654e-17, 0.005059441478652963, 0.007049255581168089, 0.006384627037746623, 0.0037525144370926856, 6.316916739237373e-18 ], "yaxis": "y" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Waveforms", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.0, "yanchor": "bottom", "yref": "paper" } ], "height": 500, "template": { "data": { "bar": [ { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "/" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "\\" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "x" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "-" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "|" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "+" } }, "type": "bar" }, { "marker": { "color": "#ff005c", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#c97a88", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#00b287", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#ad6aff", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#00d539", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" }, { "marker": { "color": "#ff9000", "line": { "color": "black", "width": 1.5 }, "opacity": 0.8, "pattern": { "shape": "." } }, "type": "bar" } ], "scatter": [ { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "type": "scatter" }, { "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "circle" }, "type": "scatter" }, { "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "square" }, "type": "scatter" }, { "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "type": "scatter" }, { "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "type": "scatter" }, { "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "cross" }, "type": "scatter" } ], "violin": [ { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff005c" }, "marker": { "color": "#ff005c", "opacity": 0.5, "size": 8, "symbol": "hexagram" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00d539" }, "marker": { "color": "#00d539", "opacity": 0.5, "size": 8, "symbol": "circle" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ad6aff" }, "marker": { "color": "#ad6aff", "opacity": 0.5, "size": 8, "symbol": "square" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#ff9000" }, "marker": { "color": "#ff9000", "opacity": 0.5, "size": 8, "symbol": "diamond" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#00b287" }, "marker": { "color": "#00b287", "opacity": 0.5, "size": 8, "symbol": "triangle-down" }, "meanline": { "visible": true }, "type": "violin" }, { "box": { "visible": true }, "line": { "color": "#c97a88" }, "marker": { "color": "#c97a88", "opacity": 0.5, "size": 8, "symbol": "cross" }, "meanline": { "visible": true }, "type": "violin" } ] }, "layout": { "annotationdefaults": { "font": { "size": 12 } }, "autotypenumbers": "strict", "hoverlabel": { "bgcolor": "white", "font": { "family": "Rockwell", "size": 14 } }, "hovermode": "x unified", "legend": { "bgcolor": "white", "bordercolor": "Black", "borderwidth": 1, "font": { "family": "Rockwell" } }, "xaxis": { "linecolor": "black", "linewidth": 1, "mirror": true, "showline": true }, "yaxis": { "linecolor": "black", "linewidth": 1, "mirror": true, "showline": true } } }, "width": 900, "xaxis": { "anchor": "y", "domain": [ 0.0, 1.0 ], "showticklabels": true, "title": { "text": "Time (s)" } }, "yaxis": { "anchor": "x", "domain": [ 0.0, 1.0 ], "title": { "text": "Fractional Voltage" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "linker_pass_supp = qcs.LinkerPass(cr_linker_supp)\n", "program_compiled = linker_pass_supp.apply(program)\n", "\n", "program_compiled.render(\n", " channel_subplots=False,\n", " lo_frequency=5e9,\n", " sample_rate=qcs.SAMPLE_RATES[qcs.InstrumentEnum.M5300AWG],\n", ")" ] } ], "metadata": { "jupytext": { "cell_metadata_filter": "raw_mimetype,nbsphinx,-all", "main_language": "python", "notebook_metadata_filter": "-all", "text_representation": { "extension": ".py", "format_name": "percent" } }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.12" } }, "nbformat": 4, "nbformat_minor": 5 }