{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Optimization of a State-to-State Transfer in a Lambda System in the RWA" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:33.322061Z", "iopub.status.busy": "2021-11-07T04:51:33.321715Z", "iopub.status.idle": "2021-11-07T04:51:34.330647Z", "shell.execute_reply": "2021-11-07T04:51:34.330279Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Python implementation: CPython\n", "Python version : 3.8.1\n", "IPython version : 7.24.1\n", "\n", "matplotlib: 3.4.2\n", "krotov : 1.2.1+dev\n", "numpy : 1.20.3\n", "qutip : 4.6.1\n", "scipy : 1.6.3\n", "\n" ] } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "%load_ext watermark\n", "import os\n", "import numpy as np\n", "import scipy\n", "import matplotlib\n", "import matplotlib.pylab as plt\n", "import krotov\n", "import qutip\n", "from qutip import Qobj\n", "%watermark -v --iversions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\newcommand{tr}[0]{\\operatorname{tr}}\n", "\\newcommand{diag}[0]{\\operatorname{diag}}\n", "\\newcommand{abs}[0]{\\operatorname{abs}}\n", "\\newcommand{pop}[0]{\\operatorname{pop}}\n", "\\newcommand{aux}[0]{\\text{aux}}\n", "\\newcommand{opt}[0]{\\text{opt}}\n", "\\newcommand{tgt}[0]{\\text{tgt}}\n", "\\newcommand{init}[0]{\\text{init}}\n", "\\newcommand{lab}[0]{\\text{lab}}\n", "\\newcommand{rwa}[0]{\\text{rwa}}\n", "\\newcommand{bra}[1]{\\langle#1\\vert}\n", "\\newcommand{ket}[1]{\\vert#1\\rangle}\n", "\\newcommand{Bra}[1]{\\left\\langle#1\\right\\vert}\n", "\\newcommand{Ket}[1]{\\left\\vert#1\\right\\rangle}\n", "\\newcommand{Braket}[2]{\\left\\langle #1\\vphantom{#2}\\mid{#2}\\vphantom{#1}\\right\\rangle}\n", "\\newcommand{ketbra}[2]{\\vert#1\\rangle\\!\\langle#2\\vert}\n", "\\newcommand{op}[1]{\\hat{#1}}\n", "\\newcommand{Op}[1]{\\hat{#1}}\n", "\\newcommand{dd}[0]{\\,\\text{d}}\n", "\\newcommand{Liouville}[0]{\\mathcal{L}}\n", "\\newcommand{DynMap}[0]{\\mathcal{E}}\n", "\\newcommand{identity}[0]{\\mathbf{1}}\n", "\\newcommand{Norm}[1]{\\lVert#1\\rVert}\n", "\\newcommand{Abs}[1]{\\left\\vert#1\\right\\vert}\n", "\\newcommand{avg}[1]{\\langle#1\\rangle}\n", "\\newcommand{Avg}[1]{\\left\\langle#1\\right\\rangle}\n", "\\newcommand{AbsSq}[1]{\\left\\vert#1\\right\\vert^2}\n", "\\newcommand{Re}[0]{\\operatorname{Re}}\n", "\\newcommand{Im}[0]{\\operatorname{Im}}$\n", "\n", "This example is illustrates the use of complex-valued control fields. This is\n", "accomplished by rewriting the Hamiltonian as the sum of two independent\n", "controls (real and imaginary parts). We consider a 3-level system in a\n", "$\\Lambda$ configuration, and seek control pulses that implement a\n", "(phase-sensitive) state-to-state transition $\\ket{1} \\rightarrow \\ket{3}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The rotating wave Hamiltonian" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The system consists of three levels $\\ket{1}$, $\\ket{2}$ and $\\ket{3}$ with\n", "energy levels $E_{1}, E_{2}$ and $E_{3}$ which interact with a pair of laser\n", "pulses $\\epsilon_{P}(t)$ (\"pump laser\") and $\\epsilon_{S}(t)$ (\"Stokes laser\"),\n", "respectively, see Chapter 15.4.2 in [\"Introduction to Quantum Mechanics: A\n", "Time-Dependent Perspective\" by David Tannor][Tannor] for details.\n", "\n", "[Tannor]: http://www.weizmann.ac.il/chemphys/tannor/Book/\n", "\n", "In the lab frame, the Hamiltonian reads\n", "\n", "$$\n", "\\Op{H}_{\\text{lab}} = \\begin{pmatrix}\n", " E_1 & -\\mu_{12} \\epsilon_P(t) & 0 \\\\\n", " -\\mu_{12} \\epsilon_P(t) & E_2 & - \\mu_{23} \\epsilon_S(t) \\\\\n", " 0 & -\\mu_{23} \\epsilon_S(t) & E_2\n", "\\end{pmatrix}\\,.\n", "$$\n", "\n", "with the dipole values $\\mu_{12}$, $\\mu_{23}$ describing the coupling to the\n", "(real-valued) control fields $\\epsilon_P(t)$, $\\epsilon_S(t)$. The \"rotating\n", "frame\" is defined as\n", "\n", "$$\\ket{\\Psi_{\\text{rot}}} = \\Op{U}_0^\\dagger \\ket{\\Psi_{\\text{lab}}}$$\n", "\n", "with the transformation\n", "\n", "$$\\op{U}_{0} = \\ketbra{1}{1}\n", "e^{-i\\left(E_{2} - \\omega_{P} \\right)t} + \\ketbra{2}{2} e^{-iE_{2}t} +\n", "\\ketbra{3}{3} e^{-i\\left(E_{2}-\\omega_{S}\\right)t}\\,,$$\n", "\n", "where $\\omega_{P}$ and $\\omega_{S}$ are the two central frequencies defining\n", "the rotating frame.\n", "\n", "The condition of having to fulfill the Schrödinger equation in the rotating\n", "frame implies a rotating frame Hamiltonian defined as\n", "\n", "$$\\op{H}_{\\text{rot}} = \\op{U}_{0}^{\\dagger} \\op{H}_{\\text{lab}} \\op{U}_{0} - i \\op{U}_{0}^{\\dagger} \\dot{\\op{U}}_{0}\\,.$$\n", "\n", "Note that most textbooks use $\\Op{U}$ instead of $\\Op{U}^\\dagger$, and thus the\n", "adjoint of the above equation to define the rotating frame transformation, but\n", "we follow the example of Tannor's book here.\n", "\n", "The rotating frame Hamiltonian reads\n", "$$\n", "\\Op{H}_\\text{rot} = \\begin{pmatrix}\n", " E_1 + \\omega_P - E_2 & -\\mu_{12} \\epsilon_P(t) e^{-i \\omega_P t} & 0 \\\\\n", " -\\mu_{12} \\epsilon_P(t) e^{+i \\omega_P t} & 0 & - \\mu_{23} \\epsilon_S(t) e^{-i \\omega_S t}\\\\\n", " 0 & -\\mu_{23} \\epsilon_S(t) e^{+i \\omega_S t} & E3 + \\omega_S -E_2\n", "\\end{pmatrix}\\,.\n", "$$\n", "\n", "We can now write the fields as\n", "\n", "$$\n", "\\begin{split}\n", "\\mu_{12} \\epsilon_{P}(t)\n", " &= \\Omega_{P}^{(1)}(t) \\cos{(\\omega_P t)} - \\Omega_{P}^{(2)}(t) \\sin{(\\omega_P t)} \\\\\n", " &= \\Omega_{P}^{(1)}(t) \\left( e^{i \\omega_P t} + e^{-i \\omega_P t}\\right)\n", " + i \\Omega_{P}^{(2)}(t) \\left( e^{i \\omega_P t} - e^{-i \\omega_P t} \\right) \\,,\n", "\\end{split}\n", "$$\n", "\n", "and similarly for $\\epsilon_{S}(t)$, where we have split each field into two\n", "arbitrary (real-valued) auxiliary fields $\\Omega_{P}^{(1)}(t),\n", "\\Omega_{P}^{(2)}(t)$, and $\\Omega_{S}^{(1)}(t), \\Omega_{S}^{(2)}(t)$. This\n", "rewriting is suggestive of controls being spectrally centered around $\\omega_P$\n", "and $\\omega_S$, respectively, in which case any oscillations in\n", "$\\Omega_{P,S}^{(1,2)}(t)$ are on a much slower time scale than $\\omega_{P, S}$.\n", "Mathematically, however, *any* control fields can written in the above form.\n", "Thus, we have not placed any restriction on the controls at this time.\n", "\n", "Plugging this into $\\Op{H}_\\text{rot}$ and invoking the rotating wave\n", "approximation that neglects all fast oscillating terms $\\propto e^{\\pm i 2\n", "\\omega_{P,S} t}$, we find\n", "\n", "$$\n", "\\Op{H}_\\text{RWA} = \\begin{pmatrix}\n", " \\Delta_P & -\\frac{1}{2} \\Omega_P(t) & 0 \\\\\n", " -\\frac{1}{2} \\Omega_P^*(t) & 0 & -\\frac{1}{2} \\Omega_S(t) \\\\\n", " 0 & -\\frac{1}{2} \\Omega_S^*(t) & \\Delta_S\n", "\\end{pmatrix}\\,,\n", "$$\n", "\n", "with the detunings $\\Delta_P \\equiv E_1 + \\omega_P - E_2$, $\\Delta_S \\equiv E3\n", "+ \\omega_S -E_2$ and the complex-valued control fields $\\Omega_P(t) \\equiv\n", "\\Omega_{P}^{(1)}(t) + i \\Omega_{P}^{(2)}(t)$ and $\\Omega_S(t) \\equiv\n", "\\Omega_{S}^{(1)}(t) + i \\Omega_{S}^{(2)}(t)$, illustrated in the following\n", "diagram:\n", "\n", "![Lambda system considered in this notebook](energylevels.png)\n", "\n", "Most textbooks (including Tannor's) only allow control fields of the form\n", "$\\epsilon_{P,S}(t) \\propto \\Omega_{P,S}(t) \\cos{(\\omega_{P,S} t)}$ with the\n", "pulse envelopes $\\Omega_{P,S}(t) \\in \\mathbb{R}^+$. This will result in the\n", "same $\\Op{H}_\\text{RWA}$ as above, but with the positive real-valued envelopes\n", "instead of the complex-valued $\\Omega_{P,S}(t)$. However, this restriction is\n", "unnecessary: complex-valued control fields in the RWA are more general and\n", "entirely physical, with the relation to the real-valued field in the lab\n", "frame as defined above. The spectra of the optimized pulses are free to deviate\n", "from the frequencies of the rotating frame, limited only by the numerical\n", "resolution of the time grid and the RWA.\n", "\n", "The `krotov` package requires that all control pulses are real-valued.\n", "Therefore, the real and imaginary parts of $\\Omega_{P}$ and $\\Omega_{S}$ are\n", "treated as independent Hamiltonians, and we write\n", "\n", "$$\n", "\\Op{H}_\\text{RWA}\n", " = \\Op{H_0}\n", " + \\Omega_{P}^{(1)}(t) \\Op{H}_{P,\\text{re}}\n", " + \\Omega_{P}^{(2)}(t) \\Op{H}_{P,\\text{im}}\n", " + \\Omega_{S}^{(1)}(t) \\Op{H}_{S,\\text{re}}\n", " + \\Omega_{S}^{(2)}(t) \\Op{H}_{S,\\text{im}}\n", "$$\n", "\n", "for the purpose of the optimization, with\n", "\n", "$$\n", "\\begin{align}\n", "\\Op{H_0} &= \\Delta_P \\ketbra{1}{1} + \\Delta_S \\ketbra{3}{3}\\,, \\\\\n", "\\Op{H}_{P,\\text{re}} &= -\\frac{1}{2} \\left(\\ketbra{1}{2} + \\ketbra{2}{1}\\right)\\,, \\\\\n", "\\Op{H}_{P,\\text{im}} &= -\\frac{i}{2} \\left(\\ketbra{1}{2} - \\ketbra{2}{1}\\right)\\,, \\\\\n", "\\Op{H}_{S,\\text{re}} &= -\\frac{1}{2} \\left(\\ketbra{2}{3} + \\ketbra{3}{2}\\right)\\,, \\\\\n", "\\Op{H}_{S,\\text{im}} &= -\\frac{i}{2} \\left(\\ketbra{2}{3} - \\ketbra{3}{2}\\right)\\,.\n", "\\end{align}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Guess controls" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We choose the initial guess for the four control fields based on the intuition\n", "of the \"stimulated Raman adiabatic passage\" (STIRAP) scheme. STIRAP allows to\n", "transfer the population in $\\ket{1}$ $\\ket{3}$ without having to pass through\n", "$\\ket{2}$; it requires the Stokes-pulse to precede but overlap the pump-pulse.\n", "\n", "Here, we leave it up to Krotov's method to find appropriate pulses for a\n", "STIRAP-like transfer (without requiring that the $\\ket{2}$ level remains\n", "unpopulated). We start from a low intensity real-valued $\\Omega_S(t)$ pulse\n", "with a Blackman shape, followed by an overlapping real-valued $\\Omega_P(t)$ of\n", "the same shape. The entire scheme is in the time interval [0, 5]." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:55.829336Z", "start_time": "2019-02-12T04:40:55.819110Z" }, "attributes": { "classes": [], "id": "", "n": "6" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.334395Z", "iopub.status.busy": "2021-11-07T04:51:34.334066Z", "iopub.status.idle": "2021-11-07T04:51:34.335872Z", "shell.execute_reply": "2021-11-07T04:51:34.335545Z" } }, "outputs": [], "source": [ "def Omega_P1(t, args):\n", " \"\"\"Guess for the real part of the pump pulse\"\"\"\n", " Ω0 = 5.0\n", " return Ω0 * krotov.shapes.blackman(t, t_start=2.0, t_stop=5.0)\n", "\n", "\n", "def Omega_P2(t, args):\n", " \"\"\"Guess for the imaginary part of the pump pulse\"\"\"\n", " return 0.0\n", "\n", "\n", "def Omega_S1(t, args):\n", " \"\"\"Guess for the real part of the Stokes pulse\"\"\"\n", " Ω0 = 5.0\n", " return Ω0 * krotov.shapes.blackman(t, t_start=0.0, t_stop=3.0)\n", "\n", "\n", "def Omega_S2(t, args):\n", " \"\"\"Guess for the imaginary part of the Stokes pulse\"\"\"\n", " return 0.0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now instantiate the Hamiltonian including these guess controls:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:34.339925Z", "iopub.status.busy": "2021-11-07T04:51:34.339602Z", "iopub.status.idle": "2021-11-07T04:51:34.341260Z", "shell.execute_reply": "2021-11-07T04:51:34.340935Z" } }, "outputs": [], "source": [ "def hamiltonian(E1=0.0, E2=10.0, E3=5.0, omega_P=9.5, omega_S=4.5):\n", " \"\"\"Lambda-system Hamiltonian in the RWA\"\"\"\n", "\n", " # detunings\n", " ΔP = E1 + omega_P - E2\n", " ΔS = E3 + omega_S - E2\n", "\n", " H0 = Qobj([[ΔP, 0.0, 0.0], [0.0, 0.0, 0.0], [0.0, 0.0, ΔS]])\n", "\n", " HP_re = -0.5 * Qobj([[0.0, 1.0, 0.0], [1.0, 0.0, 0.0], [0.0, 0.0, 0.0]])\n", " HP_im = -0.5 * Qobj([[0.0, 1.0j, 0.0], [-1.0j, 0.0, 0.0], [0.0, 0.0, 0.0]])\n", "\n", " HS_re = -0.5 * Qobj([[0.0, 0.0, 0.0], [0.0, 0.0, 1.0], [0.0, 1.0, 0.0]])\n", " HS_im = -0.5 * Qobj([[0.0, 0.0, 0.0], [0.0, 0.0, 1.0j], [0.0, -1.0j, 0.0]])\n", "\n", " return [\n", " H0,\n", " [HP_re, Omega_P1],\n", " [HP_im, Omega_P2],\n", " [HS_re, Omega_S1],\n", " [HS_im, Omega_S2],\n", " ]\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:34.344508Z", "iopub.status.busy": "2021-11-07T04:51:34.343895Z", "iopub.status.idle": "2021-11-07T04:51:34.346135Z", "shell.execute_reply": "2021-11-07T04:51:34.345806Z" } }, "outputs": [], "source": [ "H = hamiltonian()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Target state in the rotating frame" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The basis states of the $\\Lambda$-system are defined as" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:34.349257Z", "iopub.status.busy": "2021-11-07T04:51:34.348945Z", "iopub.status.idle": "2021-11-07T04:51:34.350615Z", "shell.execute_reply": "2021-11-07T04:51:34.350292Z" } }, "outputs": [], "source": [ "ket1 = qutip.Qobj(np.array([1.0, 0.0, 0.0]))\n", "ket2 = qutip.Qobj(np.array([0.0, 1.0, 0.0]))\n", "ket3 = qutip.Qobj(np.array([0.0, 0.0, 1.0]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We would like to implement a phase-sensitive transition $\\ket{1} \\rightarrow\n", "\\ket{3}$ *in the lab frame*. Since we are defining the dynamics in the RWA,\n", "this means we have to adjust the target state to be in the rotating frame as\n", "well (the initial state at $t=0$ is not affected by the RWA).\n", "\n", "As defined earlier, the states in the rotating frame are obtained from the\n", "states in the lab frame by the transformation $\\ket{\\Psi_{\\text{rot}}} =\n", "\\Op{U}_0^\\dagger \\ket{\\Psi_{\\text{lab}}}$. In our case, this means that we get\n", "$\\ket{3}$ with and additional phase factor:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:34.352823Z", "iopub.status.busy": "2021-11-07T04:51:34.352508Z", "iopub.status.idle": "2021-11-07T04:51:34.354175Z", "shell.execute_reply": "2021-11-07T04:51:34.353850Z" } }, "outputs": [], "source": [ "def rwa_target_state(ket3, E2=10.0, omega_S=4.5, T=5):\n", " return np.exp(1j * (E2 - omega_S) * T) * ket3" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:34.356193Z", "iopub.status.busy": "2021-11-07T04:51:34.355879Z", "iopub.status.idle": "2021-11-07T04:51:34.357556Z", "shell.execute_reply": "2021-11-07T04:51:34.357237Z" } }, "outputs": [], "source": [ "psi_target = rwa_target_state(ket3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now instantiate the control objective:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:55.816607Z", "start_time": "2019-02-12T04:40:55.813293Z" }, "attributes": { "classes": [], "id": "", "n": "5" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.361289Z", "iopub.status.busy": "2021-11-07T04:51:34.360971Z", "iopub.status.idle": "2021-11-07T04:51:34.363058Z", "shell.execute_reply": "2021-11-07T04:51:34.362736Z" } }, "outputs": [ { "data": { "text/plain": [ "Objective[|Ψ₀(3)⟩ to |Ψ₁(3)⟩ via [H₀[3,3], [H₁[3,3], u₁(t)], [H₂[3,3], u₂(t)], [H₃[3,3], u₃(t)], [H₄[3,3], u₄(t)]]]" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "objective = krotov.Objective(initial_state=ket1, target=psi_target, H=H)\n", "objective" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulate dynamics under the guess field" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We use a time grid with 500 steps between $t=0$ and $T=5$:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:55.809020Z", "start_time": "2019-02-12T04:40:55.802160Z" }, "attributes": { "classes": [], "id": "", "n": "4" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.365197Z", "iopub.status.busy": "2021-11-07T04:51:34.364883Z", "iopub.status.idle": "2021-11-07T04:51:34.366780Z", "shell.execute_reply": "2021-11-07T04:51:34.366446Z" } }, "outputs": [], "source": [ "tlist = np.linspace(0, 5, 500)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Before propagating, we visually verify the guess pulses we defined earlier:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:55.858312Z", "start_time": "2019-02-12T04:40:55.853316Z" }, "attributes": { "classes": [], "id": "", "n": "10" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.369476Z", "iopub.status.busy": "2021-11-07T04:51:34.369160Z", "iopub.status.idle": "2021-11-07T04:51:34.370894Z", "shell.execute_reply": "2021-11-07T04:51:34.370557Z" } }, "outputs": [], "source": [ "def plot_pulse(pulse, tlist, label):\n", " fig, ax = plt.subplots()\n", " if callable(pulse):\n", " pulse = np.array([pulse(t, args=None) for t in tlist])\n", " ax.plot(tlist, pulse)\n", " ax.set_xlabel('time')\n", " ax.set_ylabel('%s pulse amplitude' % label)\n", " plt.show(fig)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:56.293915Z", "start_time": "2019-02-12T04:40:55.860421Z" }, "attributes": { "classes": [], "id": "", "n": "11" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.381214Z", "iopub.status.busy": "2021-11-07T04:51:34.380899Z", "iopub.status.idle": "2021-11-07T04:51:34.563226Z", "shell.execute_reply": "2021-11-07T04:51:34.562923Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_pulse(H[1][1], tlist, 'Ωₚ')\n", "plot_pulse(H[3][1], tlist, 'Ωₛ')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The imaginary parts are zero:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:56.300681Z", "start_time": "2019-02-12T04:40:56.295922Z" }, "attributes": { "classes": [], "id": "", "n": "12" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.565918Z", "iopub.status.busy": "2021-11-07T04:51:34.565638Z", "iopub.status.idle": "2021-11-07T04:51:34.567245Z", "shell.execute_reply": "2021-11-07T04:51:34.566951Z" } }, "outputs": [], "source": [ "assert np.all([H[2][1](t, None) == 0 for t in tlist])\n", "assert np.all([H[4][1](t, None) == 0 for t in tlist])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We introduce projectors $\\op{P}_{i} =\n", "\\ketbra{i}{i}$ for each of the three energy levels, allowing use to plot the population dynamics:" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:55.798666Z", "start_time": "2019-02-12T04:40:55.787265Z" }, "attributes": { "classes": [], "id": "", "n": "3" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.569734Z", "iopub.status.busy": "2021-11-07T04:51:34.569455Z", "iopub.status.idle": "2021-11-07T04:51:34.571112Z", "shell.execute_reply": "2021-11-07T04:51:34.570823Z" } }, "outputs": [], "source": [ "proj1 = qutip.ket2dm(ket1)\n", "proj2 = qutip.ket2dm(ket2)\n", "proj3 = qutip.ket2dm(ket3)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:57.224259Z", "start_time": "2019-02-12T04:40:56.304263Z" }, "attributes": { "classes": [], "id": "", "n": "13" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.927242Z", "iopub.status.busy": "2021-11-07T04:51:34.926954Z", "iopub.status.idle": "2021-11-07T04:51:34.928585Z", "shell.execute_reply": "2021-11-07T04:51:34.928291Z" } }, "outputs": [], "source": [ "guess_dynamics = objective.mesolve(tlist, e_ops=[proj1,proj2,proj3])" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:57.232092Z", "start_time": "2019-02-12T04:40:57.226227Z" }, "attributes": { "classes": [], "id": "", "n": "14" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.931360Z", "iopub.status.busy": "2021-11-07T04:51:34.931078Z", "iopub.status.idle": "2021-11-07T04:51:34.932723Z", "shell.execute_reply": "2021-11-07T04:51:34.932433Z" } }, "outputs": [], "source": [ "def plot_population(result):\n", " fig, ax = plt.subplots()\n", " ax.plot(result.times, result.expect[0], label='1')\n", " ax.plot(result.times, result.expect[1], label='2')\n", " ax.plot(result.times, result.expect[2], label='3')\n", " ax.legend()\n", " ax.set_xlabel('time')\n", " ax.set_ylabel('population')\n", " plt.show(fig)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:40:57.443794Z", "start_time": "2019-02-12T04:40:57.236490Z" }, "attributes": { "classes": [], "id": "", "n": "15" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:34.945709Z", "iopub.status.busy": "2021-11-07T04:51:34.944812Z", "iopub.status.idle": "2021-11-07T04:51:35.023560Z", "shell.execute_reply": "2021-11-07T04:51:35.023264Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEGCAYAAABo25JHAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA19UlEQVR4nO3deXxcZ3no8d8z2ndZ0mixZFmrLa+JbWUhC0mAQJKSBdKEhECTQJuWNkDLLS3t7WXJbWkpy4VLKSVlK2mbELgsDtlIyEZCHC+x41W2ZMmLbO2btW/z3j/OjC3LI2kknTNnNPN8Px99RnPmnPc8ozjzzHmf97yvGGNQSikVuzxuB6CUUspdmgiUUirGaSJQSqkYp4lAKaVinCYCpZSKcfFuBzBfeXl5pqyszO0wlFJqSdm1a1enMcYb7LUllwjKysrYuXOn22EopdSSIiLHZ3pNu4aUUirGaSJQSqkYp4lAKaVinCYCpZSKcZoIlFIqxjmWCETk+yLSLiL7Z3hdROT/ikiDiOwVkc1OxaKUUmpmTl4R/BC4YZbXbwSq/T8PAN92MBallFIzcOw+AmPMKyJSNssutwI/MtY82NtEJFtEiowxLU7Es+NYN7890nHhCyJB9w+2dYZdkSB7z7xvaO3KTA24HVfQPWduN/i+QeKacd9gMYTW5nyOn2nnYPsmxAlpSfHWT2I8aUlx5KQlkp+RTJxnHn8ItSRMTPpo6Ruh9cwI/SPj9I9M0D8yweiED5/P4DOGSWMwBnw+a1p/EevfpIj1/4z1aG33+P+dicjZbQJ4PP7/u6Zs95y3j7B55TKq8tNtf49u3lBWDJyc8rzZv+2CRCAiD2BdNVBaWrqgk715vIdvvthw3jZdikHZKc4j5GcksTw7hVUF6awtyuTiFctYtzwTjyaIJcHnM+w+2cP2ph52n+jhYMsZWvpGmPRFxofF39+2PuoSQciMMQ8DDwPU1tYu6L/IH19TyR9fU7mYGGbYHmTbPNoItu9MCcoE2Xs+yWyx7S72fc0YQ4TGFez8AGMTPobGJhkYnWBo1HrsGhylpXeElr4RmnuGeHp/K49ut77n5KYl8vZVXm69eDlXV3v1qiECHesc5D9eP8av9rbQ0T8KQHleGptKl3FbTiorclIoykohMyWBjOR4MpLiSYqPw+OxvgB4xPoJXFQaY/37MWba71j/Ln0GmGG7sV7wbwOfMWdfz05NdOT9u5kITgErpjwv8W+LSPPpepilFVtiUZHPGMPpvhF2NHXz8pEOXjrczs93n6I4O4WPXVvJHbUlJMXHuR1mzDvVO8yXnq7jib2nifcI71pTwI0biriqKo+cNGc+dCORm4lgK/CgiDwGXAb0OVUfUCrcRITi7BSKNxVz26ZixiZ8PH+oje/+tpG/+8V+vvPKUf7xfRu5qjrP7VAXxhhoeQsmx6F4M3iWVlIzxvD9147xz8/UAfAn11Ry/xVl5GcmuxyZO8SpNYtF5FHgWiAPaAM+ByQAGGP+Tayv2P+CNbJoCLjfGDPnbHK1tbVGJ51TS5UxhpePdPCFJw7S1DnIPZeV8rmb15EYv4Ru6RkdgJ/eD/W/tp4X18IHH4e0XHfjClH/yDh/8eO3eP5QG++syeeh29ZTnJ3idliOE5FdxpjaoK8ttcXrNRGoaDAyPsnXnjvCw680UrtyGf/24S3kpSe5HdbcjIGf3AuHnoB3fQGSM+Hpv4blm+C+JyP+yqBncIx7f7Cdg6fP8Lc3reH+K8vmNUJvKZstESyhryFKRY/khDj+9qY1fPPuTew/3cddD2+jc2DU7bDmdvhpOPhLeMffwZWfgC33wc3fgBOvw5s/cju6WfUNjXPXw9uoa+3nOx/ewkeuKo+ZJDAXTQRKuejmi5bzw/svpblniA999w16BsfcDmlmxsBLX4TcKrjiE+e2b/yA1T306tesmkEEGp/08af/vYvGzgG+f+8lvHNNgdshRRRNBEq57PKKXL537yU0dg7y8Ud3MzHpczuk4I6/Bq374IqPQ1zCue0icM1fQe8J2Ptj9+KbxUNPHOS1hi6++L4NS7dA7yBNBEpFgCur8vj729bzakMnX/n1EbfDCW7btyElx7oCmK763eBdA7t+GPaw5vL8wTYe2XacP7q6nDtqV8x9QAzSRKBUhLizdgX3XFbKv718lJeDTYfipqFuOPIMbLoHEoKMsBGBi+6C5h3Q3Rj++GbQMzjGZ362j5rCDD79nhq3w4lYmgiUiiCfvXktVfnp/O3P9jE4OuF2OOfUPQm+CVj3/pn32XAHILD3J2ELay4P/eogfcNjfO3Oi5fWEN0w07+MUhEkKT6OL92+gdN9w3z52cNuh3POwV9Adqk1THQmWcVQdhUc+FnYwprNnpO9/Hz3KR54ewVrl2e6HU5E00SgVITZsjKHP7h8Jf/x+jHqWs+4HQ6M9EHjS7D2trnnVFl9I3TUWYVjFxlj+IcnD5KXnsjHrq1yNZalQBOBUhHoL65fRUZSPF+JhKuCplesbqHVN869b9X11mP9c87GNIdnD7Sx41gPf3H9KtKTlsTcmq7SRKBUBMpOTeRPrq3k+UPt7DjW7W4wR1+AxHQouWTuffOqIXslNDzvfFwzMMbwzRfqqchL4wM6SigkmgiUilD3X1FOfkYSX37G5auCoy9C2dXn3zswExGovh4aX4YJd26Oe62hiwOnz/DH11QQH6cfcaHQv5JSESolMY4/uaaS7ce6efNEjztBdDdBTxNUXhf6MeXXwPggtOxxLKzZfOeVo3gzkrhtU7Er51+KNBEoFcHuvGQFGcnxfO/VJncCOPaq9Vh+TejHrLzCejz+O/vjmcOB0338tr6Tj1xZrus9zIMmAqUiWHpSPB+8rJSn97Vwsnso/AE0b4fkbMhbFfoxaXmQt9qVRPCf206QnODhg5ctbEnbWKWJQKkId98VZXhE+I/fHQv/yU9ut4rEnnl+VKy8Ak5sA9+kM3EFMTQ2wRNvneamDUVkpYRQz1BnaSJQKsIVZaXwnvWF/PTNZkYnwvfBynCvdU/Aisvmf+zKK2G0D9oO2B7WTJ7a18rA6AR3XaJXA/OliUCpJeCOLSX0Do3zwqH28J202b8A1IoQho1OV+Jf/+TULvvimcPjO05SkZfGJWXLwnbOaKGJQKkl4OpqLwWZSfxkV3P4Ttq8HcQDxVvmf+yyMkhZBqfftD2sYI51DrL9WDd31K7QxWYWQBOBUktAnEd4/+YSXj7SQfuZkfCc9OQbULAOkjLmf6yINS/R6d32xxXEk/taALht0/KwnC/aaCJQaon4/S0lTPoMv9hzyvmT+SaheReUXLrwNpZvhraDMD5sX1wzeHJvC1tWLqMoK/oXoXeCJgKllohKbzobirN4cl+r8yfrPAJj/aFNKzGT4s1gJq1VzRx0rHOQgy1nuHF9oaPniWaaCJRaQm5YX8hbJ3s53evwt+yWvdZj0UULbyMwZfUpZ+sET+23uoVu3FDk6HmimSYCpZaQwLfeZ/Y7fFXQuhfik+d3I9l0mcshvdDxOsHT+1q5aEU2xdnaLbRQmgiUWkIqvOmsLshwPhG0vAX5ayFukVM4L9/k6Mih073D7DvVp91Ci6SJQKkl5ob1hew43k17v0Ojh4yx+vWLNi6+reLN0FkPI84ssBNY2/kdNfmOtB8rNBEotcTcsL4QY+A3Tt1c1ncSRnqh0IZEULgBMNB+aPFtBfHS4XaWZyVTnZ/uSPuxQhOBUktMTWEGRVnJvHy4w5kTBArFdiSCgnXWY7v9U02MTfh4raGLa1bn601ki6SJQKklRkS4ZpWX1xo6GZ/02X+C1r3WHcWBD/HFyFoBSZmOzDm063gPA6MTXLvaa3vbsUYTgVJL0DWrvPSPTrDnZK/9jbfshdxqSExdfFsiVkJxIBG8dKSdhDjhyqo829uONZoIlFqCrqjKI84jznQP2VUoDggkAmPsaxN4+XAHtStzdHF6G2giUGoJykpJYHNp9tlRM7YZ7oUzzfZ0CwUUrIPRM1YR2ibdg2PUtfZzVbVeDdjB0UQgIjeIyGERaRCRzwR5vVREXhSR3SKyV0RucjIepaLJNau87DvVR+fAqH2Ndhy2Hr1r7Gsz359U2g7a1uT2pi4ALq/Isa3NWOZYIhCROOBbwI3AWuBuEVk7bbe/Ax43xmwC7gL+1al4lIo2V1VbRdJtjV32Ndru/7DOr7GvzXx/Umnbb1uT2xq7SUmIY0Nxtm1txjInrwguBRqMMY3GmDHgMeDWafsYINP/exZw2sF4lIoq65dnkpYYxxuN3fY12lEHCamQZeMqX8mZkL3S1oLxtsYuasuWkRivvdt2cPKvWAxM7RRs9m+b6vPAh0SkGXgK+HiwhkTkARHZKSI7OzocGjut1BITH+dhS1kObzTZeUVwCLyr579G8VwK1tuWCHr89YHLyrVbyC5up9O7gR8aY0qAm4BHROSCmIwxDxtjao0xtV6vjhlWKuCy8hyOtA3QPThmT4MddfbWBwLya6D7KEwsPs43mqwroMsrchfdlrI4mQhOASumPC/xb5vqo8DjAMaY14FkQIcBKBWiQLF0ux1XBUPdMNBmb30gIG81+Cagu3HRTW1r7CI5wcPGkuzFx6UAZxPBDqBaRMpFJBGrGLx12j4ngHcCiMgarESgfT9KhWhDcTbJCR622VEn6KizHvOnj+mwgXe19dh5eNFN7TzezaYVWh+wk2N/SWPMBPAg8CxwCGt00AEReUhEbvHv9j+APxKRt4BHgfuMsfmuE6WiWGK8hy0rl9kzcigwMZzXiSuCauux48iimhkem+RQSz9bVi6zISgV4OgtecaYp7CKwFO3fXbK7weBK52MQalod1l5Lv/n+SP0DY+TlZKw8IY66iAxA7JK7AsuIDHNGom0yCuCvc29TPoMm0qz7YlLAe4Xi5VSi7Rl5TKMgbcWO+9QYMSQUzN5eled635aoN3+93jxiuzFx6PO0kSg1BK3sSQLEdh9ondxDXXUOVMoDshbDZ0N4Fv4jKlvHu+hLDeV3PQkGwNTmgiUWuIykhNYlZ/B7pM9C29ksAsGO5wZOhrgXQ0Tw9B3YkGHG2PYfbKXTaVaH7CbJgKlosCm0mx2n+hlwWMtOvyFYievCAIjhxZYMD7VO0xH/yibtT5gO00ESkWBTaXZ9A2P09Q5uLAGAn33TowYCshbZT0usGD8pr/rS68I7KeJQKkoEPhwXHCdoLMBEtIgc/osMDZKzYE074ILxntO9JKc4GF1YYbNgSlNBEpFgSpvOhlJ8bx5YoF1gq56yK10bsRQQN7qBXcN7T/Vx9qiTBLi9GPLbvoXVSoKeDzCRSuyF3FFUH/upi8neVdbXUPzrGX4fIYDp/tYX5zlUGCxTROBUlFiY0kWR9r6GRmfnN+B4yPQe8Jap9hp3tUw0gcD7fM6rKlrkMGxSU0EDtFEoFSU2FCcxYTPcLi1f34HdjcCJjxXBIGC8TzrBPtP9QHWe1T200SgVJQIfFve5//QDFlXvfWYW2VzREEEEkHgnCHa19xHUryH6vx0B4JSmgiUihIly1LISkk4++05ZJ1hTASZy60V0LqOzuuwfaf6WFOUSbwWih2hf1WlooSIsKE4awFXBA2QsRySwvBtW8QandTVEPIhVqH4jHYLOUgTgVJRZH2xVTAenZhHwbizHvLCcDUQkFs1r0RwvHuIgdEJ1hdnzr2zWhBNBEpFkfXFmYxPGo60DoR2gDH+ewjCUCgOyK2CnuMhL1sZ6OrSEUPO0USgVBTZMN+C8WCnNZwzHCOGAnKrwUxCz7GQdj/UcoZ4j1Cdr3cUO0UTgVJRpDQnlYzk+NATwdkRQ2G+IoCQu4cOt/ZT6U3XpSkdpH9ZpaKIiLBueSaHWs6EdkBgxFBYawQV1mOIiaCutZ+aIr0acJImAqWiTE1hJodb+/H5QpjGoase4pIga4XzgQWkLIPUvJASQd/wOKd6h6kp1EKxkzQRKBVl1hRlMDw+yYnuobl37myAnArwxDkf2FR51SElgiNt1l3SNTrjqKM0ESgVZVb7vz3XhTLVRFeYh44GhHgvQZ2/i0u7hpyliUCpKLOqIB0RqGudo04wOW6N3AlnoTggtwoG2mBk9hgPtfaTlZJAYWZymAKLTZoIlIoyqYnxlOWmUdcyxxVBzzHwTYR36GhAYORQ9+xTTdS1nKGmMANxep2EGKeJQKkoVFOYMfcVQacLQ0cDAuecZc4hn89wpG1A6wNhoIlAqSi0ujCD491DDI1NzLxTlwtDRwNyygE5l4yCONU7zMDoBDVFOmLIaZoIlIpCNYWZGANH2maZaqKz3hrGmeLCYvDxSZBdOmvBOHAvhF4ROE8TgVJRaI1/lE3dbDeWdTW4Ux8ImGPyucACO6sKNBE4TROBUlFoxbJUUhPjZh9C2lkfnjUIZpJbZdUIZli/uK61n5W5qaQlxYc5sNijiUCpKOTxCKtnKxgP98BQp7tXBHnVMNZvDSMN4nBbP6v1aiAsQk61IhIHFEw9xhhzwomglFKLV1OYwdP7WzHGXDj8MjBax40RQwG5lf5YGiCj8LyXxiZ8HOsc5D3rClwIbGbj4+M0NzczMjLidigzSk5OpqSkhISEhJCPCSkRiMjHgc8BbYDPv9kAG+c47gbgG0Ac8F1jzD8F2edO4PP+9t4yxnww1OCVUjOrKczk0e0naTszSmHWtBuyzk4253KNAKxEUHbVeS8d7xpkwmciburp5uZmMjIyKCsri8h7G4wxdHV10dzcTHl5ecjHhXpF8ElgtTGmK9SG/VcQ3wKuB5qBHSKy1RhzcMo+1cDfAFcaY3pEJD/kyJVSs6ousJaerG/vvzARdNWDJx6WlYU/sIDMEohPDlowbmi3RjtVRdhi9SMjIxGbBMCafTY3N5eOjo55HRdqjeAkMM+FULkUaDDGNBpjxoDHgFun7fNHwLeMMT0Axpj2eZ5DKTWDwLfp+mBDSDvrrSQQF3r3ge08HsipDHpTWX37ACJQ6Y2sRABEbBIIWEh8oV4RNAIviciTwGhgozHma7McU4yVQAKagcum7bMKQERew+o++rwx5pnpDYnIA8ADAKWlpSGGrFRsy0tPJDs1gYaOIImgq8Hd+kBAbiW0H7pgc337ACXLUkhJDPOsqDEq1CuCE8BzQCKQMeVnseKBauBa4G7g30Uke/pOxpiHjTG1xphar9drw2mVin4iQpU3nYbpVwS+SetbuBt3FE+XWwU9TTB5/h3QDe0DVEXg1UAk+MhHPkJ+fj7r16+3rc2QEoEx5gvGmC8AXwW+OuX5bE4BU1e7KPFvm6oZ2GqMGTfGNAFHsBKDUsoG1QXpHGnvx0wdq993EiZHI+SKoMqa+K73+NlNkz7D0Y4BqnXoaFD33XcfzzxzQcfJooSUCERkvYjsBg4AB0Rkl4ism+OwHUC1iJSLSCJwF7B12j6/wLoaQETysLqKGkMPXyk1m6r8DHqHxukaHDu3sdNfnHVzxFBA3oWTzzX3DDE24dMrghm8/e1vJycnx9Y2Q60RPAx8yhjzIoCIXAv8O3DFTAcYYyZE5EHgWaz+/+8bYw6IyEPATmPMVv9r7xaRg8Ak8On5jExSSs2u2j/qpr5tgLz0JGujGwvWz+S8hezfDZwrblcVRHYi+MITBzh4OsS1oUO0dnkmn7t5ru/Y9gs1EaQFkgCAMeYlEUmb6yBjzFPAU9O2fXbK7wb4lP9HKWWzwBDSho4B3laZa23srIfkLEjLczEyv9Qca9K7rnOzkNZH6NDRaBbyqCER+V/AI/7nH0K7cJSKeIWZyaQnxdPQNmXOoa5662ogUoZB5ladNx11Q/sABZlJZCa7OLQ1BG58c3dKqKOGPgJ4gZ/5f7z+bUqpCCYiVOann/2WDVg1gkioDwTkVp9XI2ho74+4O4qjXaijhnqMMZ8wxmz2/3wycBOYUiqyVU9NBKMD0H/a3VlHp8ursmIaHcAYYw0d1W6hGd1999287W1v4/Dhw5SUlPC9731v0W3O2jUkIl83xvy5iDyBNRfQeYwxtyw6AqWUo6rz0/nprmb6hsbJ6o2gEUMBUwrGLamrGRyb1EQwi0cffdT2NueqEQRqAl+x/cxKqbA4VzDuZ8sZfyKIhBFDAWfXL26gYaAY0EJxuM3aNWSM2eX/9WJjzMtTf4CLHY9OKbVoVd4pcw511gMCORXuBjVVTgUg0NVAo386jArvnIMSlY1CLRbfG2TbfTbGoZRySMmyFJITPNb6xV311lrBCclzHxguCcmQvQI662nqHCQjKR5v4J4HFRZz1QjuBj4IlIvI1LuCM4BuJwNTStnD4xHKctNo7ByA0frIqg8E5FZDVz2N8YNUeNMifobPaDNXjeB3QAuQhzXPUEA/sNepoJRS9qr0prO/uQcmGmDllW6Hc6G8atj9Bo0ywCXl9k6foOY2ayIwxhwHjgNvC084SiknVHjT2LN/PyQNRcaso9PlVsHYAOMjLVR4dar5cAt10rnLRWSHiAyIyJiITIqIvZNsKKUcU+FNo0xOW08iacRQgH8IaaXntBaKZ3Hy5Emuu+461q5dy7p16/jGN75hS7uhTjHxL1izh/4EqAX+AP+iMkqpyFfpTadCWqwnkVgj8MdULq2U52kimEl8fDxf/epX2bx5M/39/WzZsoXrr7+etWvXLqrdUEcNYYxpAOKMMZPGmB8ANyzqzEqpsCnPS6NCWhiLS4WMIrfDuVDGcsY9yVTIaU0EsygqKmLz5s0AZGRksGbNGk6dmr7My/yFekUw5F9TYI+I/DNWATnkJKKUcldGcgJrElppSyhhRSSOyPF4aE8oYS1tpCaG+rHksqc/A6377G2zcAPc+E8h7Xrs2DF2797NZZdNXwF4/kL9MP8w1poCDwKDWCuP3b7osyulwqbS00KTicCrAb8mis51X6lZDQwMcPvtt/P1r3+dzMzMRbcXUur1jx4CGAbmWqJSKRVpxofJnexg/+S1XG1MxI3TN8awfzSfK3gNJsYgPtHtkOYW4jd3u42Pj3P77bdzzz338P73v9+WNue6oWwfQSabCzDGbLQlCqWUs7qO4sFwaCyf7sExciPszt2uwTHqxgrwJPqsxey9q90OKSIZY/joRz/KmjVr+NSn7FvPa64rgvfadiallHv8K4A1muU0dg5GXCJo7BikMdBt1VmviWAGr732Go888ggbNmzg4osvBuCLX/wiN91006LaDeWGMqXUUudfsL7RFNLYMcAlZZF1925jx8C5+kVXg7vBRLCrrroKa4Vfe4VUIxCRfs51ESUCCcCgMWbxVQqllPO66jGZxUyOp9LYMeh2NBdo6hxkND4dk5aPTFm/WIVHqMXis+vGiVVluhW43KmglFI266xHcqtYSSpHIzARHO0YpDw3DcmuPnv1osJn3vcCGMsvgPfYH45SynbGWN0tedVUeP2zkEaYxs4B60ay3Kqz9QwVPqF2DU0do+TBmmZixJGIlFL26m+F0TPgraEiLp3fHGpnfNJHQlxk3BM6MenjRNcQN6wrhIwqGOqCoW5Ijaw6RjQL9Ra+m6f8PgEcw+oeUkpFuo466zFvFRWeNCZ8hpPdQ1R4I2M5yJM9w0z4jBVPemDZyqOaCMIo1BrB/U4HopRySMdh69FbQ0WcdaNWY8dgxCSCwPKU5XlpkO6fy7LzMKy4xMWoYkuo01BXiMgTItIhIu0i8ksRiaBFT5VSM+qog+RsSM+n0j/FcyTVCZo6reJ1pTcNlpVBXNK55KXOMzIywqWXXspFF13EunXr+NznPmdLu6F2Ev438DhQBCzHmo76UVsiUEo5q+MweGtAhOzURHLSEiNqCOnRjkFy0hLJTk0ET5w1JbUmgqCSkpJ44YUXeOutt9izZw/PPPMM27ZtW3S7oSaCVGPMI8aYCf/PfwIRtPq1UmpGnYfBe275kIq8tIhKBI0dA1RMnXo6b9W5uoY6j4iQnm516Y2PjzM+Pm7LvFGhFoufFpHPAI9h3Vj2AeApEckBMMboQvZKRaLBTmsUjrfm7KYKbxov1LW7GNT5mjoHuWaV99wGbw0c+DmMDUFiqnuBzeFL279EXbe9Casmp4a/vvSvZ91ncnKSLVu20NDQwJ/92Z+FdRrqO4E/Bl4EXgI+hrVi2S5g56KjUEo5I/DNesrcPRXedDoHxugbHncpqHP6R8Zp7x89v3DtXQ0YvZ9gBnFxcezZs4fm5ma2b9/O/v37F91mqKOGyhd9JqVU+J1NBFOuCPzdMI0dA2wqXeZGVGcd6xwCOH9VskDS6jgCRRe5EFVo5vrm7rTs7Gyuu+46nnnmGdavX7+otkIdNZQgIp8QkZ/6fx4UkYQQjrtBRA6LSIO/a2mm/W4XESMitfMJXik1h47DkJgOmcVnNwW+fUdCnSAweum8BetzKkHitE4QREdHB729vQAMDw/z3HPPUVNTM/tBIQi1RvBtrInm/tX//MP+bX840wEiEgd8C7geaAZ2iMhWY8zBaftlAJ8E3phf6EqpOXUctoqvUwqKpTmpxHkkIoaQNnUOImLFdFZ8IuRWaiIIoqWlhXvvvZfJyUl8Ph933nkn733v4lcLCDURXGKMmXqN9oKIvDXHMZcCDcaYRgAReQzrbuSD0/b738CXgE+HGItSKlQdh6HyHedtSoz3UJoTGbOQNnUOUrIsheSEuPNfyFsFnUfcCSqCbdy4kd27d9vebqjF4kkRqQw88d9MNjnHMcXAySnPm/3bzhKRzcAKY8yTszUkIg+IyE4R2dnR0RFiyErFuOEeGGgNushLpAwhbewYpDwvyB3O3hprmomJsfAHFYNCTQSfBl4UkZdE5CXgBeB/LObEIuIBvhZKO8aYh40xtcaYWq/XO9fuSimwiq1wXqE4oMKbRlPXID6f/YuchMoYQ1Pn4Pn3EAR4V4OZhO7G8AcWg0JNBK8B3wF8QLf/99fnOOYUsGLK8xL/toAMYD3wkogcw1rfYKsWjJWyydkRQ6sueKnCm87YhI9TvcNhDuqcjoFRBkYnzh8xFHB25FDk1QmcWCHMTguJL9RE8COgHKs//5tABfDIHMfsAKpFpFxEErHuO9g6Jdg+Y0yeMabMGFMGbANuMcbofQlK2aHtACSkQXbZBS+dHULa6V73UJO/a+q8EUMBudWARNxUE8nJyXR1dUVsMjDG0NXVRXLy/CZ+CLVYvN4Ys3bK8xdFZHrRd3pAEyLyIPAsEAd83xhzQEQeAnYaY7bOdrxSapHaDkDBWvBc+H3v3BDSgfPv6g2jQBIKekWQmArZpRF3RVBSUkJzczORXKtMTk6mpKRkXseEmgjeFJHLjTHbAETkMkK4o9gY8xTw1LRtn51h32tDjEUpNRdjoP0ArLkl6Mt56YlkJMe7WjBu6hwkMd7D8qyU4Dvkr4X2Q+ENag4JCQmUl0ff/bWhJoItwO9E5IT/eSlwWET2Ya1eudGR6JRSC9PfYo0aKgh+x6mIUOFNd/Vegkb/OsUezwyTphWsg/pfw8QoxCeFN7gYE2oiuMHRKJRS9mo7YD0WrJtxl8q8NF5v7ApTQBdq6hygOj9j5h0K1lojhzqPQOGG8AUWg0IqFhtjjs/243SQSql5avNPRFawdsZdyvPSaOkbYWhsIkxBnTMx6eNE91DwQnFA4GomkNSUYyJj9WqllL3aDlrzC6XMPKmcm3MONfcMMz5pgheKA3IqrdXK2hY/u6aanSYCpaJR24FZu4Xg3LBNN4aQBpannPWKIC4e8muspKYcpYlAqWgzMWatSjZHIijPS0Pk3OLx4XRu6GiQ6SWmyl+nXUNhoIlAqWjTeQR8EzOOGApITohjeVaKK11DTZ0DZKcmkJOWOPuOBeus+ZIGO8MTWIzSRKBUtGn3d6Xkz1woDqjwprkyhNSabG6WbqGAwFWNXhU4ShOBUtGmbT94EiCves5dK73pNHUMhn3KhKbOeSaCdq0TOEkTgVLRpu2ANeNo3JyLCFLhTWNwbJK2M6NhCMwyNDZBS99I8FlHp0vPhzSvjhxymCYCpaJN6745C8UBFXnn5hwKl8A6xectWD+bAi0YO00TgVLR5EwLDLTB8otD2j0wfPNoGIeQBmoSIXUNgVX0bq8D31xrYamF0kSgVDRp2WM9Fl0c0u6FmcmkJMSdnRI6HALnKssNNRGsg4lha8Uy5QhNBEpFk5a3AAl5bh6PRyjPC+/IoabOQZZnJZOSGDf3zgCF/jktW+ZaJl0tlCYCpaLJ6T3Wwu9JIfa/4x9CGsYrgsbOQcpnu6N4Om8NxCefu9pRttNEoFQ0adkDRRfN65AKbzrNPUOMTjjfB2+MobFj4GyROiRx8Vb3kF4ROEYTgVLRor/NWocgxEJxQKU3DZ+B411DzsQ1RffgGGdGZlineDZFF1uJwOdzJK5Yp4lAqWgR+MYcYqE4IJxDSI/6u6Dm1TUEVnIbPQM9TfYHpTQRKBU1zo4Ymt+CgYEP5aNhqBM0tFvJpjp/Hl1DcC65nd5tb0AK0ESgVPQ4vRtyqyFpllW/gkhPiqcgMyksBeOG9gFS/JPdzUv+GohL1IKxQzQRKBUNjIHmHVByyYIOr8gLz/rFDR0DVObPsk7xTOISrILx6T2OxBXrNBEoFQ16j8NgB5TULujwwBBSpyefa2jrpyrUqSWmK7oYWvZqwdgBmgiUigbNO63HhV4ReNPpGx6ne3DMxqDONzg6wem+EaoL5td1dVbxFhjtg64GewNTmgiUigrNOyAhNaQ1CIKp8hdv69ud6x466h+VVLnQK4IVl1qPzdttikgFaCJQKho074Dlm62brxZgVYH14Xykrd/OqM4TGDFUNd8RQwG51ZCcZb1XZStNBEotdeMjVt/5AusDYE0+l5EU73giiPcIK3NTF9aAxwPFtee6wZRtNBEotdS17gXf+ILrAwAiQnVBOkfanOsaqm8foCwvjYS4RXzslFxirVY26lzCikWaCJRa6k76+8wXcUUAsLowg/q2fsdGDh1tH5j/jWTTrbgEjA9OvWlPUArQRKDU0nf8NVhWDhmFi2qmOj+DnqFxOgfsHzk0NuHjePfQwusDAcVbrEctGNtKE4FSS5nPB8d/B2VXLrqpVf5hnfUO1AmOdQ0y6TOLTwQpy6xptk9qwdhOjiYCEblBRA6LSIOIfCbI658SkYMisldEfiMiK52MR6mo034ARnqh7OpFN+XkyKHAiKEFDx2dasVlcPINvbHMRo4lAhGJA74F3AisBe4WkemDnHcDtcaYjcBPgX92Kh6lotKx16zHlYu/IvBmJJGVksARB+4lqG8bQMSmRFB2tZX82vYvvi0FOHtFcCnQYIxpNMaMAY8Bt07dwRjzojEmMAn6NqDEwXiUij7HX4XsUsheseimRIRVBemOdA3Vt/dTsiwl9OUpZxPoBjv26uLbUoCziaAYODnlebN/20w+Cjwd7AUReUBEdorIzo6ODhtDVGoJM8aqD6y8yrYmqwsyONI2YPvIobrWfmoKM+1pLKsElpVZRXJli4goFovIh4Ba4MvBXjfGPGyMqTXG1Hq93vAGp1Sk6qiDoS5bCsUBq/KtOYc6+kdta3NkfJLGjgHWFC5wjqFgyq6yrgi0TmALJxPBKWDq9WqJf9t5RORdwP8EbjHG2PevT6lo1/iS9WhDoTggMHLIzhvLGtoH8BmoKbLpigDO1QnaD9jXZgxzMhHsAKpFpFxEEoG7gK1TdxCRTcB3sJJAu4OxKBV9Gn5jzb+zzL7BdtVnE4F9dYK6VqutGjuvCALF8WPaPWQHxxKBMWYCeBB4FjgEPG6MOSAiD4nILf7dvgykAz8RkT0isnWG5pRSU40PW10jVe+0tdm89ERy0xKpaz1jW5t1LWdITvCwMnee6xTPJnuFVScIXBWpRVnYVIUhMsY8BTw1bdtnp/z+LifPr1TUOv47mBiGKnv/FxIR1i7P5MBpGxNBaz+rCjKIm++qZHOpfCe89RhMjEJ8kr1tx5iIKBYrpeap4TcQl2TL/QPTrV2eSX3bAGMT9hRi61rP2NstFFB9PYwPwonX7W87xmgiUGopanjeGi2UuMApnWextiiTsUnf2buBF6Ojf5TOgTH7ho5OVf52a0H7+ufsbzvGaCJQaqnpOQ6dh62uEQesW54FwIHTfYtuK1BrqCly4IogMQ1WXmElRbUomgiUWmoOPWE91tzkSPPleWmkJMTZUic41OJPBE5cEQBUXW/dT9F7cu591Yw0ESi11BzaCgUbIKfCkebjPMKaogwO2pAI9jb3UZydQk5aog2RBVF9vfVY/2tn2o8RmgiUWkrOtFgzb669Ze59F2Hd8iwOtpzB51vcVBN7m/u4aEWWTVEFkbfKSoiBqyS1IJoIlFpK6n5lPa652dHTrFueycDoBCd7hubeeQY9g2Oc6B5iQ3G2fYFNJwJrb4OmV2Co27nzRDlNBEotJYe2WncTe2scPc3a5Vaf/v5TC+8e2nfKKjZfVOLgFQHA2lvBTJ5LkmreNBEotVScabHuJl57q/VN2EE1hZkkxnvYc7JnwW3sbe4FYL3TiaDoIusu44O/dPY8UUwTgVJLxd4fWwu3X3S346dKjPewoTiLXccXkwj6qMhLIzM5wcbIghCxkmPjSzC88HhjmSYCpZYCY2DPf8GKyyGvKiyn3LJyGftPnWF0YnJBx+9t7mOj01cDAWtvA98EHPhFeM4XZTQRKLUUnNoFnUfg4g+G7ZSbS7MZm/QtqE7QfmaE1jMjbCzJtj+wYJZvgvy1sPuR8JwvymgiUGop2P2fEJ8C694XtlNuLl1mnfrE/Ltbdp/sBXB26OhUIrDpw1bCbDsYnnNGEU0ESkW64V7Y+7iVBJIdukM3iPzMZEqWpSyoTrCjqZukeA/ri8OUCAA2fgA8CXpVsACaCJSKdLt+aM2yefnHwn7qLSuX8eaJnnmvYbz9WDebSrNJirdhsfpQpeVCze/BW4/C+Ej4zhsFNBEoFckmx+GN71gzbRZtDPvpN5cuo+3MKM09wyEfMzA6wf5TfVxanutgZDOovd8aObTv8fCfewnTRKBUJDvwC+g/DW/7uCunv7Q8B4DXG7tCPmbX8R58Bi7zHxtW5ddA4UZ47f/qwvbzoIlAqUg1OQGvfBnyVtu+ElmoagozyEtP4tX6zpCP+d3RTuI9wqbSbOcCm4kIXPlJ6KqHI0+H//xLlCYCpSLV3sesdQfe8Xfgced/VRHh6uo8Xm3oDHkCupcPd3BJWQ6piY6uhDuztbdBdim8+n+s+y/UnDQRKBWJxkfgxX+E4i2OTzA3l6ur8+geHONgy9z3E7T0DVPX2s+1q71hiGwGcfFw5Z9D8w44rFcFodBEoFQk2vavcKYZ3vV5x+cVmstV1XkAvFjXPue+Lx/uAOC6mnxHY5rT5j+wpqh+7n9ZBXc1K00ESkWarqPw8pesK4Hyt7sdDfkZyWxZuYyn9rfOue9v6tpZnpVMdX56GCKbRVwCXP8QdDXAzh+4G8sSoIlAqUji88HWT0B8Etz0FbejOeumDUUcajlDY8fMC9r3Do3x8uEObtxQhLh8FQPAqhug7Gp44e+h75Tb0UQ0TQRKRZLXvwnHX4V3/z1kFLodzVk3bbBieXJvy4z7PLWvlbFJH+/bVByusGYnAjd/A3zjsPXjWjiehSYCpSJF40vw/OetUS+bPuxyMOcrykrh0vIcfrzzJJMzjB76xe5TVOWns255+KbBmFNupdVFdPQ3sOO7bkcTsTQRKBUJOo7AT+63Cpy3fsv1AnEw919RRnPPMM8dbLvgtT0ne9l+rJs7tpRERrfQVLUfharr4ZnPQNNv3Y4mImkiUMptXUfhP24GTzzc9d+Q5HKhdQbvXldIybIU/v23jRfMPfQvL9STnZrAPZevdCm6WXg88Pvfg5xK+PGHrKSrzqOJQCk3ndoFP/w9qx/73q1WV0aEivMIH7u2kl3He/jlntNnt79+tIvnD7XzkSvLSU9y6SayuSRnwQd/bCXbH/4etO53O6KIoolAKTcYA7v/C35wkzV18r2/gvw1bkc1p7suKWVTaTb/8+f7eOlwO7uO9/DxR3dTlpvKH15d7nZ4s8sph/ufPpcMjr7gdkQRQxOBUuHW3QT/dQf88k+h5BJ44EUoWOt2VCGJ8wjfvmcLBVnJ3PeDHdz+7d/hEfjuvbXuTSkxH95V8JGnrRFZj7zfKs6Phz6zarSS+c4z7rba2lqzc+dOt8NQav7aD8Hr37Lmy49Lgnd9Di75Q/CEcc5+mwyPTfLUvhbGJn3ctL6IrFSHF6i329gQPP1X1iI2WaXwzs9aC//ELYFktkAisssYUxv0NScTgYjcAHwDiAO+a4z5p2mvJwE/ArYAXcAHjDHHZmtTE4FaMnw+aN0LDc/D4aesekBcEmy5D676C8gscjtC1fQKPPO30LYPMoutYbtrb7HWP4600U+L5EoiEJE44AhwPdAM7ADuNsYcnLLPnwIbjTF/IiJ3Ae8zxnxgtnY1EaiI4JuEsQEYG4TRARjsgDOnrJ/ek9B+0CpIjvVb+xddBBvuhIvugrQ8d2NX5/NNwpFn4Y1/sxIDBtILoaQWll8My8oheyVkFVtF54TUJZkk3EoEbwM+b4x5j//53wAYY/5xyj7P+vd5XUTigVbAa2YJaqGJ4OfPf5ofnnh23seds7S60ILGO8+3sLh3HAl/r0XGMOPhJuhdqme3eDzWN//4JIhPtj44lmD3T0zyTVjJfXwYJkaCT1gngHgAj/U7oSYFE+TX2f6NXrj/xypu5aZ3/GPw3ecwWyJwskOsGDg55XkzcNlM+xhjJkSkD8gFzlsFQ0QeAB4AKC0tXVAw2WkFVCUGW0jbjswepI15NbvYGGY4ftFvTebRRDT8DULcWcQa6eOJs0ageBIgPhESUpCEVGubCsl8/oW54mxiGLJ+fBNWcpgcB+Pj3JcC/yf11C8IZ68aJMg2zr12QTKRGY9flrNqkW8ouCXxL9YY8zDwMFhXBAtp47q3/SXXve0vbY1LKaWigZPDR08BK6Y8L/FvC7qPv2soC6torJRSKkycTAQ7gGoRKReRROAuYOu0fbYC9/p//33ghdnqA0oppeznWNeQv8//QeBZrOGj3zfGHBCRh4CdxpitwPeAR0SkAejGShZKKaXCyNEagTHmKeCpads+O+X3EeAOJ2NQSik1O51iQimlYpwmAqWUinGaCJRSKsZpIlBKqRi35GYfFZEO4PgCD89j2l3LMUDfc2zQ9xwbFvOeVxpjvMFeWHKJYDFEZOdMc21EK33PsUHfc2xw6j1r15BSSsU4TQRKKRXjYi0RPOx2AC7Q9xwb9D3HBkfec0zVCJRSSl0o1q4IlFJKTaOJQCmlYlzMJAIRuUFEDotIg4h8xu14nCYi3xeRdhHZ73Ys4SIiK0TkRRE5KCIHROSTbsfkNBFJFpHtIvKW/z1/we2YwkFE4kRkt4j8yu1YwkFEjonIPhHZIyK2L9oeEzUCEYkDjgDXYy2ZuQO42xhz0NXAHCQibwcGgB8ZY9a7HU84iEgRUGSMeVNEMoBdwG1R/t9ZgDRjzICIJACvAp80xmxzOTRHicingFog0xjzXrfjcZqIHANqjTGO3EAXK1cElwINxphGY8wY8Bhwq8sxOcoY8wrWGg8xwxjTYox50/97P3AIa13sqGUsA/6nCf6fqP52JyIlwO8B33U7lmgRK4mgGDg55XkzUf4BEetEpAzYBLzhciiO83eT7AHageeMMdH+nr8O/BXgczmOcDLAr0Vkl4g8YHfjsZIIVAwRkXTg/wF/bow543Y8TjPGTBpjLsZaF/xSEYnarkAReS/QbozZ5XYsYXaVMWYzcCPwZ/6uX9vESiI4BayY8rzEv01FGX8/+f8D/ssY8zO34wknY0wv8CJwg8uhOOlK4BZ/n/ljwDtE5D/dDcl5xphT/sd24OdY3d22iZVEsAOoFpFyEUnEWht5q8sxKZv5C6ffAw4ZY77mdjzhICJeEcn2/56CNSCiztWgHGSM+RtjTIkxpgzr/+MXjDEfcjksR4lImn/wAyKSBrwbsHU0YEwkAmPMBPAg8CxWAfFxY8wBd6Nylog8CrwOrBaRZhH5qNsxhcGVwIexviXu8f/c5HZQDisCXhSRvVhfeJ4zxsTEkMoYUgC8KiJvAduBJ40xz9h5gpgYPqqUUmpmMXFFoJRSamaaCJRSKsZpIlBKqRiniUAppWKcJgKllIpxmgiUmoWIZIvIn/p/Xy4iP3U7JqXspsNHlZqFf86iX8XKDK4qNsW7HYBSEe6fgEr/pG71wBpjzHoRuQ+4DUgDqoGvAIlYN7SNAjcZY7pFpBL4FuAFhoA/MsZE7Z2/amnSriGlZvcZ4Kh/UrdPT3ttPfB+4BLgH4AhY8wmrDu6/8C/z8PAx40xW4C/BP41HEErNR96RaDUwr3oX/egX0T6gCf82/cBG/2zoF4B/MSaBgmApPCHqdTsNBEotXCjU373TXnuw/p/ywP0+q8mlIpY2jWk1Oz6gYyFHOhfC6FJRO4Aa3ZUEbnIzuCUsoMmAqVmYYzpAl4Tkf3AlxfQxD3AR/0zRx4gypdIVUuTDh9VSqkYp1cESikV4zQRKKVUjNNEoJRSMU4TgVJKxThNBEopFeM0ESilVIzTRKCUUjHu/wMDM38Q0bdgtwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_population(guess_dynamics)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We find that our guess pulses are too disjoint to implement the STIRAP scheme.\n", "Thus, the Stokes pulse has no effect, whilst the pump pulse merely transfers\n", "population out of $\\ket{1}$ into $\\ket{2}$ and back again." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Optimize" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to invoke `optimize_pulses`, we must define the required parameters\n", "for each control, a pulse shape (used to ensure that the controls remain 0 at\n", "$t=0$ and $t=T$), and the parameter $\\lambda_a$ that determines the overall\n", "magnitude of the pulse updates in each iteration." ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:35.025842Z", "iopub.status.busy": "2021-11-07T04:51:35.025556Z", "iopub.status.idle": "2021-11-07T04:51:35.027165Z", "shell.execute_reply": "2021-11-07T04:51:35.026875Z" } }, "outputs": [], "source": [ "def S(t):\n", " \"\"\"Scales the Krotov methods update of the pulse value at the time t\"\"\"\n", " return krotov.shapes.flattop(\n", " t, t_start=0.0, t_stop=5.0, t_rise=0.3, func='sinsq'\n", " )" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:35.029497Z", "iopub.status.busy": "2021-11-07T04:51:35.029214Z", "iopub.status.idle": "2021-11-07T04:51:35.030874Z", "shell.execute_reply": "2021-11-07T04:51:35.030541Z" } }, "outputs": [], "source": [ "pulse_options = {\n", " H[1][1]: dict(lambda_a=0.5, update_shape=S),\n", " H[2][1]: dict(lambda_a=0.5, update_shape=S),\n", " H[3][1]: dict(lambda_a=0.5, update_shape=S),\n", " H[4][1]: dict(lambda_a=0.5, update_shape=S)\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We now run the optimization, using the phase-sensitive functional $J_{T,\n", "\\text{re}} = 1 - \\Re\\Braket{\\Psi(t)}{\\Psi_{\\tgt}}$, printing the integrated\n", "pulse update for each control in each iteration. The optimization stops when\n", "$J_T$ falls below $10^{-3}$, changes by less than $10^{-5}$, or after at most\n", "15 iterations. We also check for monotonic convergence." ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "attributes": { "classes": [], "id": "", "n": "16" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:35.035095Z", "iopub.status.busy": "2021-11-07T04:51:35.033240Z", "iopub.status.idle": "2021-11-07T04:51:59.551717Z", "shell.execute_reply": "2021-11-07T04:51:59.551320Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iter. J_T g_a_int_1 g_a_int_2 g_a_int_3 g_a_int_4 g_a_int J Delta J_T Delta J secs\n", "0 1.01e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 1.01e+00 n/a n/a 0\n", "1 6.72e-01 8.60e-02 2.87e-04 8.17e-02 3.72e-04 1.68e-01 8.40e-01 -3.37e-01 -1.68e-01 1\n", "2 4.02e-01 7.20e-02 4.21e-04 6.22e-02 4.20e-04 1.35e-01 5.37e-01 -2.70e-01 -1.35e-01 1\n", "3 2.22e-01 4.91e-02 4.64e-04 3.99e-02 3.88e-04 8.98e-02 3.12e-01 -1.80e-01 -8.98e-02 1\n", "4 1.17e-01 2.89e-02 3.87e-04 2.29e-02 3.01e-04 5.25e-02 1.69e-01 -1.05e-01 -5.25e-02 1\n", "5 6.00e-02 1.56e-02 2.69e-04 1.23e-02 2.10e-04 2.84e-02 8.84e-02 -5.69e-02 -2.84e-02 1\n", "6 3.05e-02 8.08e-03 1.71e-04 6.37e-03 1.39e-04 1.48e-02 4.52e-02 -2.95e-02 -1.48e-02 1\n", "7 1.54e-02 4.08e-03 1.06e-04 3.24e-03 9.10e-05 7.51e-03 2.30e-02 -1.50e-02 -7.51e-03 1\n", "8 7.85e-03 2.04e-03 6.65e-05 1.63e-03 5.99e-05 3.79e-03 1.16e-02 -7.59e-03 -3.79e-03 1\n", "9 4.02e-03 1.02e-03 4.31e-05 8.14e-04 4.01e-05 1.91e-03 5.94e-03 -3.83e-03 -1.91e-03 1\n", "10 2.09e-03 5.05e-04 2.88e-05 4.07e-04 2.73e-05 9.68e-04 3.05e-03 -1.94e-03 -9.68e-04 1\n", "11 1.10e-03 2.52e-04 1.99e-05 2.03e-04 1.88e-05 4.94e-04 1.59e-03 -9.87e-04 -4.94e-04 1\n", "12 5.90e-04 1.26e-04 1.40e-05 1.02e-04 1.31e-05 2.54e-04 8.45e-04 -5.09e-04 -2.54e-04 1\n" ] } ], "source": [ "opt_result = krotov.optimize_pulses(\n", " [objective],\n", " pulse_options,\n", " tlist,\n", " propagator=krotov.propagators.expm,\n", " chi_constructor=krotov.functionals.chis_re,\n", " info_hook=krotov.info_hooks.print_table(\n", " J_T=krotov.functionals.J_T_re,\n", " show_g_a_int_per_pulse=True,\n", " unicode=False,\n", " ),\n", " check_convergence=krotov.convergence.Or(\n", " krotov.convergence.value_below(1e-3, name='J_T'),\n", " krotov.convergence.delta_below(1e-5),\n", " krotov.convergence.check_monotonic_error,\n", " ),\n", " iter_stop=15,\n", ")" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "attributes": { "classes": [], "id": "", "n": "17" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:59.554692Z", "iopub.status.busy": "2021-11-07T04:51:59.554392Z", "iopub.status.idle": "2021-11-07T04:51:59.556590Z", "shell.execute_reply": "2021-11-07T04:51:59.556291Z" } }, "outputs": [ { "data": { "text/plain": [ "Krotov Optimization Result\n", "--------------------------\n", "- Started at 2021-11-07 05:51:35\n", "- Number of objectives: 1\n", "- Number of iterations: 12\n", "- Reason for termination: Reached convergence: J_T < 0.001\n", "- Ended at 2021-11-07 05:51:59 (0:00:24)" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "opt_result" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We dump the result of the optimization to disk for later use in the [Ensemble\n", "Optimization for Robust Pulses](08_example_ensemble.ipynb).\n" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:59.558395Z", "iopub.status.busy": "2021-11-07T04:51:59.558105Z", "iopub.status.idle": "2021-11-07T04:51:59.560257Z", "shell.execute_reply": "2021-11-07T04:51:59.559963Z" } }, "outputs": [], "source": [ "if not os.path.isfile('lambda_rwa_opt_result.dump'):\n", " opt_result.dump('lambda_rwa_opt_result.dump')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The optimized complex pulses look as follows:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "attributes": { "classes": [], "id": "", "n": "18" }, "execution": { "iopub.execute_input": "2021-11-07T04:51:59.570302Z", "iopub.status.busy": "2021-11-07T04:51:59.570015Z", "iopub.status.idle": "2021-11-07T04:51:59.781646Z", "shell.execute_reply": "2021-11-07T04:51:59.781396Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "pump pulse amplitude and phase:\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Stokes pulse amplitude and phase:\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def plot_pulse_amplitude_and_phase(pulse_real, pulse_imaginary,tlist):\n", " ax1 = plt.subplot(211)\n", " ax2 = plt.subplot(212)\n", " amplitudes = [np.sqrt(x*x + y*y) for x,y in zip(pulse_real,pulse_imaginary)]\n", " phases = [np.arctan2(y,x)/np.pi for x,y in zip(pulse_real,pulse_imaginary)]\n", " ax1.plot(tlist,amplitudes)\n", " ax1.set_xlabel('time')\n", " ax1.set_ylabel('pulse amplitude')\n", " ax2.plot(tlist,phases)\n", " ax2.set_xlabel('time')\n", " ax2.set_ylabel('pulse phase (π)')\n", " plt.show()\n", "\n", "print(\"pump pulse amplitude and phase:\")\n", "plot_pulse_amplitude_and_phase(\n", " opt_result.optimized_controls[0], opt_result.optimized_controls[1], tlist)\n", "print(\"Stokes pulse amplitude and phase:\")\n", "plot_pulse_amplitude_and_phase(\n", " opt_result.optimized_controls[2], opt_result.optimized_controls[3], tlist)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can convert the complex controls in the rotating frame back into the\n", "real-valued pulses in the lab frame:" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "execution": { "iopub.execute_input": "2021-11-07T04:51:59.826415Z", "iopub.status.busy": "2021-11-07T04:51:59.816537Z", "iopub.status.idle": "2021-11-07T04:52:00.390108Z", "shell.execute_reply": "2021-11-07T04:52:00.389806Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Physical electric pump pulse in the lab frame:\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Physical electric Stokes pulse in the lab frame:\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def plot_physical_field(pulse_re, pulse_im, tlist, case=None):\n", "\n", " if case == 'pump':\n", " w = 9.5\n", " elif case == 'stokes':\n", " w = 4.5\n", " else:\n", " print('Error: selected case is not a valid option')\n", " return\n", "\n", " ax = plt.subplot(111)\n", " ax.plot(tlist,pulse_re*np.cos(w*tlist)-pulse_im*np.sin(w*tlist), 'r')\n", " ax.set_xlabel('time', fontsize = 16)\n", " if case == 'pump':\n", " ax.set_ylabel(r'$\\mu_{12}\\,\\epsilon_{P}$')\n", " elif case == 'stokes':\n", " ax.set_ylabel(r'$ \\mu_{23}\\,\\epsilon_{S}$')\n", " plt.show()\n", "\n", "print('Physical electric pump pulse in the lab frame:')\n", "plot_physical_field(\n", " opt_result.optimized_controls[0], opt_result.optimized_controls[1], tlist, case = 'pump')\n", "\n", "\n", "print('Physical electric Stokes pulse in the lab frame:')\n", "plot_physical_field(\n", " opt_result.optimized_controls[2], opt_result.optimized_controls[3], tlist, case = 'stokes')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lastly, we check the population dynamics to verify that we indeed implement the\n", "desired state-to-state transfer:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "attributes": { "classes": [], "id": "", "n": "19" }, "execution": { "iopub.execute_input": "2021-11-07T04:52:00.393373Z", "iopub.status.busy": "2021-11-07T04:52:00.392561Z", "iopub.status.idle": "2021-11-07T04:52:00.430389Z", "shell.execute_reply": "2021-11-07T04:52:00.430095Z" } }, "outputs": [], "source": [ "opt_dynamics = opt_result.optimized_objectives[0].mesolve(\n", " tlist, e_ops=[proj1, proj2, proj3])" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "ExecuteTime": { "end_time": "2019-02-12T04:41:23.853468Z", "start_time": "2019-02-12T04:41:23.633866Z" }, "attributes": { "classes": [], "id": "", "n": "20" }, "execution": { "iopub.execute_input": "2021-11-07T04:52:00.442438Z", "iopub.status.busy": "2021-11-07T04:52:00.441556Z", "iopub.status.idle": "2021-11-07T04:52:00.518846Z", "shell.execute_reply": "2021-11-07T04:52:00.518503Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_population(opt_dynamics)" ] } ], "metadata": { "hide_input": false, "jupytext": { "formats": "" }, "kernelspec": { "display_name": "Python 3", "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.8.1" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }