{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "4a5da921", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:25.362861Z", "iopub.status.busy": "2025-10-02T01:29:25.362690Z", "iopub.status.idle": "2025-10-02T01:29:25.366073Z", "shell.execute_reply": "2025-10-02T01:29:25.365543Z" }, "nbsphinx": "hidden" }, "outputs": [], "source": [ "# Copyright 2025 Keysight Technologies Inc." ] }, { "cell_type": "raw", "id": "0340db77", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Real-time decision logic\n", "========================\n", "\n", "Using the basic program structure as outlined in :doc:`program_basics`\\, we now show\n", "how to add branching logic to a :py:class:`~keysight.qcs.programs.Program` using\n", "a :py:class:`~keysight.qcs.programs.ConditionalOperation`\\.\n", "\n", "There are two ways decision logic can be implemented:\n", "\n", "#. Specifying a measurement in a program with ``reset=True``, e.g.\n", " ``program.add_measurement(qubits, reset=True)``.\n", "\n", "#. Implementing an :py:class:`~keysight.qcs.channels.Acquisition` that uses a\n", " :py:class:`~keysight.qcs.channels.Classifier` with a\n", " :py:class:`~keysight.qcs.channels.Register` to which the results are written,\n", " followed by a :py:class:`~keysight.qcs.programs.ConditionalOperation` that uses\n", " the outcome of the register to determine which operation to execute.\n", "\n", "We begin by demonstrating the basic use case of qubit reset and then show how\n", "the reset operations can be customized.\n", "\n", "Qubit reset\n", "-----------\n", "\n", "For quantum systems with long T1 times and no direct ground state initialization\n", "method, it is common practice to reset the qubit state to zero after a\n", "single execution of an experiment when it is not in that state. This\n", "requires a measurement and an optional subsequent\n", "reset operation.\n", "\n", "In its simplest form, this can be done with an argument to the\n", ":py:meth:`~keysight.qcs.programs.Program.add_measurement` method:" ] }, { "cell_type": "code", "execution_count": 2, "id": "d37fbf31", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:25.368095Z", "iopub.status.busy": "2025-10-02T01:29:25.367924Z", "iopub.status.idle": "2025-10-02T01:29:28.597222Z", "shell.execute_reply": "2025-10-02T01:29:28.596454Z" } }, "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", " \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", "
Durationundefined
Layers5
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", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #1\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #1 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #2\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #2 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #3\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #3 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Measure on\n", " ('qudits', 0)\n", "
Transaction Destinations\n", " ('qudits', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #4\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #4 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", " qudits\n", " \n", " 0\n", " \n", " \n", "
\n", " H\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate H on ('qudits', 0)\n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0.710.71
0.71-0.71
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " CX\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate CX on (('qudits', 0), ('qudits', 1))\n", "
\n", "
\n", "
\n", " Matrix:\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", "
1000
0100
0001
0010
\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", " Measure on ('qudits', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=2, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate X \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
10
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits2
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 1\n", " \n", " \n", "
\n", " CX\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate CX on (('qudits', 1), ('qudits', 0))\n", "
\n", "
\n", "
\n", " Matrix:\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", "
1000
0100
0001
0010
\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", " Measure on ('qudits', 1)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=2, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 1)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate X \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
10
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits2
Dim2
\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" ], "text/plain": [ "" ] }, "metadata": { "text/html": { "isolated": true } }, "output_type": "display_data" } ], "source": [ "import keysight.qcs as qcs\n", "\n", "# generate a simple quantum circuit on two qubits\n", "qubits = qcs.Qudits(range(2))\n", "\n", "circuit = qcs.Program()\n", "circuit.add_gate(qcs.GATES.h, qubits[0])\n", "circuit.add_gate(qcs.GATES.cx, (qubits[0], qubits[1]))\n", "\n", "# add a measurement on both qubits with reset\n", "circuit.add_measurement(qubits, reset=True)\n", "\n", "circuit.draw()" ] }, { "cell_type": "raw", "id": "3999f203", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "When setting ``reset=True``, a new empty layer (the data transaction\n", "layer) gets inserted after the measurement layer, followed by another layer with the\n", "conditional operation. The data transaction layer contains a list of\n", ":py:class:`~keysight.qcs.channels.DataTransaction` objects that map\n", "measurements to operations, as can be seen in the tooltip when hovering over the\n", "layer column header.\n", "If we hover over the conditional operations in the last layer, we can inspect which\n", "operations are played depending on the outcome of the measurement.\n", "Let's take a closer look at those:" ] }, { "cell_type": "code", "execution_count": 3, "id": "38597e79", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.600143Z", "iopub.status.busy": "2025-10-02T01:29:28.599549Z", "iopub.status.idle": "2025-10-02T01:29:28.606941Z", "shell.execute_reply": "2025-10-02T01:29:28.606169Z" }, "lines_to_next_cell": 2 }, "outputs": [ { "data": { "text/plain": [ "{Qudits(labels=[0, 1], name=qudits, dim=2): [ConditionalOperation(operations=[Gate(matrix=[[(1+0j), 0j], [0j, (1+0j)]], name=ID), Gate(matrix=[[0j, (1+0j)], [(1+0j), 0j]], name=X)], register=Register(name=qudits_results, num_bits=2, dim=2))]}" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# print the program layer that contains the conditional operation:\n", "circuit[-1].operations" ] }, { "cell_type": "raw", "id": "94e138e5", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "This conditional operation will execute the first operation, the identity gate, if the\n", "outcome of the measurement is ``0``, and the second operation, an X gate, if the\n", "outcome is ``1``, thereby resetting the qubit state to zero after each\n", "execution of the program. It is also possible to pass a list of operations to the\n", "``reset`` argument whose length should match the dimension of the measurement:" ] }, { "cell_type": "code", "execution_count": 4, "id": "7dcc9a88", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.609285Z", "iopub.status.busy": "2025-10-02T01:29:28.609001Z", "iopub.status.idle": "2025-10-02T01:29:28.634133Z", "shell.execute_reply": "2025-10-02T01:29:28.633450Z" } }, "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", " \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", "
Durationundefined
Layers5
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", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #1\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #1 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #2\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #2 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #3\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #3 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Measure on\n", " ('qudits', 0)\n", "
Transaction Destinations\n", " ('qudits', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #4\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #4 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", " qudits\n", " \n", " 0\n", " \n", " \n", "
\n", " H\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate H on ('qudits', 0)\n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0.710.71
0.71-0.71
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " CX\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate CX on (('qudits', 0), ('qudits', 1))\n", "
\n", "
\n", "
\n", " Matrix:\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", "
1000
0100
0001
0010
\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", " Measure on ('qudits', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=2, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate Y \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0-1j
1j0
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits2
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " 1\n", " \n", " \n", "
\n", " CX\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate CX on (('qudits', 1), ('qudits', 0))\n", "
\n", "
\n", "
\n", " Matrix:\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", "
1000
0100
0001
0010
\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", " Measure on ('qudits', 1)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=2, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 1)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate Y \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0-1j
1j0
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits2
Dim2
\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" ], "text/plain": [ "" ] }, "metadata": { "text/html": { "isolated": true } }, "output_type": "display_data" } ], "source": [ "circuit = qcs.Program()\n", "circuit.add_gate(qcs.GATES.h, qubits[0])\n", "circuit.add_gate(qcs.GATES.cx, (qubits[0], qubits[1]))\n", "\n", "# add a measurement on both qubits with a reset operation\n", "# if the state is 0, play the identity\n", "# if the state is 1, play a Y gate\n", "circuit.add_measurement(qubits, reset=[qcs.GATES.id, qcs.GATES.y])\n", "\n", "circuit.draw()" ] }, { "cell_type": "raw", "id": "26e827b3", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "We can repeat reset instruction multiple times by setting ``repeat_reset``:" ] }, { "cell_type": "code", "execution_count": 5, "id": "c734a9d7", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.636128Z", "iopub.status.busy": "2025-10-02T01:29:28.635929Z", "iopub.status.idle": "2025-10-02T01:29:28.658432Z", "shell.execute_reply": "2025-10-02T01:29:28.657603Z" } }, "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", " \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", "
Durationundefined
Layers7
Targets1
\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", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #1\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #1 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Measure on\n", " ('qudits', 0)\n", "
Transaction Destinations\n", " ('qudits', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #2\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #2 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #3\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #3 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Measure on\n", " ('qudits', 0)\n", "
Transaction Destinations\n", " ('qudits', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #4\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #4 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #5\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #5 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Measure on\n", " ('qudits', 0)\n", "
Transaction Destinations\n", " ('qudits', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #6\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #6 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Durationundefined
\n", "
\n", "\n", "
\n", "
\n", "
\n", " qudits\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Measure on ('qudits', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=1, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate X \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
10
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits1
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Measure on ('qudits', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=1, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate X \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
10
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits1
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Measure on ('qudits', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Dim2
RegisterRegister(name=qudits_results, num_bits=1, dim=2)
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " ConditionalOperation on ('qudits', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate ID \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
10
01
\n", "\n", "
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Gate X \n", "
\n", "
\n", "
\n", " Matrix:\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
10
\n", "\n", "
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Namequdits_results
Num Bits1
Dim2
\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": [ "circuit = qcs.Program()\n", "\n", "# add a reset operation at the start of the program and repeat it three times\n", "circuit.add_measurement(qubits[0], reset=True, repeat_reset=3)\n", "circuit.draw()" ] }, { "cell_type": "raw", "id": "168b144f", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ " .. note::\n", "\n", " :py:class:`~keysight.qcs.programs.ConditionalOperation` and qubit reset are\n", " currently incompatible with sweeping parameters of a\n", " :py:class:`~keysight.qcs.channels.IntegrationFilter`.\n" ] }, { "cell_type": "raw", "id": "22bcbf66", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "Defining conditional operations directly\n", "----------------------------------------\n", "Conditional operations are executed conditioned on an outcome stored in a\n", ":py:class:`~keysight.qcs.channels.Register`\\.\n", "This register is written to by a :py:class:`~keysight.qcs.channels.Classifier`\\\n", "specified on an :py:class:`~keysight.qcs.channels.Acquisition`\\.\n", "\n", "Consider the following example program on a single channel:" ] }, { "cell_type": "code", "execution_count": 6, "id": "72200a8d", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.661137Z", "iopub.status.busy": "2025-10-02T01:29:28.660910Z", "iopub.status.idle": "2025-10-02T01:29:28.721699Z", "shell.execute_reply": "2025-10-02T01:29:28.720800Z" } }, "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", "\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", " awg\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " dig\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Acquisition on ('dig', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=_implicit, value=30 ns, dtype=float, unit=s)
Integration Filter\n", " \n", " \n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency0 Hz
EnvelopeConstantEnvelope()
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "
ClassifierClassifier(Array(name=_implicit, shape=(2,), dtype=complex, unit=none))
\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": [ "# define a classifier with a register\n", "register = qcs.Register(name=\"results\", num_outcomes=1)\n", "classifier = qcs.Classifier([0, 0.1], register)\n", "\n", "# define two channels for the readout waveform and acquisition\n", "awg = qcs.Channels(0, \"awg\")\n", "dig = qcs.Channels(0, \"dig\")\n", "\n", "# define the readout pulse and the integration filter\n", "frequency = 5e9\n", "readout_pulse = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), 1, frequency)\n", "integration_filter = qcs.RFWaveform(30e-9, qcs.ConstantEnvelope(), 1, 0)\n", "\n", "program = qcs.Program()\n", "\n", "program.add_waveform(readout_pulse, awg)\n", "program.add_acquisition(integration_filter, dig, classifier)\n", "program.draw()" ] }, { "cell_type": "raw", "id": "96b6d308", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "This program now contains a single RF waveform played on the AWG channel and a\n", "simultaneous acquisition on a digitizer channel. We can now add the conditional\n", "operation based on the register that is connected to this acquisition:" ] }, { "cell_type": "code", "execution_count": 7, "id": "851a2571", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.724421Z", "iopub.status.busy": "2025-10-02T01:29:28.724123Z", "iopub.status.idle": "2025-10-02T01:29:28.746911Z", "shell.execute_reply": "2025-10-02T01:29:28.746060Z" } }, "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", "\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", "
Duration60 ns
Layers3
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", "
\n", " Layer #1\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #1 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Acquisition on\n", " ('dig', 0)\n", "
Transaction Destinations\n", " ('awg', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #2\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #2 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
\n", "
\n", "\n", "
\n", "
\n", "
\n", " awg\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 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", " ConditionalOperation on ('awg', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude0.5
Frequency5 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Nameresults
Num Bits1
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " dig\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Acquisition on ('dig', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=_implicit, value=30 ns, dtype=float, unit=s)
Integration Filter\n", " \n", " \n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency0 Hz
EnvelopeConstantEnvelope()
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "
ClassifierClassifier(Array(name=_implicit, shape=(2,), dtype=complex, unit=none))
\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": [ "# first, define two waveforms to be played for either outcome (0 or 1)\n", "waveform_0 = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), 1, frequency)\n", "waveform_1 = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), 0.5, frequency)\n", "\n", "# add the conditional operation using those waveforms and targeting the awg\n", "# channel\n", "program.add_conditional_operation(\n", " operations=[waveform_0, waveform_1], target=awg, register=classifier.register\n", ")\n", "\n", "program.draw()" ] }, { "cell_type": "raw", "id": "8e101743", "metadata": { "raw_mimetype": "text/restructuredtext" }, "source": [ "This program contains a conditional operation with two waveforms that will be\n", "played depending on the outcome stored in the register. If the outcome is ``0``, the\n", "waveform at index `0` of the ``operations`` list will be played, and if it is\n", "``1``, the waveform at the index `1` will be played." ] }, { "cell_type": "raw", "id": "112c7c25", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "Rendering programs with conditional operations\n", "----------------------------------------------\n", "Operations such as :py:class:`~keysight.qcs.programs.ConditionalOperation` split the\n", "program into multiple group of layers. The ``render`` by default displays\n", "the last group of layers.\n", "To view a different layer, use the ``program_layer`` argument. Note that the\n", "render function displays all the layers in a group at a time.\n", "\n", "Additionally, the user can specify the ``condition`` argument to select the measured\n", "state outcome to visualize (in the following example it can be ``0`` or ``1``)." ] }, { "cell_type": "code", "execution_count": 8, "id": "b0f11c36", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.752621Z", "iopub.status.busy": "2025-10-02T01:29:28.749233Z", "iopub.status.idle": "2025-10-02T01:29:28.769442Z", "shell.execute_reply": "2025-10-02T01:29:28.768560Z" }, "lines_to_next_cell": 0 }, "outputs": [], "source": [ "register = qcs.Register(name=\"results\", num_outcomes=1)\n", "classifier = qcs.Classifier([0, 0.1], register)\n", "\n", "# define two channels for the readout waveform and acquisition\n", "awg = qcs.Channels(0, \"awg\")\n", "dig = qcs.Channels(0, \"dig\")\n", "\n", "# define the readout pulse and the integration filter, and the waveforms to be played\n", "# for either outcome (0 or 1)\n", "frequency = 5e9\n", "waveform_0 = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), 1, frequency + 0.2e9)\n", "waveform_1 = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), -0.5, frequency)\n", "readout_pulse = qcs.RFWaveform(30e-9, qcs.GaussianEnvelope(), 1, frequency)\n", "integration_filter = qcs.RFWaveform(30e-9, qcs.ConstantEnvelope(), 1, 0)\n", "\n", "program = qcs.Program()\n", "\n", "program.add_waveform(readout_pulse, awg)\n", "program.add_waveform(readout_pulse, awg, new_layer=True)\n", "program.add_acquisition(integration_filter, dig, classifier)\n", "\n", "# add the conditional operation using those waveforms and targeting the awg\n", "# channel\n", "program.add_conditional_operation(\n", " operations=[waveform_0, waveform_1], target=awg, register=classifier.register\n", ")\n", "program.add_waveform(readout_pulse, awg)\n", "program.add_waveform(readout_pulse, awg)" ] }, { "cell_type": "code", "execution_count": 9, "id": "f8199345", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.772296Z", "iopub.status.busy": "2025-10-02T01:29:28.772044Z", "iopub.status.idle": "2025-10-02T01:29:28.794981Z", "shell.execute_reply": "2025-10-02T01:29:28.794116Z" }, "lines_to_next_cell": 0 }, "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", " \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", "
Duration150 ns
Layers4
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", "
\n", " Layer #1\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #1 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration30 ns
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #2\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #2 (Data Transactions)\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration0 s
Transaction Source\n", " Acquisition on\n", " ('dig', 0)\n", "
Transaction Destinations\n", " ('awg', 0)\n", "
\n", "
\n", "
\n", "\n", "
\n", "
\n", "
\n", "
\n", " Layer #3\n", "
\n", " \n", "\n", "\n", "\n", "
\n", " Layer #3 \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Duration90 ns
\n", "
\n", "\n", "
\n", "
\n", "
\n", " awg\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 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", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 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", " ConditionalOperation on ('awg', 0)\n", "
\n", "
\n", " Operations\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Outcome 0\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5.2 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
Outcome 1\n", "\n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude-0.5
Frequency5 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "\n", "
\n", " Register\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Nameresults
Num Bits1
Dim2
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 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", " RFWaveform on ('awg', 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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency5 GHz
EnvelopeGaussianEnvelope(2.0)
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "\n", "
\n", "
\n", "
\n", " dig\n", " \n", " 0\n", " \n", " \n", "
\n", " \n", "\n", "\n", "
\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
\n", " Acquisition on ('dig', 0)\n", "
\n", "
\n", " Parameters\n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
DurationScalar(name=_implicit, value=30 ns, dtype=float, unit=s)
Integration Filter\n", " \n", " \n", "\n", "\n", "\n", "
\n", " RFWaveform \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=_implicit, value=30 ns, dtype=float, unit=s)
Amplitude1
Frequency0 Hz
EnvelopeConstantEnvelope()
Instantaneous Phase0 rad
Post-phase0 rad
\n", "
\n", "\n", "
ClassifierClassifier(Array(name=_implicit, shape=(2,), dtype=complex, unit=none))
\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": [ "program.draw()" ] }, { "cell_type": "raw", "id": "499f34f2", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "Calling render without specifying ``program_layer`` will display the last group\n", "of layers which in this case are the layers after the last conditional operation.\n", "By default, ``condition`` is set to 0." ] }, { "cell_type": "code", "execution_count": 10, "id": "6ce0c12f", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:28.797543Z", "iopub.status.busy": "2025-10-02T01:29:28.797283Z", "iopub.status.idle": "2025-10-02T01:29:31.125642Z", "shell.execute_reply": "2025-10-02T01:29:31.125063Z" }, "lines_to_next_cell": 0 }, "outputs": [ { "data": { "text/html": [ " \n", " " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "dx": 1e-09, "legendgroup": "awg, labels: (0,)", "legendgrouptitle": { "text": "awg, labels: (0,)" }, "name": "Drive pulse for awg, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ 2.7755575615628914e-17, 0.014761066761371846, -0.08501898210035537, -0.1392976811303716, 0.07685164223859084, 0.3336105394695391, 0.13137722018593506, -0.4213092523812418, -0.49936236849260135, 0.21965216931841935, 0.7973652527183118, 0.2697066658696184, -0.7550115164733286, -0.789204138361639, 0.3081681025989843, 0.9972529285074966, 0.30144915679208634, -0.7550115164733254, -0.7061012182390536, 0.24639941381401514, 0.7108093513197237, 0.19073945206153817, -0.42130925238123623, -0.343950027794256, 0.10309132619867227, 0.24869713846657818, 0.053206979637762254, -0.08501898210035348, -0.03864497449147862, 8.57694455388728e-18, 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17, 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17 ], "yaxis": "y" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Waveforms for awg, labels: (0,)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.0, "yanchor": "bottom", "yref": "paper" } ], "height": 500, "template": { "data": { "bar": [ { "marker": { "color": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "x" } }, "type": "bar" }, { "marker": { "color": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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" } ], "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.render()" ] }, { "cell_type": "raw", "id": "edf9800d", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "Let's visualize the program when the measured state is 1." ] }, { "cell_type": "code", "execution_count": 11, "id": "9986e3ca", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:31.145959Z", "iopub.status.busy": "2025-10-02T01:29:31.145693Z", "iopub.status.idle": "2025-10-02T01:29:31.209372Z", "shell.execute_reply": "2025-10-02T01:29:31.208719Z" }, "lines_to_next_cell": 0 }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "dx": 1e-09, "legendgroup": "awg, labels: (0,)", "legendgrouptitle": { "text": "awg, labels: (0,)" }, "name": "Drive pulse for awg, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ -1.3877787807814457e-17, -0.02388390773010589, -0.05254462062693864, -0.08609070149261429, -0.12434856923328898, -0.16680526973476956, -0.21257280760831676, -0.2603834377464167, -0.308622916431075, -0.35540467565986184, -0.3986826263591559, -0.4363945523694351, -0.4666227790781234, -0.4877549815695618, -0.4986264642537483, -0.4986264642537483, -0.4877549815695618, -0.4666227790781234, -0.4363945523694351, -0.3986826263591559, -0.3554046756598618, -0.308622916431075, -0.2603834377464167, -0.21257280760831676, -0.16680526973476956, -0.12434856923328906, -0.08609070149261429, -0.05254462062693864, -0.02388390773010586, -1.3877787807814457e-17, 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17, 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17 ], "yaxis": "y" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Waveforms for awg, labels: (0,)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.0, "yanchor": "bottom", "yref": "paper" } ], "height": 500, "template": { "data": { "bar": [ { "marker": { "color": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "x" } }, "type": "bar" }, { "marker": { "color": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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" } ], "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.render(condition=1)" ] }, { "cell_type": "raw", "id": "79def40c", "metadata": { "lines_to_next_cell": 0, "raw_mimetype": "text/restructuredtext" }, "source": [ "We can also display the layers before the\n", ":py:class:`~keysight.qcs.programs.ConditionalOperation`. Note that in this case\n", "setting ``program_layer`` to either 0 or 1 will render the same waveforms\n", "as both the layers belong to the same group." ] }, { "cell_type": "code", "execution_count": 12, "id": "70fda524", "metadata": { "execution": { "iopub.execute_input": "2025-10-02T01:29:31.211480Z", "iopub.status.busy": "2025-10-02T01:29:31.211273Z", "iopub.status.idle": "2025-10-02T01:29:31.290204Z", "shell.execute_reply": "2025-10-02T01:29:31.289383Z" } }, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "dx": 1e-09, "legendgroup": "awg, labels: (0,)", "legendgrouptitle": { "text": "awg, labels: (0,)" }, "name": "Drive pulse for awg, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x", "y": [ 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17, 2.7755575615628914e-17, 0.04776781546021178, 0.10508924125387728, 0.17218140298522858, 0.24869713846657795, 0.3336105394695391, 0.4251456152166335, 0.5207668754928334, 0.61724583286215, 0.7108093513197237, 0.7973652527183118, 0.8727891047388702, 0.9332455581562468, 0.9755099631391236, 0.9972529285074966, 0.9972529285074966, 0.9755099631391236, 0.9332455581562468, 0.8727891047388702, 0.7973652527183118, 0.7108093513197236, 0.61724583286215, 0.5207668754928334, 0.4251456152166335, 0.3336105394695391, 0.24869713846657812, 0.17218140298522858, 0.10508924125387728, 0.04776781546021172, 2.7755575615628914e-17 ], "yaxis": "y" }, { "dx": 1e-09, "legendgroup": "dig, labels: (0,)", "legendgrouptitle": { "text": "dig, labels: (0,)" }, "name": "Integration filter for dig, labels: (0,)", "type": "scatter", "x0": 0, "xaxis": "x2", "y": [ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 ], "yaxis": "y2" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Waveforms for awg, labels: (0,)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1.0, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Integration filter for dig, labels: (0,)", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 0.425, "yanchor": "bottom", "yref": "paper" } ], "height": 1100, "template": { "data": { "bar": [ { "marker": { "color": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "x" } }, "type": "bar" }, { "marker": { "color": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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": "#ad6aff", "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": "#00b287", "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": "#00d539", "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" } ], "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 ], "matches": "x2", "showticklabels": true, "title": { "text": "Time (s)" } }, "xaxis2": { "anchor": "y2", "domain": [ 0.0, 1.0 ], "showticklabels": true, "title": { "text": "Time (s)" } }, "yaxis": { "anchor": "x", "domain": [ 0.575, 1.0 ], "title": { "text": "Fractional Voltage" } }, "yaxis2": { "anchor": "x2", "domain": [ 0.0, 0.425 ], "title": { "text": "Fractional Voltage" } } } }, "text/html": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "program.render(program_layer=0)" ] } ], "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 }