{ "cells": [ { "cell_type": "markdown", "id": "36ba1e14", "metadata": {}, "source": [ "# Variational Circuit Preparation II\n", "\n", "This script implements a local optimization to prepare a quantum circuit that approximates the ground state of a given Hamiltonian. Unlike the straightforward global fitting of the entire circuit (as in `circuit_preparation_opt.py`), this version performs a **sweeping algorithm** that optimizes the circuit layer by layer, sweeping from the bottom (first layer) to the top (last layer) and back.\n", "The method is useful when the circuit is deep. By sequentially updating each layer while approximating the rest of the circuit with finite bond dimensions MPSs, we can efficiently achieve high fidelity with the target MPS.\n", "Ref: Gibbs and Cincio, [Quantum 9, 1789 (2025)](https://doi.org/10.22331/q-2025-07-09-1789).\n", "\n", "We demonstrate the technique on the **1D transverse-field Ising model**, using a brick-wall SU(4) circuit. The target state is obtained via DMRG. The algorithm constructs the circuit's MPS layer by layer, and at each step it uses the tensor-network fitting routine to update the tensors of a given layer so that the overlap with the target state is maximized.\n", "\n", "The main steps are:\n", "1. Define the Hamiltonian and compute its ground state `GS` via DMRG.\n", "2. Build an initial random SU(4) brick-wall circuit of a given depth.\n", "3. Perform an **initial sweep** (down then up) that optimizes the parameters layer by layer, reusing the partially optimized MPS from previous layers.\n", "4. After each full sweep, compute the energy and fidelity of the current circuit against the DMRG target.\n", "5. Repeat for a number of sweeps (1000 in this example) to converge.\n", "\n", "This approach is inspired by the **local optimization** idea but applies it in a sequential, sweep-based fashion, which often leads to faster convergence for deep circuits." ] }, { "cell_type": "code", "execution_count": 1, "id": "a95d506d", "metadata": { "execution": { "iopub.execute_input": "2026-09-15T05:58:37.800471Z", "iopub.status.busy": "2026-09-15T05:58:37.800342Z", "iopub.status.idle": "2026-09-15T05:58:39.351756Z", "shell.execute_reply": "2026-09-15T05:58:39.351065Z" } }, "outputs": [], "source": [ "import os\n", "\n", "# Limit threading for reproducibility and performance.\n", "os.environ[\"NUMBA_NUM_THREADS\"] = \"1\"\n", "os.environ[\"OMP_NUM_THREADS\"] = \"1\"\n", "os.environ[\"MKL_NUM_THREADS\"] = \"1\"\n", "\n", "import autoray\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import quimb.tensor as qtn\n", "from quimb.tensor import DMRG2\n", "\n", "from qpe_toolbox.circuit import ansatz_circuit_su4, tn_fit\n", "from qpe_toolbox.hamiltonian import Hamiltonian" ] }, { "cell_type": "markdown", "id": "fed0c3be", "metadata": {}, "source": [ "## Script Execution: Layer-by-Layer Sweep\n", "\n", "We now apply the tensor-network fitting in a **sweeping** fashion:\n", "\n", "- We start from an initial product state `psi0 = |0...0>`.\n", "- We build the circuit layer by layer. The ansatz consists of SU(4) gates arranged in a brick-wall pattern. Each layer is a collection of two-qubit gates that act on disjoint pairs.\n", "- We maintain two lists of MPS: `mpsK` (the \"forward\" state, built from the bottom) and `mpsB` (the \"backward\" state, built from the top). The goal is to make the overlap `` as close to 1 as possible, where `circuit` is the full unitary.\n", "- In the **sweep-down** phase, we start from the top layer and work downwards. For each layer, we:\n", " - Form a trial circuit consisting of the current `mpsK` (which already contains all layers below this one) plus the gates of the current layer.\n", " - Fit the tensors of that layer so that the resulting MPS matches the current `mpsB` (which contains all layers above this one, already optimized).\n", " - After updating the layer, we update `mpsB` by applying the conjugated gates (using MPO) to move one layer down.\n", "- In the **sweep-up** phase, we reverse the direction: we start from the bottom and work upwards, updating each layer similarly.\n", "- After each full sweep (down+up), we evaluate the energy and fidelity of the full circuit against the DMRG target.\n", "\n", "This approach is very similar to the DMRG sweep algorithm, but with the roles of the Hamiltonian and the unitary gates interchanged. It allows us to efficiently optimize deep circuits while keeping bond dimensions manageable.\n", "\n", "We run 1000 sweeps; the algorithm should converge to a state that closely approximates the ground state." ] }, { "cell_type": "markdown", "id": "879b7767", "metadata": {}, "source": [ "### 1. Hamiltonian and DMRG Reference\n", "We set up the 1D transverse-field Ising model:\n", "\n", "$$ H = g_x \\sum_{i} X_i + g_{zz} \\sum_{i} Z_i Z_{i+1}, $$\n", "\n", "with $g_x = -1.1$ and $g_{zz} = -1.0$.\n", "We take 8 qubits. The ground state is computed with DMRG (bond dimension 64, 16 sweeps) and used as the target." ] }, { "cell_type": "code", "execution_count": 2, "id": "b9515583", "metadata": { "execution": { "iopub.execute_input": "2026-09-15T05:58:39.353952Z", "iopub.status.busy": "2026-09-15T05:58:39.353602Z", "iopub.status.idle": "2026-09-15T05:58:45.373209Z", "shell.execute_reply": "2026-09-15T05:58:45.372458Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "*** DMRG reference energy: -5.089485813291186\n", "\n" ] } ], "source": [ "## hamiltonian\n", "n_qubits = 4\n", "list_paulis = [\"I\", \"X\", \"Y\", \"Z\"]\n", "gx, gzz = -1.1, -1.0\n", "terms = []\n", "for x in range(n_qubits):\n", " terms.append((gx, \"x\", [x]))\n", "for x in range(n_qubits - 1):\n", " terms.append((gzz, \"zz\", [x, x + 1]))\n", "ham = Hamiltonian(terms, n_qubits)\n", "mpo = ham.to_mpo()\n", "\n", "# Run DMRG to get the target state and energy.\n", "dmrg = DMRG2(mpo)\n", "dmrg.solve(max_sweeps=16, tol=1e-8, bond_dims=64, verbosity=0)\n", "GS = dmrg.state\n", "dmrg_energy = np.real(dmrg.energy)\n", "print(\"*** DMRG reference energy:\", dmrg_energy)\n", "print()" ] }, { "cell_type": "markdown", "id": "577407ee", "metadata": {}, "source": [ "### 2. Circuit Initialization and Layer Preparation\n", "\n", "We build an ansatz circuit of a given `depth` (here 6). The circuit is a brick-wall of SU(4) gates.\n", "We also build an initial product state `psi0 = |0...0>`.\n", "\n", "Then we create two lists:\n", "- `mpsK`: starts with `psi0`. For each layer (from bottom to top), we apply the corresponding gates as MPOs to build the forward MPS.\n", "- `mpsB`: starts with the conjugate of the target state `GS.H`. This will be updated as we sweep from the top downwards.\n", "\n", "These lists are used in the sweeping algorithm to keep track of the partially contracted states." ] }, { "cell_type": "code", "execution_count": 3, "id": "d4d3da22", "metadata": { "execution": { "iopub.execute_input": "2026-09-15T05:58:45.374813Z", "iopub.status.busy": "2026-09-15T05:58:45.374661Z", "iopub.status.idle": "2026-09-15T05:58:46.551770Z", "shell.execute_reply": "2026-09-15T05:58:46.551012Z" } }, "outputs": [], "source": [ "## initialise\n", "depth = 6\n", "psi0 = qtn.MPS_computational_state(\"0\" * n_qubits)\n", "circ = ansatz_circuit_su4(\n", " n_qubits=n_qubits, depth=depth, param_scaling=0.1, parametrize=False, psi0=psi0\n", ")\n", "circ_P = circ.psi\n", "circ_G = list(circ.gates)\n", "\n", "# Build the forward MPS for each layer (from bottom to top).\n", "mpsB = []\n", "mpsB.append(GS.H)\n", "mpsK = []\n", "mpsK.append(psi0)\n", "for ii in range(depth - 1):\n", " # Get gates belonging to this round (layer).\n", " mpos = [gate.build_mpo(L=n_qubits) for gate in circ_G if gate.round == ii]\n", " tmp = mpsK[-1]\n", " for jj in mpos:\n", " tmp = tmp.gate_with_submpo(jj, transpose=False, max_bond=32, cutoff=1e-10)\n", " mpsK.append(tmp)" ] }, { "cell_type": "markdown", "id": "c89d0185", "metadata": {}, "source": [ "### 3. Sweeping Optimization\n", "\n", "We perform a number of full sweeps (`sweep` from 0 to 499). Each sweep consists of two phases:\n", "\n", "- **Sweep down**: from the top layer (`depth-1`) down to layer 0.\n", " - For a given layer `ii` (top to bottom), we construct a trial circuit `trial` from `mpsK[-1]` (which contains all layers below) and the gates of that layer.\n", " - We call `tn_fit` to optimize the tensors of that layer, selected by their layer tag `ROUND_{depth-1-ii}`, so that the trial MPS matches the current `mpsB[-1]` (which contains all layers above, already optimized).\n", " - We then copy the optimized tensor data back into the main circuit representation (`circ_P` and `circ_G`).\n", " - We update `mpsB` by applying the **conjugated** gates (as MPOs) to move the boundary one layer down.\n", "\n", "- **Sweep up**: from the bottom layer (0) up to `depth-1`.\n", " - Similar to sweep down, but we start from `mpsK[-1]` and update layers from bottom to top.\n", " - We also update `mpsK` by applying the (non-conjugated) gates to move the forward boundary up.\n", "\n", "After each full sweep, we contract the full circuit with the MPO to compute the energy and the overlap with the DMRG state. This gives a measure of convergence." ] }, { "cell_type": "code", "execution_count": 4, "id": "1cca4eb6", "metadata": { "execution": { "iopub.execute_input": "2026-09-15T05:58:46.553630Z", "iopub.status.busy": "2026-09-15T05:58:46.553472Z", "iopub.status.idle": "2026-09-15T05:58:47.282807Z", "shell.execute_reply": "2026-09-15T05:58:47.282063Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sweep Energy Error 1-Fidelity\n", "------------------------------------------------\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ " 0 -5.08948579 3.956e-09 2.262e-09\n", " 1 -5.08948581 7.661e-15 3.775e-15\n" ] } ], "source": [ "# Initialize lists to store convergence data\n", "sweep_numbers = []\n", "energy_errors = []\n", "infidelities = []\n", "energies = []\n", "\n", "# Print a header for the convergence output\n", "print(\"Sweep Energy Error 1-Fidelity\")\n", "print(\"------------------------------------------------\")\n", "\n", "ene_old = float(\"nan\")\n", "ene = float(\"nan\")\n", "\n", "n_sweeps = 1000\n", "for sweep in range(n_sweeps):\n", " ## Sweep down: optimize layers from top to bottom.\n", " for ii in range(depth - 1):\n", " # Build trial circuit from current mpsK (layers below) + gates of this layer.\n", " trial = qtn.Circuit(psi0=mpsK.pop())\n", " gates = [gate for gate in circ_G if gate.round == depth - 1 - ii]\n", " for gate in gates:\n", " trial.apply_gate(gate)\n", "\n", " tn = trial.psi\n", " # Fit the SU4SWAP tensors of this layer to match the current mpsB (layers above).\n", " tn_fit(\n", " tn,\n", " mpsB[-1].H, # note: mpsB stores the conjugate, so we use its adjoint.\n", " tags=f\"ROUND_{depth - 1 - ii}\",\n", " steps=10, # inner ALS sweeps per layer update\n", " tol=1e-12,\n", " contract_optimize=\"auto-hq\",\n", " progbar=False,\n", " )\n", "\n", " # Copy the optimized tensor data back into the master circuit tensors.\n", " g0 = tn.select_tensors(\"ROUND_\" + str(depth - 1 - ii), \"any\")\n", " g1 = circ_P.select_tensors(\"ROUND_\" + str(depth - 1 - ii), \"any\")\n", " gate_indices = [\n", " i for i, gate in enumerate(circ_G) if gate.round == depth - 1 - ii\n", " ]\n", " for t0, t1, ig in zip(g0, g1, gate_indices, strict=True):\n", " t1.modify(data=t0.data)\n", " old = circ_G[ig]\n", " circ_G[ig] = qtn.circuit.Gate.from_raw(\n", " t0.data, qubits=old.qubits, controls=old.controls, round=old.round\n", " )\n", "\n", " # Update mpsB: apply the conjugated gates (as MPOs) to move down one layer.\n", " mpos = [circ_G[ig].build_mpo(L=n_qubits) for ig in gate_indices]\n", " mpos.reverse() # reverse order because we are conjugating and moving down\n", "\n", " tmp = mpsB[-1]\n", " for jj in mpos:\n", " tmp = tmp.gate_with_submpo(jj, transpose=True, max_bond=32, cutoff=1e-12)\n", " mpsB.append(tmp)\n", "\n", " ## Sweep up: optimize layers from bottom to top.\n", " for ii in range(depth - 1):\n", " # Build trial circuit from current mpsK[-1] (which has all layers below) + gates of this layer.\n", " trial = qtn.Circuit(psi0=mpsK[-1])\n", " gates = [gate for gate in circ_G if gate.round == ii]\n", " for gate in gates:\n", " trial.apply_gate(gate)\n", "\n", " tn = trial.psi\n", " # Fit the SU4SWAP tensors of this layer to match the current mpsB (top part, already optimized).\n", " tn_fit(\n", " tn,\n", " mpsB.pop().H, # use the top part; pop removes the last element (which corresponds to the layer just below)\n", " tags=f\"ROUND_{ii}\",\n", " steps=10,\n", " tol=1e-12,\n", " contract_optimize=\"auto-hq\",\n", " progbar=False,\n", " )\n", "\n", " # Copy optimized data back to master circuit.\n", " g0 = tn.select_tensors(\"ROUND_\" + str(ii), \"any\")\n", " g1 = circ_P.select_tensors(\"ROUND_\" + str(ii), \"any\")\n", " gate_indices = [i for i, gate in enumerate(circ_G) if gate.round == ii]\n", " for t0, t1, ig in zip(g0, g1, gate_indices, strict=True):\n", " t1.modify(data=t0.data)\n", " old = circ_G[ig]\n", " circ_G[ig] = qtn.circuit.Gate.from_raw(\n", " t0.data, qubits=old.qubits, controls=old.controls, round=old.round\n", " )\n", "\n", " # Update mpsK: apply the (non-conjugated) gates to move the forward boundary up.\n", " mpos = [circ_G[ig].build_mpo(L=n_qubits) for ig in gate_indices]\n", "\n", " tmp = mpsK[-1]\n", " for jj in mpos:\n", " tmp = tmp.gate_with_submpo(jj, transpose=False, max_bond=32, cutoff=1e-12)\n", " mpsK.append(tmp)\n", "\n", " # ## 4. Evaluation After Each Full Sweep\n", " #\n", " # We contract the full circuit MPS `tn = circ_P` with the Hamiltonian MPO to compute the energy,\n", " # and also compute the overlap with the DMRG target state to get the fidelity.\n", " # These numbers indicate how well the circuit approximates the ground state.\n", "\n", " tn = circ_P\n", " ovlp = (dmrg.state.H & tn).contract()\n", " tnH = tn.H\n", " tn.align_(mpo, tnH)\n", " energy_tn = tnH & mpo & tn\n", " ene = autoray.do(\"real\", energy_tn.contract(all))\n", " error = np.abs(1 - ene / dmrg_energy)\n", " infidelity = 1 - np.abs(ovlp) ** 2\n", "\n", " # Store data for plotting\n", " sweep_numbers.append(sweep)\n", " energies.append(ene)\n", " energy_errors.append(error)\n", " infidelities.append(np.abs(infidelity))\n", "\n", " print(f\"{sweep:5d} {ene:12.8f} {error:10.3e} {infidelity:10.3e}\")\n", "\n", " if abs(1 - ene / ene_old) < 1e-8:\n", " break\n", " else:\n", " ene_old = ene" ] }, { "cell_type": "markdown", "id": "44be1044", "metadata": {}, "source": [ "### 5. Plot Convergence\n", "Plot energy error and infidelity versus sweep number." ] }, { "cell_type": "code", "execution_count": 5, "id": "8d00a3b1", "metadata": { "execution": { "iopub.execute_input": "2026-09-15T05:58:47.284302Z", "iopub.status.busy": "2026-09-15T05:58:47.284138Z", "iopub.status.idle": "2026-09-15T05:58:47.691162Z", "shell.execute_reply": "2026-09-15T05:58:47.690516Z" } }, "outputs": [ { "data": { "image/png": "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Li4ueHt7J9nn5OREz549+eijj2yFx5csWYKHhwddunT5z+8DULJkSZo3b/6f55UoUeKexcvv9R0effTRZOdWqlSJjRs3JitmntLqhynx8fHhscceY9myZTzzzDOA8epewYIFadasme28d999lz59+lCqVCn8/Pxo3bo1vXv3ply5cv95j1q1arFq1Spu377NwYMHWb16NR988AGdO3cmIiKCypUr4+zsTL169ZJ0vBo1akTDhg1JSEhg165dFClShCtXriQZlDp+/Dg///zzPV8zuFNM/fjx41y7di1JHauUzrvjkUceSdaRvbOC4smTJylatOh/fm8RERGzeXh4JPs7Ml++fP9Z1ykld/ojFSpUSHbs0UcfTVJnMq1/7z6M3r17M2TIEP744w/KlCnD8uXLiYuL4+mnn/7Pz3br1o1Ro0Zx5swZSpQowZYtW7h48WKSB3ODBw/myy+/JCgoiBIlStCiRQu6du1Kq1at/vP6efLk4d133+Xdd9/ljz/+IDw8nPfee49Zs2aRJ08e3n77bcAYlJo9eza//fYbv//+OxaLhXr16tkGqwYMGMD27dtp0KABTk7GPI7jx49jtVpT/PMAbKsXHj9+HIA+ffrcM+e1a9eSPKz99zXLly+Pk5NTiiUjRLIaDUqJZCN3z2i6m/V/793feWrz8ssv22ob/du/B5vuPNV6UL1792bKlCmsWbOGHj168Pnnn9OmTZskTwTTw/1yPux3SOs1unXrxoQJE7h8+TK5cuXi66+/pkePHklmlnXt2pVGjRqxevVqNm3axJQpU3jnnXdYtWoVQUFBqbqPm5sbtWrVolatWlSsWJF+/fqxfPly2/LTDRs2ZMKECdy6dYvt27czevRo2xPB7du3U6RIEYAkg1KJiYkEBgby6quvpnjPOwNJiYmJFC5cOMmT1Lvda1BLREQkM7tXX8veHPn3bvfu3XnxxRdZsmQJo0aNYvHixfj7+6f4MO/funXrxsiRI1m+fDnDhw/nyy+/JE+ePEkGnAoXLkxERAQbN25k/fr1rF+/nnnz5tG7d+8UF4u5lzJlytC/f386dOhAuXLlWLJkiW1Q6s6iNNu2bePEiRPUrFkTT09PGjVqxIwZM7h+/To//fQTEyZMsF0vMTHRtvhLSn/OXl5etvMApkyZgq+vb4rZ7px7L/ebcSaS1WhQSkRs7szCcXV1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ExgYSKFChXB3dydHjhz3fGXv888/JzExkc8++wwPDw+qVKnC6dOnGTRokO2c1Pbt7uXOq3x58+alaNGiREdHA0a/7vnnn2fq1Km4u7tz4MABfvnlF7766qsHaovU0kypNLL36nt580K/fsbUuNmznWnWDM6ft8utREQkE2jatCkRERFJfp5//vkk59yZSQTGDKbcuXNz8eJFAA4ePMj333+Pl5eX7eexxx4DjLoGd/j5+SW55tGjR6lVq1aSfbVr1062XaVKFRYsWADA4sWLKVOmDI0bN07xu/z222/cuHGDwMDAJHkWLlyYJAuAv79/ss//O+Phw4epV68eFovFtq9BgwZcv36d06dP3/NzkkX5+ZHYtCkut27h0qMHjBwJdnqIKCIikpK7+2SA7aFdat2ZIe7h4WHbd+dB3h2p7dulVfv27XF2dmb16tUAzJ8/n6ZNm9pe97MXzZTKYJyc4I03EklI2MusWXXYscOCnx+sXAl165qdTkQka8iZ03gIZi+JiYlER0eTO3fuZNOdc+ZM27U8PT155JFH7nuOq6trkm2LxWJ79//69eu0bduWd955J9nnihUrluQ+D+LZZ58lNDSUESNGMG/ePPr165dkkOhu1//X6GvXrqVEiRJJjv27eHtKeR4044N+TjKZQoVIWLuWEz168MhXX8HkyXDgACxdCvnzm51ORETSwt6dtf+69wO6X58svaS2b5dWbm5u9O7dm3nz5tGxY0c+//zzFF8xTG8alMqgate+wI8/xtOliyuHD0PjxjBrFty1iqOIiDwgi+WBZ2WnSmKiMUHD09N42GCmmjVrsnLlSry9vZOtYHc/jz76KOvWrUuyL6VZwr169eLVV19lxowZREZG0qdPn3tes3Llyri7u3Pq1Kkkr+o9qEqVKrFy5Uqsd9V+2LFjB7ly5aJkyZIPfX3JhFxc+LVfP7w7d8bluedg0ybw94fVq8HHx+x0IiKSWvburGVQlSpVYtGiRdy6dcs2W2rXrl1JznnQvt3dXF1dUyxJ9Oyzz1K1alU+/PBD4uPj6dix4wNdPy30+l4GVrEi7N4NHTtCXBwMHGgMSsXGmp1MREQcJTY2lvPnzyf5ud/qKv8WHBzMlStX6NGjB3v37uX3339n48aN9OvX7771EQcOHMiRI0d47bXXOHbsGF9++SXz588HSDITKl++fHTs2JFX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QUF4e3uTmpqa73hqaio1a9a0JZPT6aRx48a0aNHCls8XEREpa7y9zT5TS5ZAxYqQmGiuSt+zx+5kIiIiIh6sVi1zZ77YWLPpeXw89OgBv/9ud7I8Hl2U8vX1JSIigsTExLxjubm5JCYmuvz4XXGJjY1l//797Nixw5bPFxERKat694atW6FBAzh2DFq3hgUL7E4lIiIi4sF8feHVV82G535+8NFH5i59LrREcifbi1Jnz54lOTk5bwe9lJQUkpOTOX78OABxcXHMnj2b+fPnc+DAAYYPH056enrebnwiIiJSdjRpAjt2QNeucP489OsHTz7pRXa2w+5oIiIiIp5r4EDYtAnq1IFDh6BlSxwffmh3KvuLUjt37iQ8PJzw8HDALEKFh4fn7YLXt29fpk+fzrhx4wgLCyM5OZnVq1cXaH5uFT2+JyIiYq+qVeHjj+HZZ83Xr7ziTXx8a3791d5c8vc0hxIREbFZixZmn6l27eDMGcr17k2jhQvBxp1xbS9KRUdHYxhGga958+blnTNixAiOHTtGRkYG27ZtIzIy0ra8enxPRETEfl5e8NxzsHw5BAQYfP11EB9/rNVSnkxzKBEREQ9QowasWwePPw5Ag48/hv97Us0OZWL3PRERESmduneHzZuzmTjxKIMG1bc7joiIiIjn8/GBf/+b7LAwdh08SLNrr7Utiu0rpURERESuRKNGcP/9B3FooZSIiIjIZTPuu49fWrWyNYOKUi5SPwQRERERERERkSunopSL1A9BREREREREROTKqSglIiIiIiIiIiKWU1FKREREREREREQsp6KUi9RTSkRERMR1mkOJiIjIX6ko5SL1lBIRERFxneZQIiIi8lcqSomIiIiIiIiIiOVUlBIREREREREREcupKCUiIiIiIiIiIpZTUcpFatIpIiIiIiIiInLlVJRykZp0ioiIiIiIiIhcORWlRERERERERETEcipKiYiIiIiIiIiI5VSUEhERERERERERy6koJSIiIiIiIiIilitnd4CSyjAMANLS0or92llZWZw7d460tDR8fHyK/fpSkMbcWhpva2m8racxt5Y7x/vCn/MX/tyXonM6nTidTrKzswHNoUoDjbf1NObW0nhbS+NtPU+YQzkMzbJccmFClZmZyZEjR+yOIyIiIhb4/vvvqVOnjt0xSoUffviBkJAQu2OIiIiIBS41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/foZo0ePzjt/8+bNRrly5Yzp06cbBw4cMOLj47WdsYtcHfMpU6YYvr6+xvvvv2/8/PPPeV9nzpyx61soUVwd77/SzjGucXW8jx8/bgQEBBgjRowwDh06ZHzyySdGjRo1jOeff96ub6HEcXXM4+PjjYCAAOO9994zjh49aqxdu9Zo0KCB0adPH7u+hRLlzJkzxp49e4w9e/YYgDFjxgxjz549xrFjxwzDMIzRo0cb/fr1yzv/wpbGo0aNMg4cOGA4nU5LtjQW99McylqaP1lPcyhraQ5lLc2frFVS5k8qStnklVdeMa655hrD19fXaNmypbF169a899q1a2f0798/3/lLliwxGjZsaPj6+ho33XSTsXLlSosTl3yujHndunUNoMBXfHy89cFLKFd/xv9MEyrXuTreX3zxhREZGWn4+fkZ9evXNyZNmmRkZ2dbnLpkc2XMs7KyjPHjxxsNGjQwypcvb4SEhBiPPPKI8dtvv1kfvATasGFDof9PvjDG/fv3N9q1a1fg14SFhRm+vr5G/fr1jblz51qeW9xDcyhraf5kPc2hrKU5lLU0f7JOSZk/OQxD695ERERERERERMRa6iklIiIiIiIiIiKWU1FKREREREREREQsp6KUiIiIiIiIiIhYTkUpERERERERERGxnIpSIiIiIiIiIiJiORWlRERERERERETEcipKiYiIiIiIiIiI5VSUEhERERERERERy6koJSIiIiIiIiIillNRSkRKrf/9738MHz6ca665Bj8/P2rWrEmXLl3YvHmz3dFEREREPJbmUCJilXJ2BxARcZd77rmHzMxM5s+fT/369UlNTSUxMZGTJ0/aHU1ERETEY2kOJSJW0UopESmVTp8+zaZNm5g6dSrt27enbt26tGzZkjFjxnDXXXfx1FNPceedd+ad/9JLL+FwOFi9enXeseuuu44333wz7/Wbb77JjTfeSPny5WnUqBEzZ87M95nff/89ffr0oUqVKlSrVo27776b7777Lu/9AQMG0L17dyZMmED16tUJDAxk2LBhZGZmum8gRERERFygOZSIWElFKREplSpVqkSlSpVYsWIFGRkZBd5v164dn3/+OTk5OQB89tlnBAUFsXHjRgB+/PFHjhw5QnR0NAALFy5k3LhxTJo0iQMHDjB58mSeffZZ5s+fD0BWVhZdunQhICCATZs2sXnzZipVqsTtt9+eb8KUmJjIgQMH2LhxI++99x7Lli1jwoQJ7h0MERERkcukOZSIWMoQESml3n//faNq1apG+fLljdatWxtjxowx9u7daxiGYfz222+Gl5eXsWPHDiM3N9eoVq2akZCQYERGRhqGYRgLFiwwrr766rxrNWjQwHj33XfzXX/ixIlGVFSUYRiG8c477xg33HCDkZubm/d+RkaGUaFCBWPNmjWGYRhG//79jWrVqhnp6el557z22mtGpUqVjJycHPcMgoiIiIiLNIcSEatopZSIlFr33HMPP/30Ex999BG33347GzdupFmzZsybN48qVaoQGhrKxo0b2bdvH76+vgwdOpQ9e/Zw9uxZPvvsM9q1awdAeno6R44cYfDgwXl3DytVqsTzzz/PkSNHANi7dy+HDx8mICAg7/1q1apx/vz5vHMAQkND8ff3z3sdFRXF2bNn+f77760dHBEREZGL0BxKRKyiRuciUqqVL1+eTp060alTJ5599lkeeugh4uPjGTBgANHR0WzcuBE/Pz/atWtHtWrVuPHGG/n888/57LPPePLJJwE4e/YsALNnzyYyMjLf9b29vfPOiYiIYOHChQUyVK9e3c3fpYiIiEjx0hxKRKygopSIlCmNGzdmxYoVgNkTYc6cOZQrV47bb78dgOjoaN577z2++eabvF4IwcHB1K5dm6NHj3L//fcXet1mzZqxePFiatSoQWBg4EU/f+/evfzxxx9UqFABgK1bt1KpUiVCQkKK75sUERERKWaaQ4mIO+jxPREplU6ePMltt93GggUL+PLLL0lJSWHp0qW88MIL3H333QDceuutnDlzhk8++SRv8hQdHc3ChQupVasWDRs2zLvehAkTSEhI4OWXX+abb75h3759zJ07lxkzZgBw//33ExQUxN13382mTZtISUlh48aNPPbYY/zwww9518nMzGTw4MHs37+fVatWER8fz4gRI/Dy0v+ORURExH6aQ4mIlbRSSkRKpUqVKhEZGcm///1vjhw5QlZWFiEhIQwZMoRnnnkGgKpVq9K0aVNSU1Np1KgRYE6ycnNz83ohXPDQQw/h7+/PtGnTGDVqFBUrVqRp06Y8/vjjAPj7+5OUlMQ///lPevbsyZkzZ7j66qvp0KFDvrt+HTp04Prrr+fWW28lIyODf/zjH4wfP96SMRERERG5FM2hRMRKDsMwDLtDiIiUBQMGDOD06dN5S99FRERE5NI0hxIpvbTWUURERERERERELKeilIiIiIiIiIiIWE6P74mIiIiIiIiIiOW0UkpERERERERERCynopSIiIiIiIiIiFhORSkREREREREREbGcilIiIiIiIiIiImI5FaVERERERERERMRyKkqJiIiIiIiIiIjlVJQSERERERERERHLqSglIiIiIiIiIiKWU1FKREREREREREQs9/8A8/+PpCwe7OwAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(12, 5))\n", "\n", "ax1.semilogy(sweep_numbers, energy_errors, \"b-\", label=\"Energy error\")\n", "ax1.set_xlabel(\"Sweep\")\n", "ax1.set_ylabel(\"Energy error (1 - E/E_DMRG)\")\n", "ax1.set_title(\"Energy Error vs Sweep\")\n", "ax1.grid(visible=True)\n", "ax1.legend()\n", "\n", "ax2.semilogy(sweep_numbers, infidelities, \"r-\", label=\"Infidelity\")\n", "ax2.set_xlabel(\"Sweep\")\n", "ax2.set_ylabel(\"Infidelity (1 - ||²)\")\n", "ax2.set_title(\"Infidelity vs Sweep\")\n", "ax2.grid(visible=True)\n", "ax2.legend()\n", "\n", "plt.tight_layout()\n", "plt.show()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "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.13.15" } }, "nbformat": 4, "nbformat_minor": 5 }