{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Optimization of a Dissipative State-to-State Transfer in a Lambda System" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:36:59.401589Z", "start_time": "2019-02-25T17:36:58.067052Z" }, "attributes": { "classes": [], "id": "", "n": "1" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "numpy 1.16.4\n", "scipy 1.2.1\n", "krotov 0.3.0+dev\n", "qutip 4.3.1\n", "matplotlib 3.1.0\n", "matplotlib.pylab 1.16.4\n", "CPython 3.7.3\n", "IPython 7.5.0\n" ] } ], "source": [ "# NBVAL_IGNORE_OUTPUT\n", "%load_ext watermark\n", "import os\n", "import qutip\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", "import pickle\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\n", "#2\\vphantom{#1}\\right\\rangle}\n", "\\newcommand{Ketbra}[2]{\\left\\vert#1\\vphantom{#2}\n", "\\right\\rangle \\hspace{-0.2em} \\left\\langle #2\\vphantom{#1} \\right\\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", "\\newcommand{toP}[0]{\\omega_{12}}\n", "\\newcommand{toS}[0]{\\omega_{23}}$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This example illustrates the use of Krotov's method with a non-Hermitian\n", "Hamiltonian. It considers the same system as the [previous\n", "example](02_example_lambda_system_rwa_complex_pulse.ipynb), a transition\n", "$\\ket{1} \\rightarrow \\ket{3}$ in a three-level system in a\n", "$\\Lambda$-configuration. However, here we add a non-Hermitian decay term to\n", "model loss from the intermediary level $\\ket{2}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The effective Hamiltonian\n", "\n", "We consider the system as in the following diagram:\n", "\n", "![Lambda system considered in this notebook](energylevels.png)\n", "\n", "with the Hamiltonian\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", "in the lab frame.\n", "\n", "However, we now also include that the level $\\ket{2}$ decays incoherently. This\n", "is the primary motivation of the STIRAP scheme: through destructive\n", "interference it can keep the dynamics in a \"dark state\" where the population is\n", "transferred from $\\ket{1}$ to $\\ket{3}$ without ever populating the $\\ket{2}$\n", "state. A rigorous treatment would be to include the dissipation as a Lindblad\n", "operator, and to simulate the dynamics and perform the optimization in\n", "Liouville space. The Lindblad operator for spontaneous decay from level\n", "$\\ket{2}$ with decay rate $2\\gamma$ is $\\Op{L} = \\sqrt{2\\gamma} \\Ketbra{1}{2}$.\n", "However, this is numerically expensive. For the optimization,\n", "it is sufficient to find a way to penalize population in the $\\ket{2}$ state.\n", "\n", "Motivated by the [Monte-Carlo Wave Function\n", "(MCWF)](https://en.wikipedia.org/wiki/Quantum_jump_method) method, we define\n", "the non-Hermitian *effective Hamiltonian*\n", "\n", "$$\n", "\\Op{H}_{\\text{eff}} = \\Op{H}_{\\text{lab}} - \\frac{i}{2} \\Op{L}^{\\dagger} \\Op{L}\n", "$$\n", "\n", "In explicit form, this is\n", "\n", "$$\n", "\\Op{H}_{\\text{eff}} = \\begin{pmatrix}\n", " E_1 & -\\mu_{12} \\epsilon_P(t) & 0 \\\\\n", " -\\mu_{12} \\epsilon_P(t) & E_2 - i \\gamma & - \\mu_{23} \\epsilon_S(t) \\\\\n", " 0 & -\\mu_{23} \\epsilon_S(t) & E_2\n", "\\end{pmatrix}\n", "$$\n", "\n", "The only change is that the energy of level $\\ket{2}$ now has an imaginary part\n", "$-\\gamma$, which causes an exponential decay of any population amplitude in\n", "$\\ket{2}$, and thus a decay in the norm of the state. In the MCWF, this decay\n", "of the norm is used to track the probability that quantum jump occurs\n", "(otherwise, the state is re-normalized). Here, we do not perform quantum jumps\n", "or renormalize the state. Instead, we use the decay in the norm to steer the\n", "optimization. Using the functional\n", "\n", "$$\n", "J_{T, \\text{re}} = 1 - \\Re{\\Braket{\\Psi(T)}{\\Psi^{\\tgt}}}\n", "$$\n", "\n", "to be minimized, we find that the value of\n", "the functional increases if $\\Norm{\\ket{\\Psi(T)}} < 1$. Thus, population in\n", "$\\ket{2}$ is penalized, without any significant numerical overhead.\n", "\n", "The decay rate $2\\gamma$ does not necessarily need to correspond to the actual\n", "physical lifetime of the $\\ket{2}$ state: we can choose an artificially high\n", "decay rate to put a stronger penalty on the $\\ket{2}$ level. Or, if the\n", "physical decay is so strong that the norm of the state reaches effectively\n", "zero, we could decrease $\\gamma$ to avoid numerical instability. The use of a\n", "non-Hermitian Hamiltonian with artificial decay is generally a useful trick to\n", "penalize population in a subspace.\n", "\n", "The new non-Hermitian decay term remains unchanged when we make the rotating\n", "wave approximation. The RWA Hamiltonian now reads\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) & -i \\gamma & -\\frac{1}{2} \\Omega_S(t) \\\\\n", " 0 & -\\frac{1}{2} \\Omega_S^*(t) & \\Delta_S\n", "\\end{pmatrix}\\,,\n", "$$\n", "\n", "with complex control fields $\\Omega_P(t)$ and $\\Omega_S(t)$, see the [previous\n", "example](02_example_lambda_system_rwa_complex_pulse.ipynb). Again, we split\n", "these complex pulses into an independent real and imaginary part for the\n", "purpose of optimization.\n", "\n", "The guess controls are" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "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": [ "and the Hamiltonian is instantiated as" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "def hamiltonian(E1=0.0, E2=10.0, E3=5.0, omega_P=9.5, omega_S=4.5, gamma=0.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, -1j * gamma, 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": { "lines_to_next_cell": 2 }, "outputs": [], "source": [ "H = hamiltonian()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We check the hermiticity of the Hamiltonian:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:36:59.444955Z", "start_time": "2019-02-25T17:36:59.437053Z" }, "attributes": { "classes": [], "id": "", "n": "3" }, "lines_to_next_cell": 2 }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "H0 is Hermitian: False\n", "H1 is Hermitian: True\n" ] } ], "source": [ "print(\"H0 is Hermitian: \" + str(H[0].isherm))\n", "print(\"H1 is Hermitian: \"+ str(\n", " H[1][0].isherm\n", " and H[2][0].isherm\n", " and H[3][0].isherm\n", " and H[4][0].isherm))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Define the optimization target\n", "\n", "We optimize for the phase-sensitive transition $\\ket{1} \\rightarrow \\ket{3}$.\n", "As we are working in the rotating frame, the target state must be adjusted with\n", "an appropriate phase factor:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "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]))\n", "\n", "def rwa_target_state(ket3, E2=10.0, omega_S=4.5, T=5):\n", " return np.exp(1j * (E2 - omega_S) * T) * ket3\n", "\n", "psi_target = rwa_target_state(ket3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The objective is now instantiated as" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "lines_to_next_cell": 2 }, "outputs": [ { "data": { "text/plain": [ "[Objective[|Ψ₀(3)⟩ to |Ψ₁(3)⟩ via [A₀[3,3], [H₁[3,3], u₁(t)], [H₂[3,3], u₂(t)], [H₃[3,3], u₃(t)], [H₄[3,3], u₄(t)]]]]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "objectives = [krotov.Objective(initial_state=ket1, target=psi_target, H=H)]\n", "objectives" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulate dynamics under the guess field\n", "\n", "We use a time grid with 500 steps between $t=0$ and $T=5$:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "tlist = np.linspace(0, 5, 500)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We propagate once for the population dynamics, and once to obtain the\n", "propagated states for each point on the time grid:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "proj1 = qutip.ket2dm(ket1)\n", "proj2 = qutip.ket2dm(ket2)\n", "proj3 = qutip.ket2dm(ket3)\n", "\n", "guess_dynamics = objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm, e_ops=[proj1, proj2, proj3]\n", ")\n", "guess_states = objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm\n", ")" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def plot_population(result):\n", " fig, ax = plt.subplots()\n", " ax.axhline(y=1.0, color='black', lw=0.5, ls='dashed')\n", " ax.axhline(y=0.0, color='black', lw=0.5, ls='dashed')\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)\n", "\n", "\n", "def plot_norm(result):\n", "\n", " state_norm = lambda i: result.states[i].norm()\n", " states_norm=np.vectorize(state_norm)\n", "\n", " fig, ax = plt.subplots()\n", " ax.plot(result.times, states_norm(np.arange(len(result.states))))\n", " ax.set_xlabel('time')\n", " ax.set_ylabel('state norm')\n", " plt.show(fig)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:37:04.620353Z", "start_time": "2019-02-25T17:37:04.107208Z" }, "attributes": { "classes": [], "id": "", "n": "15" } }, "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_population(guess_dynamics)\n", "plot_norm(guess_states)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The population dynamics and the norm-plot show the effect the non-Hermitian\n", "term in the Hamiltonian, resulting in a 30% loss.\n", "\n", "## Optimize\n", "\n", "For each control, we define the update shape and the $\\lambda_a$ parameter that\n", "determines the magnitude of the update:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "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": 13, "metadata": {}, "outputs": [], "source": [ "pulse_options = {\n", " H[1][1]: dict(lambda_a=2.0, update_shape=S),\n", " H[2][1]: dict(lambda_a=2.0, update_shape=S),\n", " H[3][1]: dict(lambda_a=2.0, update_shape=S),\n", " H[4][1]: dict(lambda_a=2.0, update_shape=S)\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We now run the optimization for 40 iterations, printing out the fidelity\n", "\n", "$$\n", "F_{\\text{re}} = \\Re{\\Braket{\\Psi(T)}{\\Psi^{\\tgt}}}\n", "$$\n", "\n", "after each iteration." ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "lines_to_next_cell": 2 }, "outputs": [], "source": [ "def print_fidelity(**args):\n", " F_re = np.average(np.array(args['tau_vals']).real)\n", " print(\" F = %f\" % F_re)\n", " return F_re" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " F = -0.007812\n", " F = 0.055166\n", " F = 0.117604\n", " F = 0.178902\n", " F = 0.238507\n", " F = 0.295926\n", " F = 0.350749\n", " F = 0.402648\n", " F = 0.451388\n", " F = 0.496822\n", " F = 0.538882\n", " F = 0.577573\n", " F = 0.612961\n", " F = 0.645161\n", " F = 0.674324\n", " F = 0.700629\n", " F = 0.724268\n", " F = 0.745445\n", " F = 0.764364\n", " F = 0.781226\n", " F = 0.796224\n", " F = 0.809541\n", " F = 0.821349\n", " F = 0.831809\n", " F = 0.841064\n", " F = 0.849250\n", " F = 0.856486\n", " F = 0.862881\n", " F = 0.868532\n", " F = 0.873527\n", " F = 0.877942\n", " F = 0.881847\n", " F = 0.885302\n", " F = 0.888362\n", " F = 0.891074\n", " F = 0.893481\n", " F = 0.895618\n", " F = 0.897519\n", " F = 0.899211\n", " F = 0.900721\n", " F = 0.902071\n" ] } ], "source": [ "oct_result = krotov.optimize_pulses(\n", " objectives, pulse_options, tlist,\n", " propagator=krotov.propagators.expm,\n", " chi_constructor=krotov.functionals.chis_re,\n", " info_hook=print_fidelity,\n", " iter_stop=40\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We look at the optimized controls and the population dynamics they induce:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:38:48.921312Z", "start_time": "2019-02-25T17:38:48.406566Z" }, "attributes": { "classes": [], "id": "", "n": "17" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "pump pulse amplitude and phase:\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAEGCAYAAABsLkJ6AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3dd3zV9fX48de5NzsQIAlhBQgb2UgAwdG6ce9ZtVotVm1rf1atWttqWzu/Vq1VK+5ZJy60blFRZkD23ksCSSBk5957fn/cGww0QEg+n3xu7j3Px+M+7si9n3suJJ9z3+u8RVUxxhgTf3xeB2CMMcYblgCMMSZOWQIwxpg4ZQnAGGPilCUAY4yJUwleB3AosrOzNS8vz+swjDGmVSkoKNihqh33fbxVJYC8vDzmzJnjdRjGGNOqiMj6hh63LiBjjIlTlgCMMSZOtaouIGOMNyprgny6rJBZa4tYsrWUorIaqgMh2qclktshlfyemRzTvyMDOrf1OlRzCCwBGGP2a/POSh6ZuorJczdTURMkPcnPoK4ZDOqaQXKCn+LyalZsK+ODxdu4572ljOjenquOzOOMYV3x+cTr8M1BWAIwxvyPqtog93+8kiemrQHg7BHdOOfwboztlYW/gRP7t7uqeG/hVp6fuZ4bX/qGx79cy11nDmJUz8yWDt0cAmlNxeDy8/PVZgEZ464Fm3by8//MY11RBReMyuX/ndifru1TG/XaUEh5a/5m/vb+cr4treIn3+vD/zuhP0kJNtzoJREpUNX8fR+3FoAxZo+XZ2/gN28tJjs9iRevGcv4vtmH9HqfTzhnZC4nDurMH95ZwiNTVzN7bTGPXj6KrDbJLkVtmsrSsjEGVeXeD5fzq9cXMrZXJlN+fvQhn/zra5OcwF/PH8Y/LxnJws27OOuhr1hVWOZgxMYJlgCMiXOqym/eWsSDn67iovzuPHXlaDLTkxw59pnDu/LyteOoqg1y8aTpLP92tyPHNc6wBGBMHFNV/vjuUp6fsYFrv9ebv5w3lAS/s6eFEd3b89LEcfh9wsWTprNimyWBaOHI/7SI9BeRT0RkUeT+MBG504ljG2Pc8+Cnq3hi2lquHJ/HbRMGIuLO1M2+OW145dpxJPh9/PDJWWzZWenK+5hD41Sqfwy4HagFUNUFwMUOHdsY44KXZm3gHx+t4LzDc/nt6YNcO/nX6ZmVzjNXjaGsKsCVT81iV0Wtq+9nDs6pBJCmqrP2eSzg0LGNMQ6btbaY37y1iGP6d+Sv5w1tsUVbg7pm8Ojlo1i7o5yfPF9AIBhqkfc1DXMqAewQkT6AAojI+cBWh45tjHHQppIKrnu+gO4d0njwkpGO9/kfzPi+2fzpnKFMX1PEX99f1qLvbfbm1DqAG4BJwEAR2QysBS5z6NjGGIdUB4Jc9/xcagIhHvthPu1SEz2J44L87izYtIvHvlzLsNz2nDG8qydxxDtHEoCqrgFOEJF0wKeqjR7mFxE/MAfYrKqnOxGPMaZhf3t/OQs372LS5aPo07GNp7H85vRBLN1ayq2vLeCwLhn0zfE2nnjUrAQgIjft53EAVPUfjTjMjcBSIKM5sRhjDuzTZdt4YtpafjiuJycN7ux1OCQl+HjoB4cz4f4vuPGleUy+fjzJCX6vw4orze38axu55APXAd0il58Ahx/sxSKSC5wGPN7MOIwxB1BYWsXNr4a/ad9+6mFeh7NHp4wU/nreMBZvKeXeD1d4HU7caVYLQFXvBhCRL4DD67p+ROQu4N1GHOJ+4FbCSaRBIjIRmAjQo0eP5oRrTFxSVe54YyHl1QEevGQEKYnR9S37pMGd+cHYHkz6Yg3H9OvIUf2aXoLCHBqnhv87ATX17tdEHtsvETkdKFTVggM9T1UnqWq+quZ37Pg/exobYw7izW828/HSQm45eQB9c6Jzw5Y7TxtE747p/Or1BZRV2wzyluJUAngWmCUid0W+/c8EnjnIa44EzhSRdcBLwHEi8rxD8RhjCHf93PX2Ekb17MBVR/byOpz9Sk3y8/fzh7FlVyV//a9NDW0pjiQAVb0HuAooiVyuUtU/HeQ1t6tqrqrmEV41/Kmq2tRRYxwS7vpZRFVtkL+dP6zBjVyiyaiemVw1vhfPzVjPjDVFXocTF5yqBdQD2AG8EbkURR4zxnhkyoKtfLx0GzefNMDzKZ+NdfPJ/emRmcavXl9AZU3Q63BinlNdQO8CUyKXT4A1wH8b+2JVnWprAIxxzu6qWv4wZQlDu7XjR0dFb9fPvtKSEvjLeUNZX1TBfR/brCC3OdUFNFRVh0Uu/YAxwHQnjm2MOXT3friC7WXV3HPOkKjv+tnX+D7ZXDy6O09MW2v7B7jMlSIgqjoXGOvGsY0xB7Zo8y6enb6Oy8b2ZFhue6/DaZJbJwykbUoCv3lzEa1p3/LWxpFSEPusCPYRXgS2xYljG2MaLxhSfv3mIjLTk7j55AFeh9NkmelJ3DZhILdNXsjkuZs5b1Su1yHFJKdaAG3rXZIJjwmc5dCxjTGN9NLsDczfuJNfn3aYZ4XenHJhfndG9mjPn/+71PYOcIlTCWCJqt4dudyjqi8AZzh0bGNMI5SU1/C395dzRO9Mzh7Rzetwms3nE/5w1hCKy2v4vw+Xex1OTHIqAdzeyMeMMS554JOV7K6q5e4zh7i+u1dLGdKtHVeMy+P5metZtHmX1+HEnGYlABE5RUQeBLqJyD/rXZ7GdgQzpsWs3l7G8zPWc/GYHgzoHJ3lHprqppP6k5mWxN3vLLYBYYc1twWwhXAt/yqgoN7lbeDkZh7bGNNIf3p3KamJfm46sb/XoTguIyWRX540gNnrSnh3oW006KTmVgOdD8wXkRdU1b7xG+OBaSt38MmyQm47ZSDZbZK9DscVF43uznMz1vPn95ZxwmGdoq6iaWvV3C6gVyI354nIgn0vDsRnjDmAYEj547tL6J6ZypXj87wOxzV+n/Db0wexeWclj32xxutwYkZz1wHcGLm2Mg7GeOCVORtZ9u1uHrr08Jj/VjyuTxYTBnfm4amruSC/O53bpXgdUqvXrBaAqm6NXK9v6OJMiMaYhuyuquXeD5czOq8Dpw71fovHlnDHqYcRDCl/e99KRjuhuV1Au0WktN5ld/1rp4I0xvyvh6euZkdZDXeeNihmpn0eTI+sNK4+uheT521m3oYSr8Np9ZrbAmirqhn1Lm3rXzsVpDFmbxuLK3hi2lrOHdmN4d1bZ72fprrh2L50bJvM3e8sIRSyaaHN4VgxOBE5XER+LiI/E5GRTh3XGPO//vr+MnwCt0xovfV+mqpNcgK3njyAbzbu5O35VnKsOZzaEOa3hLeAzAKygadF5E4njm2M2VvB+mKmLNjKxGP60KVdqtfheOK8w3MZ0i2Dv/x3GRU1NgO9qZxqAfwAGK2qv1PV3wFHAJc7dGxjTEQopPx+ylI6ZSTzk+/19jocz/h8wm9PH8y3pVVMsmmhTeZUAtgC1J+TlQxsdujYxpiIt+dvYf7Gndxy8kDSkhyp5t5qjemVyWnDuvDvz1ezdVel1+G0Sk4lgF3AYhF5WkSeAhYBO+tqAzn0HsbEtcqaIH99fxlDumVw7sjWX+3TCbdNGEhI4W/vW7XQpnDqK0TdZvB1pjp0XGNMxONfrmHrriruv2gEvla2zaNbumem8eOje/HQZ6u5YlxPRvbo4HVIrYojCUBVn3HiOMaYhm0rreKRz1czYXBnxvbO8jqcqHLd9/vyypxN/H7KEiZfNz5u1kQ4walZQKeLyDwRKbaFYMY47/8+WE4gqNx+6kCvQ4k6bZITuOXkAczbYNNCD5VTYwD3Az8EsmwhmDHOWrR5F6/N3cSVR+bRMyvd63Ci0vmH5zK4a3haaGVN0OtwWg2nEsBGYJHabg3GOEpV+cOUJXRIS+KGY/t6HU7U8vmE350xmK27bFrooXBqEPhW4D0R+RyorntQVf/h0PGNiUsfLP6WmWuL+ePZQ1r9Ju9uG9Mrk9OGhqeFXjg6N24XyR0Kp1oA9wAVhNcCtK13McY0UXUgyD3vLWVAp7ZcPLq71+G0CredMpCgKn+3aaGN4lQLoKuqDnHoWMYY4Kmv1rGxuJLnrh5Dgt+xsl0xrXtmGtcc1YuHp67mivF5jIizQnmHyqkE8J6InKSqHzp0PNPK1AZDzF5XzJcrd7BkSynrisoprawlGFIyUhPp1j6VQV0zGNc7i6P7dSQ1KbY3L2mu7bur+denqzh+YA5H9+vodTityvXHRqaFvrOY121a6AE5lQCuA24WkWqgFhBADzQTSES6A88CnQAFJqnqAw7FY1rIhqIKnpuxjlcLNrGzopZEv9A3py3DctvTPjURn0BpVYB1ReW8NGsjT321jpREH6cN7coPx/dkWK59Q2vIPz5aTlVtkDtOO8zrUFqdumqht76+gHcWbOXM4V29DilqObUQrCn9/QHgl6o6V0TaAgUi8pGqLnEiJuOuwtIq7v9kJS/P3ogAJw3uxJnDu3F0v2zSkxv+taoNhpi9tpgpC7fy5rzNvD53Eycc1onbThlA3xwbMqqzZEspL8/eyJXje9GnYxuvw2mVzhuVyzPT1/GX95Zy4mGdrMW5H+LUzE0R6QD0o15ROFX94hBe/xbwL1X9aH/Pyc/P1zlz5jQrTtM8wZDy5LS1/OOjFdQGQ/xgbA+uP7YvnTIObX/W3VW1PDt9Pf+euprymgBXjMvj1gkD4r7Amapy6WMzWfptKZ/ffCzt0mzmT1PNXFPERZNm8LPj+vLLk+Jv34T6RKRAVfP3fdyRvzYRuYbwBvG5wDeEy0FPB45r5OvzgJHATCfiMe5Ys72MW15bQMH6Ek44LIc7TxtEXnbTFia1TUnkhmP7csmYHtz/8Qqemb6OT5cV8tfzhjGuT/yWOvhoyTamryni92cNtpN/M43tncU5I7vx789Xc/bIbtaaaoBTUwtuBEYD61X1WMIn852NeaGItAFeB36hqv9TPkJEJorIHBGZs337dofCNYfqrW82c/qD01hVWMb9F43gsSvym3zyry8zPYnfnzWElyeOQwQufXwG93+8Ii63+quqDfLHd5fSN6cNl47p4XU4MeGOUw8jJdHPb95chK1T/V9OJYAqVa0CEJFkVV0GHLTNJSKJhE/+L6jq5Iaeo6qTVDVfVfM7drTZEC2tNhjirrcXc+NL3zCoSwYf/OIYzh7ZzfGZFWN6ZfLfG4/mnBHduP/jlVz59GxKymscfY9o9+jna9hQXMFdZwy2aZ8O6dg2mVtPHsDXq4usTlADnPot2yQi7YE3gY8i/fnrD/QCCZ9BngCW2orh6LSrspYrn5rF01+v45qjevGfiUfQud2h9fUfirSkBO69cDj3nDOEGauLOPeRr1m3o9y194smG4oqeHjqKk4b1oWj+mV7HU5MuXRsT4bltuMPU5ZSWlXrdThRxZEEoKrnqOpOVb0L+A3hE/vZB3nZkYS3jTxORL6JXE51Ih7TfBuLKzj/ka+ZtbaY/7tgOHeePojEFvhWKiL8YGxPXvzxWHZW1HDOw18xZ12x6+/rtd9PWYzfJ9xp0z4d5/cJ95w9lOLyau79wFYI1+f4X7Sqfq6qb6vqAdvvqjpNVUVVh6nqiMjlPafjMYdu0eZdnPPw13xbWsUzPxrD+aNyWzyG/LxM3rj+SNqnJXHp4zN5b+HWFo+hpXy8ZBsfLy3kFyf0s/o1Lhma247Lj+jJczPWs2BTo4Yn44J1NJq9FKwv4ZLHZpDkF964fjzj+3jXHZGXnc7k68YztFs7fvriXF6ZvdGzWNxSVRvk7imL6ZfThquO7OV1ODHtlycPIKtNMr96fSE1gZDX4UQFSwBmj69X7+DyJ2aSlZ7Eq9eNj4rFWR3Sk3ju6jEc2TebW19fwBPT1nodkqMembqajcWV3H3W4BbpYotnGSmJ3HP2EJZuLeXhqau8DicqOPYbJyI9ReSEyO3UyOpe00p8tqyQq56aTW6HVF65dhzd2kdPV0RaUgKP/zCfU4Z05g9TlnDfRytiYkrfmu1lPPL5as4c3tXTllY8OWlwZ84a0ZV/fbqKJVts00KntoT8MfAa8GjkoVzCM4JMK/DfhVuZ+Nwc+nVqw0sTx5FziKt6W0Jygp8HLxnJ+aNyeeCTlfxhytJWnQRCIeX2yQtJSfDZwG8Lu+uMwbRPS+TmV+dTG4zvriCnWgA3EJ7VUwqgqiuBHIeObVw0ee4mbnhxLsNy2/Pij48gMz3J65D2K8Hv42/nDePK8Xk8+dVafv3mola7YOzlORuZubaYX592WFQm3FjWIT2JP549lCVbS3lk6mqvw/GUU4VXqlW1pm5xkIgkEK7waaLYCzPXc+ebixjXO4vHrsjfbxG3aBLe+m8QqUl+Hpm6mqraIH87b1irWji1rbSKP723lHG9s7gw3zZ68cKEIZ05Y3hXHvx0JccNzGFIt3Zeh+QJp/5qPheRO4BUETkReBV4x6FjGxc8/uUafv3GIo4dkMOTV45uFSf/OiLCrScP4KYT+zN57mZufPmbVtWU/+1bi6gJhPjzuUOtVr2Hfn/mYDLTk/j5f+ZRXh3wOhxPOJUAbgO2AwuBa4H3gDsdOrZxkKrywMcr+eO7S8P7p142ipTE1lcqV0T4+fH9uOPUgby7YCvXPT+X6kDQ67AO6r8Lt/LB4m38vxP7O1JLyTRdh/Qk7rtoBGuLyrn7ncVeh+MJp1YCh1T1MVW9AJgIzNTWPEIXo1SVP723lPs+XsF5h+fywMUjSEpoPV0nDZl4TB9+f9ZgPl66jWuemUNlTfQmgR1l1dz55iIGd83gmqNszn80GN8nmxu+H95B7J04rBXk1CygqSKSISKZQAHwmIjc58SxjTOCIeWONxby2JdruXJ8Hn8/v3X1mx/IFePy+Nt5w5i2agdXPT2Lsihszqsqd0xeyO6qAP+4cETM/NvHghtP6MfhPdpzx+SFrC+Kj9pTdZz6LWwXKeV8LvCsqo4Fjnfo2KaZaoMhfvHyN/xn1kZuOLYPvztjED5fbPU9Xzi6O/dfNILZ60q44omZ7KqMrqJfrxVs4sMl27j55P4M6GxLZKJJot/HAxePxOcTrn2ugIqa6PsC4RanEkCCiHQBLgSmOHRM44Cq2iDXPV/AO/O38KsJA7nl5IExO/B41ohuPHTpSBZu3sUPHp8RNeWkN5VUcPc7SxjTK5Orj+rtdTimAd0z03jwkpGs2LabW15d0KrXmBwKpxLA74EPgFWqOltEegMrHTq2aaLi8houfWwGnywr5A9nDea67/fxOiTXTRjShUmX57NiWxkXT5rB9t3VnsYTCik3vzofVeXeC4bjj7GWVyw5pn9HfjVhIO8u3Mojn8fH+gCnBoFfjVT1vD5yf42qnufEsU3TrNtRzrkPf8XiLaU8fOnhXD4uz+uQWsyxA3N46srRbCiu4KJHp7N1V6VnsUz6cg0z1hTzuzMG0z0zzbM4TONMPKY3Zwzvyt8/WM5HS7Z5HY7rmrUpvIg8yAEWfKnqz5t88AbYpvCNM29DCVc/M4eQKk/8MJ9RPTO9DskTs9cVc9VTs+mQnsiL1xzR4ifggvXFXPjoDE4e3ImHLj08ZrveYk1FTYBLJs1g2be7efHHY2Pi72d/m8I3twUwh/Csn/1dTAt7dc5GLpo0gzbJCUy+bnxM/PI21ei8TF64ZiyllQEufHQ6a1twd7GS8hp++uI8urVP5S/nDbOTfyuSlpTAk1eOpku7FK5+Zg6rCnd7HZJrmtUCaGnWAti/mkCIP767hGenr2d8nywevGQkWW2SvQ4rKizZUsplT8zE7xNeuGYs/Tu5OwsnFFKueXYO01bu4PXrxjM0Nz7LDLR2G4oqOPeRr0lO8PHadeNa9WY9brUA6g7+mYh8uu/FiWObgyssreIHj8/g2enr+fHRvXj2R2Ps5F/PoK4ZvDzxCAS4eNIMFm3e5er7PT5tDZ8uK+SOUwfayb8V65GVxtNXjaa0spaLJ81gy07vxpLc4tQsoJuBWyKX3wDfEO4eMi77cPG3THjgSxZu3sU/LxnJr08bZIuMGtCvU1teuXYcqYl+Ln1sBvM2lLjyPjPWFPG395czYXBnfjg+z5X3MC1nSLd2PHv1GIrLarho0nQ2lVR4HZKjXOsCEpFZqjrGyWNaF9B3KmoC/PHdpbw4cwODu2bwwMUjomIHr2i3qaSCSx+bSVFZNU9eOZqxvbMcO/bG4grOeugr2qcl8uYNR5KRkujYsY235m/cyWVPzKRtcgJP/2iM692ITnO7Cyiz3iVbRE4GrO3rks+WF3LSfV/wn1kbuPZ7vXnj+iPt5N9IuR3SeOXacXRul8IPn5rFtJU7HDluRU2Aic8VUBsM8fgV+XbyjzHDu7fnpYlHUBtSzn/ka2asKfI6JEc41VdQwHczgqYDvwSudujYJqKwtIqfvjiXq56aTXKCj5cnjuP2Uw5r9QXdWlrndim8fO048rLS+dEzs/lkafPme6sqt7y6gOXflvLgJSPp3bGNQ5GaaDK4azveuH48ORkpXPHELF6atcHrkJrNZgG1AmXVASZ9vprHvlxLUJWfHtuXa7/Xm+SE1lfGOZrsrKjhiidnsWRLKf+8ZCSnDu3SpOM8+MlK7v1oBbefMpBrvxf7q63j3c6KGn72n3l8uXIHF+bn8vuzhkR9SfX9dQE5kgBEJAW4HjiK8MKwL4F/q2pVsw9eT7wlgLLqAC/N2sAjU1dTVF7D6cO6cMvJA+iZZXXknVJaVctVT81m3oYS7r1wOOeMzD2k10+eu4mbXpnPOSO78Y8Lh9t8/zgRDCn3f7yCBz9dxYBObbn3wuFRvauY2wngFWA38HzkoUuB9pH9ARwTLwmgsLSKZ6av47np6ymtCjC+Txa/mjCQ4d3bex1aTCqvDnDNM3OYsbaIP58zlIvH9GjU66at3MGVT81iTK9Mnr5qjHXFxaHPlhfyq9cWUFxew8+O68dPvh+dLXO3E8ASVR10sMeaK5YTQCAYYury7bw0eyOfLS8kpMqEwZ2ZeExvRvbo4HV4Ma+qNsi1zxXw+Yrt3HXGIK488sAbtizZUsqFj04nt0Mqr/xknA36xrGdFTX89q3FvD1/C3lZadx52iCOPywnqlqDbieA54F/qeqMyP2xwA2qekWzD15PrCWAqtogX63awfuLvuXjpdsoqaglu00y543qxsWje9DLtgxsUdWBID97cR4fLtnGbacM5Cf76c/fVFLBeY98jU+EydePb9UrRI1zvlixnbvfWczq7eUc0TuTG4/vz7g+zk0zbg63E8BSYABQNyzeA1gOBABV1WHNfhNafwIorapl0aZdzFhbzIw1RXyzcSc1gRBtUxI4bmAOpw3twrEDc0i0hVyeqQ2GuOmV+bwzfws3Ht+PX5zQb69vclt3VXLRozPYWVHDqz8Zb5u7mL3UBkO8MGM9D09dTeHuavJ7duDycT2ZMKSzp11DbieAngf6uaqub/ab0DoSQE0gxNZdlWwqqWRTSQUbiitY/m0Zy74tZVNJeCm5T8IrDI/oncWRfbMZ1zvL+o+jSDCk/Or1BbxWsIlrv9eb2yaEN9EpLK3iokkz2LG7muevGWtjMma/qmqDvDRrA09+tY4NxRVkpidx7shunDK0CyO7t2/xHflcTQBNJSITgAcAP/C4qv7lQM9vyQSgqpRWBdi+u4rC0mq27a6iqKyG0qoApZW1lFbVUloZiFzXsrsqfHt31d7byfl9Qq/sdAZ2bsthXTIY1DWDUT07WJ9xlAuFlN++vYjnZ2zginE9OXN4V256ZT5FZdU8e/WYuK6yahovFFKmrdrBizM38PHSbQRCSnabZI4fmMPY3pnk98yke2aq6+MFUZcARMQPrABOBDYBs4FLVHXJ/l7T1ARQEwhRFQhSXRuiOhCkOhBiV2UtRWU1FJVVU1Rew/bd1RTWO9kXllZTHQg1EDe0SU4gIyWRjNREMlISIteJZKQm0D41ia7tU8jtkEZuh1Q6t0uxLp1WSlX547tLeWLaWgA6Z6Tw8GWHc7gNypsm2FVZy9TlhXy4eBtfrNjO7urwl8XsNsn079SGPh3b0LtjOp0yUujYNpms9CRSk/wk+X0kJ/pJTfQ3eUe5aEwA44C7VPXkyP3bAVT1z/t7TVMTwK/fWMgLMw+8aq9NcgI5GcnktE0mp20KnTLC1zkZyXRsm0ynjBSy2yTTNjkh5jZUN/unqny+Yjsbiis4fVhXMtOTvA7JxIBgSFmxbTdz1pcwf+NOVhWWsbqwbE9SaMhTV43m2AE5TXq//SWAhCYdzRndgI317m8Cxu77JBGZCEwE6NGjcfOz93XKkC70yk4nOcFHcoKfpAQf7VITyWqTRFabcKaN9pV8xhsiwveb+EdnzP74fcJhXTI4rEsGlx8RHkJV1T29Edt3V1NcXkNVbbjHojoQpK8LJUa8TACNoqqTgEkQbgE05RhH9cvmqH7ZjsZljDFOEhGy2yST3SaZw5pWleSQedk5vRnoXu9+buQxY4wxLcDLBDAb6CcivUQkCbgYeNvDeIwxJq54PQ30VOB+wtNAn1TVew7y/O1AU9cUZAPOFH9vPewzxwf7zPGhOZ+5p6p23PfBVlUOujlEZE5Do+CxzD5zfLDPHB/c+Mw2Qd0YY+KUJQBjjIlT8ZQAJnkdgAfsM8cH+8zxwfHPHDdjAMYYY/YWTy0AY4wx9VgCMMaYOBUXCUBEJojIchFZJSK3eR2P20TkSREpFJFFXsfSEkSku4h8JiJLRGSxiNzodUxuE5EUEZklIvMjn/lur2NqKSLiF5F5IjLF61hagoisE5GFIvKNiDhaDz/mxwCaUna6tRORY4Ay4FlVHeJ1PG4TkS5AF1WdKyJtgQLg7Bj/PxYgXVXLRCQRmAbcWLctaywTkZuAfCBDVU/3Oh63icg6IF9VHV/4Fg8tgDHAKlVdo6o1wEvAWR7H5CpV/QIo9jqOlqKqW1V1buT2bmAp4WqzMUvDyiJ3EyOX2P42B4hILnAa8LjXscSCeEgADZWdjumTQzwTkTxgJDDT20jcF+kK+QYoBD5S1Zj/zIRLx9wK/O9uTbFLgQ9FpCBSHt8x8ZAATJwQkTbA68AvVLXU63jcpqpBVR1BuJLuGBGJ6X4JSwoAABjrSURBVO4+ETkdKFTVAq9jaWFHqerhwCnADZEuXkfEQwKwstNxINIP/jrwgqpO9jqelqSqO4HPgAlex+KyI4EzI33iLwHHicjz3obkPlXdHLkuBN4g3K3tiHhIAFZ2OsZFBkSfAJaq6j+8jqcliEhHEWkfuZ1KeJLDMm+jcpeq3q6quaqaR/jv+FNVvczjsFwlIumRiQ2ISDpwEuDY7L6YTwCqGgB+CnxAeHDwFVVd7G1U7hKR/wDTgQEisklErvY6JpcdCVxO+BvhN5HLqV4H5bIuwGcisoDwl5yPVDUupkXGmU7ANBGZD8wC3lXV9506eMxPAzXGGNOwmG8BGGOMaZglAGOMiVOWAIwxJk4leB3AocjOzta8vDyvwzDGmFaloKBgR0N7AnuaAETkSaBuccdBF7Hk5eUxZ46jtZCMMSbmicj6hh73ugvoaWJ/8YoxxkQlT1sAqvpFpHaLaSZVZf6mXQSCIVIS/aQk+klN8pOa6Ccl0Udygh+fQHjN1KEJhZSgKiFVQiEIqlIbCFEbDFETDFEbVGrq3w+Er1MS/eT37NCk9zTGhO2qqGXO+mKGd29PdptkR48d9WMAkeJHEwF69OjhcTTRa9HmUs5+6KuDPk8E/CL4RPD5wCcSvu+TyAk+crKPnOiDoeatE5nys6MY0q1ds45hTDxbtb2Mq5+Zw9NXjeb7A3IcPXbUJwBVnURkM+T8/HxbtbYfu6trAbjj1IHkZaVTWRukujZEZW1wz+1Q3bd4VYKhcKshuOeEr4gIfl/44hPB72NPcqi7rns80e8j0e8jKcFHUr3biX4hye9j+bbd3P3OEsqrAx7/yxjTuoUii3X9Pudb0lGfAEzj1C3oHtmjA6PzMr0NBvBFflmb2YAwJu4Fgu4lAK8HgY1D6r4lREtve10cVmrEmObZ0wJwYSzN0wQQh0XLXFP3TTtaBlytBWCMM+rG4RL8MdYFpKqXePn+saTum7YLrcQmqYtDY3+XQmNcVZcAfLHWAjDO0ShrAdTFYS0AY5pnTwvA5/zp2hJAjAhFWQugLoyQjQEY0yyBuhaAC2drSwAxou6bthvNxKaoi8MGgY1pnrovUW60ABo1BiAiHYCuQCWwTlVDjkdimqXuRBsl5/96CcDjQIxp5epaAH4Xvq7vNwGISDvgBuASIAnYDqQAnURkBvCwqn7mfEimKfbMAoqSiaB1icjGAIxpntCeBNCyLYDXgGeBo1V1Z/0fiEg+cJmI9FbVJxyPyhyyPbOAoqRT77sEYBnAmObY0wJwoXm/3wSgqice4GdzAKvLHEVsDMCY2LSnBeDCOoCDfl8UkXv3uZ8gIo7tSm+cUTffPlpmAdkYgDHOcLMF0JgOgxtFpLTuAhQC1Y5HYprlu7726MgANgZgjDOCHheDW6iqIx1/Z+OoaF0JbGMAxjRPMBiedOlVAvBFpoHu9e6qWux4NKbJvlsIFh0Z4LuVwJYAjGmOSDFQzxLAQKCAvROAAr0dj8Y02XelILyNo060JCJjWrtgyNsWwG9V9a+Ov7NxVLTNArJSEMY4I9IDREJL7gdQt1fv/k7+EpbreESmSUJRuhI4ZGvGjWmWuhaAG1/uDtQC+LuI+IC3CHcB1a0E7gscCxwP/A7Y5HhU5tBFWwvABoGNcYSbLYADLQS7QEQGAT8AfgR0ASqApcB7wD2qWuV4RKZJoq4FEPlltdO/Mc0T3LPKv4XHAFR1CfBrx9/VOC5axwBsJbAxzRMMhVz59g9WDjpmRF0LwDaEMcYRwZA73/7BEkDMqDvPRksLYM+WkJYAjGkWawGYg9qzH4DHcdSxhWDGOCMYcqcOEDSuGJyIyGUi8tvI/R4iMsaVaEyThVzcOLopZE8LwBKAMc0RDIU87QJ6GBhHeGMYgN3AQ65EY5os2gaBbQzAGGcEVV3rAmrMSuCxqnq4iMwDUNUSEUlyJRrTZFFWDLTeGIBlAGOaIxhST1sAtSLiJ3KOEZGOgK3vjDLRVg1UrAVgjCOCIfdaAI1JAP8E3gByROQeYBrwJ1eiMU0WfdVAw9c2CGxM8wRC6trf9UG7gFT1BREpIFz6QYCzVXWpK9GYJovWMQA7/xvTPKGQkuDCdpDQuFlAfYC1qvoQsAg4UUTauxKNabLoKwcdvlYrBmFMswRC6t00UOB1ICgifYFHge7Ai65EY5rMVgIbE5tCqq7sBQCNSwAhVQ0A5wL/UtVbCBeGM1FEo2wMoI6NARjTPIGgtwmgVkQuAa4ApkQeS3QlGtNkNgZgTGzyugVwFeGFYPeo6loR6QU850o0psn2jAF4G8Yetg7AGGcEQu4lgMbMAloC/Lze/bWAbREZZaJtDMDWARjjjKCXCUBE+gF/BgYR3hEMAFW1TeGjiKoi8t2J12s+WwdgjCNC6u0soKeAR4AA4a0gnwWedyUa02QhjZ7uH7AWgDFO8XoQOFVVPwFEVder6l3Aaa5EY5pMcW+1YFP5BBsFNqaZ3BwEbkwxuOrI5vArReSnwGagjSvRmCYLafTMAKojItYCMKaZAiElJdG7FsCNQBrhgeBRwOXAD514cxGZICLLRWSViNzmxDHjVSgyBhBNfGJjAMY0V8jjWUCzIzfLCE8JdUSkwuhDwInAJmC2iLwdmXVkDpFq9MwAqmMtAGOaL+BiNdDGzALqD9wC9Kz/fFU9rpnvPQZYpaprIu/zEnAW4HgCmLehhE0llZwxvKvTh44aqtE5BmC1gPZPVQmElGAoch1UAqHQnvuByP2QKiENt6ZCofC1avjftu5xrXtOKHxdd/9/nhN5fd1zlL3v7/seoYaeE6p/zL2fo5EYvP5fr/tLqPuTqD87bs9jkWeJNPD8ej/77nWy59jfPe+7n+37GA0+/+Dviex93JLyGrq1T23Epz50jRkDeBX4N/AYEHTwvbsBG+vd3wSM3fdJIjIRmAjQo0ePJr3R5LmbmbJgS0wngKgcA0DiYgw4FFK27KpkVWEZ63aUs6OshqLyaorKathZWUtVbZDKmiAVNcHw7drwtbWOTGMdOzDHleM2JgEEVPURV969EVR1EjAJID8/v0l/Mgl+IRCM7b+2qB0DiNGzXCikfLa8kLe+2cK0VTsoLq/Z8zOfQGZ6MlnpSbRLSyQzPYnU9n5Sk/ykJoYvKYl+EvxCgk/w+3yRayHBH7mu97jPJ/hF8Ml33zR9kfu+ve43/Byp99z6zz/oc3zh76T7fY4vchxo8LheqVt9rnvuf9cSrf+FpO72vj/T/RyDBp7/3c+13mv3fh66z3EiP6v/fnXH2PcLU13sLd4CEJHMyM13ROR6wpvCVH8XmBY38703E64sWic38pjjEnxCIEZPRHU0ytYBQPgkEIv/7BuKKvjZS/OYv3En2W2S+F7/juTndaBfTlt6ZaeTlZ7k2hZ+pjHs376xDtQCKCCcnOr+NW+p9zMFmrsSeDbQL1JbaDNwMXBpM4/ZoAS/j0AotnexVHVv39CmkhgcA1i3o5xzHv6KYEj5+/nDOHtkNxL9jZlMZ0z02W8CUNVebr6xqgYi6wo+APzAk6q62I33SvQJtUGNlEuIrpOkU6JyDEBiawxAVbnltfko8NZPj6JXdrrXIRnTLI2ZBZQCXA8cRfib/5fAv1W1qrlvrqrvAe819zgH4/eFv6GFFFzaWc1zIdWo2RC+TqytA5i+pojZ60r40zlD7eRvYkJj2q7PAoOBB4F/RW63qnLQdftp1gZjtxsoUgvU4yj25ouxFsDkuZtpm5zAuYd38zoUYxzRmFlAQ1R1UL37n4lIq1qslRhJAMFYHJGM0ChsAYQXgsXOv/mXK7dz7MAcUhL9XodijCMa0wKYKyJH1N0RkbHAHPdCcl5dF1AsTwUNhaJxDCB2qoFuK61iW2k1I3u09zoUYxzTmBbAKOBrEdkQud8DWC4iCwFV1WGuReeQuhZAbQzPBIrWdQCxsiPYgk27ABiW287jSIxxTmMSwATXo3BZQqQFENNdQERfCyCWxgDW7SgHoF+nth5HYoxzGlMMbn1LBOKmukJKsTwIHJ0tgNgZA9hRXk2S30fb5MZ8ZzKmdYiLFSx1s4BieQxAo3AdAMTOGEBxWQ2Z6Ukxu47ExKc4SQCRQeBYORs1ICpbAL7YGQMoLq8hq02S12EY46hGJQAR6SkiJ0Rup4pIq+oIresCiuVyENHYAvCJxEwhiKLycAvAmFhy0AQgIj8GXgMejTyUC7zpZlBO25MAYrgLKCpbADE0BlBUXk2WJQATYxrTArgBOBIoBVDVlYA7xaldkhgHXUDR2AIQYm0MINnrMIxxVGMSQLWq7il2LiIJ0Lpa9v49LYDY7QIKqUZZIYi6hWCt6lelQVW1QcprgjYGYGJOYxLA5yJyB5AqIicS3iHsHXfDctZ3tYBa/8lof6KxBeAL14Nu9eo2e7EuIBNrGpMAbgO2AwuBawlX77zTzaCcVtcFFMsLwaJxDCBWWgBFZeEEYIPAJtY0ZiFYiPB+wI9FdgnL1VY2t6+uCyi2S0EQdXPUY2UQuKg8vBGedQGZWNOYWUBTRSQjcvIvIJwI7nM/NOckxkExuOitBup1FM33XReQDQKb2NKYLqB2qloKnAs8q6pjgePdDctZCXvKQcduCyA6awERE7WA6hJAprUATIxpTAJIEJEuwIXAFJfjccV3tYBi4Gy0H9G4I5jESDXQHWU1JPrF6gCZmNOYBPB7wvv2rlLV2SLSG1jpbljOSoiLQWCItlHgWBkDKC6vtjpAJiY1ZhD4VcJTP+vurwHOczMop8VDNVAbA3BPcXmN9f+bmLTfBCAiD3KAWdyq+nNXInLBnmqgsXA22o/oXAcQE8sAKLJCcCZGHagF0Kq2fTyQug1hYjkBROUYALExBlBUVkOPzDSvwzDGcftNAKr6TEsG4qZEf7yUgoiuDBA7YwBWCdTEpoOOAYjIZzTQklfV41yJyAX+uKgGGnVjwDGxJWR1IEhZdYDsNjYGYGJPY+a13VzvdgrhAeCAO+G4Ix6qgaLgi7I+oFgoBbFnDYC1AEwMaswsoIJ9HvpKRGa5FI8rEuKkGmhClDUBwgnA6yiax+oAmVjWmC6gzHp3fcAooJ1rEbmgrguoojbI1l2VlJTXsrOihpKKWkoqavbcrqgJkOT3kZLoJz05gc7tUshtn0q/Tm3p2Da6uwDCg8DRlQB8Iq1+9fXWXVUA5ET5/78xTdGYLqACwmMAQrjrZy1wtZtBOU1ESPL7eGTqah6ZurrB56QlhU/6NYEQVbVBqgN7n7i6tkthZM8OfK9/R44dkBN1CSEK14HFxBjAuh3lAPTKTvc4EmOc15guoF4tEYjb/n7BMDaVVNIhLYkOaYm0T0uiQ3oiHdKSaJ+WSHKCf6/n1wRCbN1VyaaSSpZuLWX+pl3MWlvEuwu2AjCudxYX5OdyypAupCb5G3rLFhWKwnUAsTAGsLaofM/vizGxpjFdQCnA9cBRhL9ofgn8W1WrXI7NUWeN6HZIz09K8NEzK52eWekc2TcbCM9pX7K1lI+XFPL63E3c9Mp8fvvWYs4flcvVR/Wiu4dzxTUq9wNo/SuB124vt2//JmY1pgvoWWA38GDk/qXAc8AFbgUVrUSEwV3bMbhrO352XF9mrSvm5dkbeWHmep6dvo5ThnZh4tG9Gd69fYvHFp1jAK17IVgopCz7tpQTB3XyOhRjXNGYBDBEVQfVu/+ZiCxxK6DWwucTjuidxRG9s/jVhIE8/fU6Xpi5nncXbGVMr0wmHt2b4wbmtNjUzHApiBZ5q0bzibTqUhCLt5RSUlHLuD5ZXodijCsaUw10rogcUXdHRMYSQ2UinNC5XQq3nTKQ6bcfz52nHcbmkkqueXYOJ9z3Of+ZtYGq2qDrMUTnjmCtewzgo6XbAPZ0ARoTaxqTAEYBX4vIOhFZB0wHRovIQhFZ4Gp0rUyb5ASuObo3n9/yff55yUjSkvzcPnkhR/31Ux74eCXbSt0bNlHVKCsEASC01lmgu6tqeWHGeo4bmENO2xSvwzHGFY3pAprgehQxJsHv48zhXTljWBemrynisS/WcN/HK3jgkxV8f0AOF+bnctzATiQlNCb/Nk60jgG0xhZAIBjittcXUlJRw8+P7+d1OMa4pjHTQNe3RCCxSEQY3yeb8X2yWbujnNcKNvJawSZ+8nwhGSkJHDcwhxMGdeJ7/TvSNiWxWe+lCj7n8okjoi0hHUwopMxYW8TfP1jOvA07uePUgYzwYEDfmJbiyR53InIBcBdwGDBGVWN+TKFXdjq3nDyQm04cwBcrt/Pugq18uqyQN7/ZQqJfGNm9A6PyOjA6rwOjemTSLu3QEkJINerGAKJ5HUBFTYDtu6vZXFLJsm93s3RrKV+s3M620mpy2iZz/0UjOHvkoU0dNqa18WqT00WEN5l/1KP394zfJxw7IIdjB+QQDClzN5Tw8dJtzFxTzGNfrOGRqeETZrf2qQzo3JYBndvSt2MbcjukkpuZRqe2yXu2uKxPlagbA/A5sA5AVakOhKiuDVEVCO65rlutXVUbfqy8JkBFTZDy6u+uy2sCVFSHq3lW1AQprwmwq6KWwt3VlFXvXc8wMz2Jsb0yOXFQJ04d2oWURO8X9xnjNk8SgKouheibtdLS/D5hdF4mo/PC5ZYqa4J8s3EnczeUsPzb3azYtpsvV27fazN7v0/onJFCVpskOqQlkZkevi4qr4m6LheRcDXN+z5asefkXb3XSTx8v8Hr2iBVgRA1gaaNIicn+EhPTgiX+EhKID3ZT5vkBLq2S+WY/snkZCST0zaFLu1S6N8Kaj0Z4wavWgCNJiITgYkAPXr08Dgad6Um+RnXJ2uveee1wRAbiyvYvLOSzSXh0hRbdlZSXFFDSXkNq7eXUVJeQ3lNMOp2reqZlcaUBVt54JOVJCX4SE4IF9qru05J9JGcEL5ul5q41/3kBD/JiT5S6l3Xf+2e68jP0pLDJ/q0ZD9pif4GW0nGmL2JWys1ReRjoHMDP/q1qr4Vec5U4ObGjgHk5+frnDkxP1zQJDWBkKOzipxSVRskye+Lur0KjIknIlKgqvn7Pu5aC0BVT3Dr2OZ/RePJH7C+dGOiWHSeNYwxxrjOkwQgIueIyCZgHPCuiHzgRRzGGBPPXBsDcIOIbAeaujAtG9jhYDitgX3m+GCfOT405zP3VNWO+z7YqhJAc4jInIYGQWKZfeb4YJ85PrjxmW0MwBhj4pQlAGOMiVPxlAAmeR2AB+wzxwf7zPHB8c8cN2MAxhhj9hZPLQBjjDH1WAIwxpg4FRcJQEQmiMhyEVklIrd5HY/bRORJESkUkUVex9ISRKS7iHwmIktEZLGI3Oh1TG4TkRQRmSUi8yOf+W6vY2opIuIXkXkiMsXrWFpCZDvehSLyjYg4Wgwt5scARMQPrABOBDYBs4FLVHWJp4G5SESOAcqAZ1V1iNfxuE1EugBdVHWuiLQFCoCzY/z/WIB0VS0TkURgGnCjqs7wODTXichNQD6Qoaqnex2P2yJ7seerquML3+KhBTAGWKWqa1S1BngJOMvjmFylql8AxV7H0VJUdauqzo3c3g0sBWJ6Oy8NK4vcTYxcYvvbHCAiucBpwONexxIL4iEBdAM21ru/iRg/OcQzEckDRgIzvY3EfZGukG+AQuAjVY35zwzcD9wKNG2noNZJgQ9FpCCyP4pj4iEBmDghIm2A14FfqGqp1/G4TVWDqjoCyAXGiEhMd/eJyOlAoaoWeB1LCztKVQ8HTgFuiHTxOiIeEsBmoHu9+7mRx0wMifSDvw68oKqTvY6nJanqTuAzYILXsbjsSODMSJ/4S8BxIvK8tyG5T1U3R64LgTcId2s7Ih4SwGygn4j0EpEk4GLgbY9jMg6KDIg+ASxV1X94HU9LEJGOItI+cjuV8CSHZd5G5S5VvV1Vc1U1j/Df8aeqepnHYblKRNIjExsQkXTgJMCx2X0xnwBUNQD8FPiA8ODgK6q62Nuo3CUi/wGmAwNEZJOIXO11TC47Eric8DfCbyKXU70OymVdgM9EZAHhLzkfqWpcTIuMM52AaSIyH5gFvKuq7zt18JifBmqMMaZhMd8CMMYY0zBLAMYYE6csARhjTJyyBGCMMXHKEoAxxsQpSwDG7IeItBeR6yO3u4rIa17HZIyTbBqoMfsRqSs0JR4qqpr4lOB1AMZEsb8AfSIF11YCh6nqEBG5EjgbSAf6Af8HJBFejFYNnKqqxSLSB3gI6AhUAD9W1ZherWtaF+sCMmb/bgNWRwqu3bLPz4YA5wKjgXuAClUdSXgF9hWR50wCfqaqo4CbgYdbJGpjGslaAMY0zWeRvQd2i8gu4J3I4wuBYZHKpOOBV8OligBIbvkwjdk/SwDGNE11vduhevdDhP+ufMDOSOvBmKhkXUDG7N9uoG1TXhjZj2CtiFwA4YqlIjLcyeCMaS5LAMbsh6oWAV+JyCLg7004xA+AqyOVHBcT41uRmtbHpoEaY0ycshaAMcbEKUsAxhgTpywBGGNMnLIEYIwxccoSgDHGxClLAMYYE6csARhjTJz6/2xgs6NomD7nAAAAAElFTkSuQmCC\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", " oct_result.optimized_controls[0], oct_result.optimized_controls[1], tlist)\n", "print(\"Stokes pulse amplitude and phase:\")\n", "plot_pulse_amplitude_and_phase(\n", " oct_result.optimized_controls[2], oct_result.optimized_controls[3], tlist)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We check the evolution of the population due to our optimized pulses." ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:38:51.038824Z", "start_time": "2019-02-25T17:38:48.932205Z" }, "attributes": { "classes": [], "id": "", "n": "18" } }, "outputs": [], "source": [ "opt_dynamics = oct_result.optimized_objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm, e_ops=[proj1, proj2, proj3])\n", "opt_states = oct_result.optimized_objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T17:38:51.493035Z", "start_time": "2019-02-25T17:38:51.044798Z" }, "attributes": { "classes": [], "id": "", "n": "19" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEGCAYAAAB/+QKOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3deXhddZ3H8fc3N7lpkqbpkrRN050udKEbocjagoJgkbLIJrKpMKOizjDo6KCiVYZRcVQEQRQYqwgiIqtsQmsFCzTdN7rSLaU0XdI9+3f+uKcQQtretjk5yb2f1/OcJ+eec+7N58LTfnq23zF3R0REpKmMqAOIiEjbpIIQEZFmqSBERKRZKggREWmWCkJERJqVGXWAllJYWOj9+/ePOoaISLsye/bsLe5e1Ny6lCmI/v37U1ZWFnUMEZF2xczWHmidDjGJiEizVBAiItIsFYSIiDRLBSEiIs1SQYiISLNCKwgze8DMNpvZogOsNzO708xWmtkCMxvXaN01ZrYimK4JK6OIiBxYmHsQ/wecc5D15wKDg+kG4B4AM+sK3AqcCIwHbjWzLiHmFBGRZoR2H4S7zzCz/gfZZDIw1RPjjb9uZp3NrBiYCLzk7tsAzOwlEkXzcBg599bUce/0VYkXZhjvzSZ+Yo3mGy3fPxMs2//OxHzzy9/fvrnf8/5nNv6MppmyMjKIZwZTrNF88DonHqMgJ4uCnCyyYjqCKCJHLsob5UqA9Y1ebwiWHWj5h5jZDST2Pujbt+8RhdhXU88vpq0kFR+LkRuP0Tkni045WfTo1IGSLjmUdM6hd5cchvbMZ2BhR+KZKhERaV67vpPa3e8D7gMoLS09or/iu3XM5u3bJzX93OAneKNl78/D/leNi6Xp8gO9d/+LZLb19zfGgdr6BmrqGqgJflbXBa+D+araenZW1VK5t5Yd+xJT5d5a3t1ZxcLyHWzbU/Ne3qyYMah7Pif078JJA7vxkYHd6JIXP5L/jCKSgqIsiHKgT6PXvYNl5SQOMzVePr3VUvHBQz2NlrZmhNDsralj3ba9LNu0i7c27WJR+Q7+VLaBqTPXYgbj+3flvNG9mHRcMV1VFiJpzcJ85GhwDuIZdx/ZzLpJwI3AJ0ickL7T3ccHJ6lnA/uvapoDHL//nMSBlJaWusZiOjI1dQ0sLK9kxvItPLNgI6sq9hDPzOCCMb247pQBDCvuFHVEEQmJmc1299Jm14VVEGb2MIk9gULgXRJXJmUBuPu9lvhn+l0kTkDvBa5z97LgvZ8F/iv4qNvc/cFD/T4VRMtwd5a+s4vfv7GWx+dsoKq2gUnHFfO1jw+lf2Fe1PFEpIVFUhCtTQXR8ir31vDAa2v4zT9WU1PXwGdPHcBNZw2hQ1Ys6mgi0kIOVhC6hEUOqHNunJvOGsL0r03k4nG9uW/Gaj5x5z+Ys2571NFEpBWoIOSQuud34IefGsXvPjeeqpp6Lrl3Jg++9japsvcpIs1TQUjSThtcxPP/fjpnDO3O955ewtceW0BVbX3UsUQkJCoIOSydOmRx31XH85WPDuax2Rv47P/NYm9NXdSxRCQEKgg5bBkZxk1nDeEnl4zm9dVbufr+N9lVVRt1LBFpYSoIOWIXH9+bX1wxjnnrK/nM/W+yp1p7EiKpRAUhR2XSqGLuvnIcCzdU8sWH5lBb3xB1JBFpISoIOWofH9GT/77wOP6+vIJvPr5QVzeJpIh2PViftB2Xj+/Lpp1V/OxvKxhQmMeXzhgUdSQROUoqCGkxX/3oYN7esoc7XlzGcSUFnD6kKOpIInIUdIhJWoyZcftFxzG0Rz5feWQu67ftjTqSiBwFFYS0qNx4Jvd+5njqG5wv/WEONXU6aS3SXqkgpMX1L8zjRxePYsGGHdz58oqo44jIEVJBSCjOPa6YS47vzS+nr2TWmoM+ykNE2igVhITm1vNH0LtLLv/+x3m601qkHVJBSGg6Zmfy08tGU165jx89vyzqOCJymFQQEqrj+3Xl2pP78/s31jJ7rQ41ibQnKggJ3c1nD6VXQQ7/+eeFVNdpeHCR9kIFIaHLy87kBxeMZOXm3dwzfVXUcUQkSSoIaRVnHNudT47uxd3TVrJy8+6o44hIElQQ0mq+c95wOmTF+N7TizWgn0g7oIKQVlOUn81NZw3hHyu28MLid6OOIyKHoIKQVnXVR/oxpEdHfvDsEj3PWqSNU0FIq8qMZfDd80ewYfs+fvX31VHHEZGDUEFIqzv5mEImHVfML6evZMN2jfgq0lapICQS/zVpGGZw27NLo44iIgeggpBIlHTO4UsTB/Hcok38c9WWqOOISDNUEBKZ608fSEnnHKY8vYT6Bl32KtLWqCAkMh2yYtwyaRhvbdrFI7PWRR1HRJpQQUikzh3Zk/EDunLHC8vYsVdDgou0JSoIiZSZcesnh1O5r5af6+lzIm2KCkIiN6JXAZef0JepM9donCaRNiTUgjCzc8xsmZmtNLNvNLO+n5m9bGYLzGy6mfVutO5HZrbYzJaa2Z1mZmFmlWj9x9lDyMmK8YNnl0QdRUQCoRWEmcWAu4FzgeHAFWY2vMlmdwBT3X0UMAW4PXjvycApwChgJHACMCGsrBK9wo7ZfPVjg5m+rIJpb22OOo6IEO4exHhgpbuvdvca4BFgcpNthgOvBPPTGq13oAMQB7KBLECju6W4q0/qz8DCPL7/7BJq6hqijiOS9sIsiBJgfaPXG4Jljc0HLgrmLwTyzaybu88kURjvBNML7v6hW27N7AYzKzOzsoqKihb/AtK64pkZfOu8Yayu2MPUmWuijiOS9qI+SX0zMMHM5pI4hFQO1JvZIGAY0JtEqZxpZqc1fbO73+fupe5eWlRU1Jq5JSRnDO3OhCFF/PzlFWzdXR11HJG0FmZBlAN9Gr3uHSx7j7tvdPeL3H0scEuwrJLE3sTr7r7b3XcDzwEnhZhV2ggz49vnDWNfTT0/eWl51HFE0lqYBTELGGxmA8wsDlwOPNV4AzMrNLP9Gb4JPBDMryOxZ5FpZlkk9i40qluaGNQ9n6tO6scjb65jycadUccRSVuhFYS71wE3Ai+Q+Mv9UXdfbGZTzOz8YLOJwDIzWw70AG4Llj8GrAIWkjhPMd/dnw4rq7Q9//bRIRTkZDHlGT2eVCQqlip/+EpLS72srCzqGNKCfv/6Wr71xCLuuXIc5x5XHHUckZRkZrPdvbS5dVGfpBY5oCvG9+XYnvnc9telejypSARUENJmxTKM73xyOBu27+P+V9+OOo5I2lFBSJt28jGFnDOiJ3dPW8mmHVVRxxFJKyoIafNumTSM+gbnO08u0glrkVakgpA2r0/XXP7j7CG8uORdnl34TtRxRNKGCkLahc+eMoDRvQu49cnFbNtTE3UckbSggpB2ITOWwY8+NZqdVbVMeXpx1HFE0oIKQtqNoT3z+eLEQTwxbyMvLdHgviJhU0FIu/KlMwYxolcnvv7YfN7dqauaRMKkgpB2JZ6ZwZ1XjKWqtoGbHp1HQ4OuahIJiwpC2p1jijry3fOH89rKrdw7Y1XUcURSlgpC2qVLS/tw3qhi7nhhGf9YoYdFiYRBBSHtkpnxw4tHMbh7Pjf+YS5rt+6JOpJIylFBSLuVl53Jr68uxQyun1rGrqraqCOJpBQVhLRrfbvlcvenx7G6Yg83TJ2tUV9FWpAKQtq9UwYVcsclo5m5eitffngudfUNUUcSSQkqCEkJF4wt4Xvnj+ClJe9y06PzqVVJiBy1zKgDiLSUa07uz96aen74/Fvsrq7j7k+PIyceizqWSLulPQhJKV+YeAy3XTiSacs2c9X9b7Bld3XUkUTaLRWEpJwrT+zHXVeMY2H5Ds6781Vmr90edSSRdkkFISlp0qhi/vyFk4lnZnDZr2Zyz/RVOnktcphUEJKyRpYU8PSNp/KxYT344fNvcf5dr7FgQ2XUsUTaDRWEpLSC3Czuvep47v3MOLbsrub8u17jS3+Yw8rNu6KOJtLm6SomSQvnjCzm5EGF3Pf31Tz42ts8t/AdPjqsB58+sS+nDy4ilmFRRxRpcyxVHgJfWlrqZWVlUceQdmDbnhruf3U1f5y1ni27a+jZqQNnj+jBWcN7UNqvqy6NlbRiZrPdvbTZdSoISVc1dQ28uGQTT83byIwVFVTVNpCZYYzo1YmxfbswtGc+AwvzGFCUR2FeNhnay5AUdLCC0CEmSVvxzAzOG9WL80b1Yl9NPTNXb6FszXZmr93OI7PWUVX7/lVPmRlGt45xCjtm0zUvTm48Rk5WjJx4jA5ZiSkrlkF2ZgZZMSMrlkE8MyPxs9F8VsyIZyaWNbdN59wsOmRpD0bahkMWhJkNAL4M9G+8vbufH14skdaVE49x5rE9OPPYHgDUNzgbK/exesse1mzZw7s7q9iyu5otu2vYtqeGil3V7KutZ19NPftq66mqrae2vmX2xgs7ZlPSJYc+XXIYVtyJUb0LOK6kgM658Rb5fJFkJbMH8QRwP/A0oAvJJS3EMow+XXPp0zWXCUOKknqPu1Nb79TWN1BT15D4+d68N3nd8N52NfVObV1i3dbd1WzYvo/yyn3M31DJMwveee/zR/TqxBlDu/PxET0ZWdIJMx3yknAlUxBV7n5n6ElE2jkzI56ZOISUl90yn7ljby2LNu5gztrtzFhRwS+nr+SuaSs5tmc+l5/Qh0tK+5CXrSPFEo5DnqQ2s08Dg4EXgfcGtnH3OeFGOzw6SS3poHJvDc8seIdHy9azYMMOuuXF+ZcJA7nqI/119ZUckaO6isnMbgeuAlbx/iEmd/czWzTlUVJBSLqZs247P31pOf9YsYWSzjlMmTyCjw7rEXUsaWcOVhDJ3El9CTDQ3Se4+xnBlFQ5mNk5ZrbMzFaa2TeaWd/PzF42swVmNt3Mejda19fMXjSzpWa2xMz6J/M7RdLFuL5d+N3nTuSPN3yEvOwYn/ttGTc9Oo891XVRR5MUkUxBLAI6H+4Hm1kMuBs4FxgOXGFmw5tsdgcw1d1HAVOA2xutmwr82N2HAeOBzYebQSQdnDiwG898+TS+cuYg/jK3nPPvepVVFbujjiUpIJmC6Ay8ZWYvmNlT+6ck3jceWOnuq929BngEmNxkm+HAK8H8tP3rgyLJdPeXANx9t7vvTeJ3iqSleGYGN509lIc+dyI79tVy8T3/ZNaabVHHknYumYK4FbgQ+G/gJ42mQykB1jd6vSFY1th84KJg/kIg38y6AUOASjN73MzmmtmPgz2SDzCzG8yszMzKKioqkogkktpOHlTI4184ha65ca78zRv8fbn+XMiRO2hBBH8pf9fd/950aqHffzMwwczmAhOAcqCexOW3pwXrTwAGAtc2fbO73+fupe5eWlSU3LXqIqmub7dcHvvCyQwq6sgNU8v456otUUeSduqgBeHu9UCDmRUcwWeXA30ave4dLGv8+Rvd/SJ3HwvcEiyrJLG3MS84PFVH4ma9cUeQQSQtdc2L8/vPn0i/brl8/rdlLN64I+pI0g4lc4hpN7DQzO43szv3T0m8bxYw2MwGmFkcuBz4wLkLMys0s/0Zvgk80Oi9nc1s/27BmcCSJH6niAS65sX5/edOpHNOFp//bRmbd1ZFHUnamWQK4nHg28AMYHaj6aCCf/nfCLwALAUedffFZjbFzPaP4zQRWGZmy4EewG3Be+tJHF562cwWAgb8+jC+l4gA3Tt14DfXnMCOfbVc/7vZ1NRptBxJXlLDfQd7AEOCl8vcvTbUVEdAN8qJHNhzC9/hCw/N4fOnDuBb5zW92lzS2VHdKGdmE4EVJO5p+CWw3MxOb9GEIhKqc48r5qqP9OM3r77NK2+9G3UcaSeSOcT0E+Ds4E7q04GPAz8NN5aItLRbJg3j2J75fP2xhVTurYk6jrQDyRRElrsv2//C3ZcDWeFFEpEwdMiKccclo9m+t4bvP7M06jjSDiRTEGVm9hszmxhMvwZ0sF+kHRpZUsC/ThjIn+ds0E10ckjJFMQXSFxi+pVgWhIsE5F26MtnDmZgYR7fe2qxrmqSgzpkQbh7tbv/b3BD20Xu/lN3rz7U+0SkbeqQFePbnxzO6i17+L9/vh11HGnDkrmK6RQze8nMlpvZ6v1Ta4QTkXCcMbQ7Hz22O3e+vJLNu3QDnTQvmUNM9wP/C5xKYlyk/ZOItGPfOm84VbX13PXKyqijSBuVTEHscPfn3H2zu2/dP4WeTERCNaAwj0tP6MPDb65j/TaNpi8flkxBTAuG2z7JzMbtn0JPJiKh+/KZgzAzfvHKiqijSBuUmcQ2JwY/G9+K7SQG0BORdqy4IIfPnNiP385cw79OOIaBRR2jjiRtSDJXMZ3RzKRyEEkRXzzjGOKxDH72N+1FyAclc4hJRFJYYcdsrj6pH88s2Mi6rToXIe9TQYgInz11ALEM4zev6gp2eZ8KQkTo0akDF44t4dGy9WzdrftgJSGZG+VyzezbwRhMmNlgMzsv/Ggi0ppuOH0gVbUNTJ25Nuoo0kYkswfxIFANnBS8Lgd+EFoiEYnEoO75fGxYD347cw17a+qijiNtQDIFcYy7/wioBXD3vSQeASoiKeZfJgykcm8tT8zdGHUUaQOSKYgaM8shce8DZnYMiT0KEUkxpf26MKy4E1NnriGZxxFLakumIL4LPA/0MbOHgJeB/wwzlIhEw8y4+qR+vLVpF7PWbI86jkQsmRvlXgQuAq4FHgZK3X1ayLlEJCKTx/Qiv0MmU2euiTqKRCyZq5heDgboe9bdn3H3LWb2cmuEE5HWlxvP5JLj+/D8ok1s3qmhwNPZAQvCzDqYWVeg0My6mFnXYOoPlLRWQBFpfVed1I+6BucPb66LOopE6GB7EP8CzAaODX7un54E7go/mohEZUBhHqcNLuRPZRuob9DJ6nR1wIJw95+7+wDgZncf6O4Dgmm0u6sgRFLcpaV9KK/cxz9XbYk6ikTkkMN9u/svzGwkMBzo0Gj51DCDiUi0zhreg4KcLP44az2nDS6KOo5E4JAFYWa3AhNJFMRfgXOBVwEVhEgK65AV48KxJfzhjXVU7q2hc2486kjSypK5D+JTwEeBTe5+HTAaKAg1lYi0CZeU9qamvoEn5pZHHUUikExB7HP3BqDOzDoBm4E+4cYSkbZgRK8CRpZ04tGyDVFHkQgkUxBlZtYZ+DWJq5jmADNDTSUibcalpX1Y8s5OFpXviDqKtLJk7qT+ortXuvu9wFnANcGhJhFJA5NHlxDPzODRsvVRR5FWltSd1Pvn3X2Nuy/QndQi6aMgN4uzh/fg6fkbqalriDqOtKJQ76Q2s3PMbJmZrTSzbzSzvp+ZvWxmC8xsupn1brK+k5ltMDPddyESoYvGlbB9by0zlldEHUVaUWh3UptZDLibxGWxw4ErzGx4k83uAKa6+yhgCnB7k/XfB2Yc+muISJhOG1xE17w4f5mnq5nSSZh3Uo8HVrr7anevAR4BJjfZZjjwSjA/rfF6Mzse6AG8eBjfR0RCkBXL4JOjivnbknfZWVUbdRxpJclcxbTJzPIBzOxbZva4mY1L4n0lQOOzWhv48KGp+SSGEge4EMg3s25mlgH8BLj5YL/AzG4wszIzK6uo0K6vSJguGFtCdV0Dzy/aFHUUaSXJFMS33X2XmZ0KfAy4H7inhX7/zcAEM5sLTCDxvOt64IvAX939oBdfu/t97l7q7qVFRRoKQCRMY/p0pn+3XN00l0aSKYj64Ock4D53fxZI5p77cj54Q13vYNl73H2ju1/k7mOBW4JllcBJwI1mtobEeYqrzex/kvidIhISM+OCsSXMXL2Vd3bsizqOtIJkCqLczH4FXAb81cyyk3zfLGCwmQ0wszhwOfBU4w3MrDA4nATwTeABAHe/0t37unt/EnsZU939Q1dBiUjrumBMCe7w1LyNUUeRVpDMX/SXAi8AHw/+dd8V+Nqh3uTudcCNwXuXAo+6+2Izm2Jm5webTQSWmdlyEiekbzv8ryAiraV/YR5j+3bmLzrMlBbMPTUeBlJaWuplZWVRxxBJeVNnruE7Ty7mua+exrDiTlHHkaNkZrPdvbS5dcnsQYiIvGfSccVkZhhP6J6IlKeCEJHD0q1jNqcNLuTpeRtp0ONIU5oKQkQO2wVjS9i4o4o312yLOoqESAUhIoftrOE9yI3HeFJXM6U0FYSIHLbceCZnD+/BXxe+oxFeU5gKQkSOyOQxJezYV8v0ZZujjiIhUUGIyBE5dXAhXfPiOsyUwlQQInJEsmIZnDeqmL8tfZddGuE1JakgROSITR6TGOH1hcXvRh1FQqCCEJEjNq5vZ/p2zeVJ3TSXklQQInLEzIzJY3rx2sotbN5VFXUcaWEqCBE5KpPH9KLB4en570QdRVqYCkJEjsqg7vmM6NVJh5lSkApCRI7aBWNKWLBhB6srdkcdRVqQCkJEjtonR/fCDN0TkWJUECJy1HoWdOCkgd14cl45qfKMGVFBiEgLmTymF2u27mX+hh1RR5EWooIQkRZxzshi4rEMntDjSFOGCkJEWkRBThZnHtudZxa8Q129RnhNBSoIEWkxF4ztxZbd1fxz1daoo0gLUEGISIuZOLQ7+R0y9bzqFKGCEJEW0yErxrkje/LCok3sq6mPOo4cJRWEiLSoC8aUsKemnr8t1Qiv7Z0KQkRa1IkDu9GjU7aG3kgBKggRaVGxDGPymBKmL6ugYld11HHkKKggRKTFXVram7oG5/E5G6KOIkdBBSEiLW5Q93xK+3Xhj2XrNfRGO6aCEJFQXHZCH1ZX7KFs7faoo8gRUkGISCgmjSqmY3Ymj7y5PuoocoRUECISitx4Jp8c3YtnF25kZ1Vt1HHkCKggRCQ0l5/Qh6raBp7ScyLapVALwszOMbNlZrbSzL7RzPp+ZvaymS0ws+lm1jtYPsbMZprZ4mDdZWHmFJFwjOpdwLE98/njLB1mao9CKwgziwF3A+cCw4ErzGx4k83uAKa6+yhgCnB7sHwvcLW7jwDOAX5mZp3Dyioi4TAzPn1iXxaW72De+sqo48hhCnMPYjyw0t1Xu3sN8Agwuck2w4FXgvlp+9e7+3J3XxHMbwQ2A0UhZhWRkFw0rjcdszP57T/XRB1FDlOYBVECNN6v3BAsa2w+cFEwfyGQb2bdGm9gZuOBOLAqpJwiEqKO2Zl86vjePLNgI5t3VUUdRw5D1CepbwYmmNlcYAJQDrw3BKSZFQO/A65z9w89gcTMbjCzMjMrq6ioaK3MInKYrj6pH7X1zsNv6FxEexJmQZQDfRq97h0se4+7b3T3i9x9LHBLsKwSwMw6Ac8Ct7j76839Ane/z91L3b20qEhHoETaqoFFHTl9SBEPvbGWmjo9ba69CLMgZgGDzWyAmcWBy4GnGm9gZoVmtj/DN4EHguVx4C8kTmA/FmJGEWkl157cj827qnlu0TtRR5EkhVYQ7l4H3Ai8ACwFHnX3xWY2xczODzabCCwzs+VAD+C2YPmlwOnAtWY2L5jGhJVVRMI3cUh3jinK457pqzQ+UzthqfI/qrS01MvKyqKOISIH8aey9XztsQU8eO0JnHFs96jjCGBms929tLl1UZ+kFpE0MnlMCb0KOvDL6SujjiJJUEGISKuJZ2Zw/ekDmbVmO7PWbIs6jhyCCkJEWtXlJ/Sla16cu6dpL6KtU0GISKvKice4/rSBTF9Wob2INk4FISKt7tqT+9M9P5sfPveWrmhqw1QQItLqcuIxvvqxwZSt3c7LSzdHHUcOQAUhIpG4tLQPAwrz+PELy6hv0F5EW6SCEJFIZMUyuPnsoSx7dxePlmmMprZIBSEikfnEcT0ZP6ArP3z+LbbvqYk6jjShghCRyJgZ3588kl1VdfzohbeijiNNqCBEJFJDe+Zz3cn9eWTWet5YvTXqONKICkJEIvfvZw2hT5dcbn5sPnuq66KOIwEVhIhELi87kzsuGc2G7fv4778ujTqOBFQQItImjB/QletPG8hDb6zj2QV6ZkRboIIQkTbj5rOHMq5vZ77+2HxWbt4ddZy0p4IQkTYjnpnB3VeOIzsrxg2/K9OlrxFTQYhIm1JckMO9nzmeDdv3cf3UMqpq66OOlLZUECLS5owf0JWfXjqGsrXb+eJDc6iuU0lEQQUhIm3SpFHF3HbhSF55azM3TJ2tPYkIqCBEpM268sR+/PDi45ixooLL73udzbuqoo6UVlQQItKmXXZCX+65chzLNu3igrteY8667VFHShsqCBFp884ZWcyf/vUkzIxL7p3Jz/+2gpq6hqhjpTwVhIi0CyNLCvjrV09j0nHF/PRvyznnZzOYtkwPGwqTCkJE2o2CnCzuvGIsD153AgDXPTiLy341k2nLNuvRpSGwVPmPWlpa6mVlZVHHEJFWUlPXwO9eX8uvZ6xm084qhvToyMXjejN5TAk9CzpEHa/dMLPZ7l7a7DoVhIi0ZzV1DTw5r5w/vLmOuesqMYNRJQWcNriIUwcXMqZPZzpkxaKO2WapIEQkLazZsoen5m9kxvIK5q6vpL7BiWUYg4o6MrKkgGO659G/Wx59u+bSt1su+dmZmFnUsSOlghCRtLOzqpbXV21lYfkOFpXvYNHGnVTsqv7ANtmZGRR2zKawY5zCjtl0zYuTl51Jx+zM4GeM3HhiPiceIx7LIJ5pZMUyyIplEM/MIB7MZ8WMeGYGsQwjw/ZPEMuwNl1CByuIzNYOIyLSGjp1yOLsET05e0TP95btqqpl3ba9rN26l/Xb9rJldzVbdtewZXc1G3dUsXjjTvZU17G7po6W/rdz47KIBeWRYUZGxgeLZP9yg/eKxSyYsOBnYt3++eG9CvjFFWNbNjAqCBFJI/kdshjRq4ARvQoOup27s6+2nj3V9YnCqK6juq6emjqntr6BmrqGxM/6Bmrr/f3XdQ3Uu9PgjjvUNyTmGxqcBocGd+qbrPvAdu7UNySWOQQ/Ey88yPX+8uC1Q9+uOaH891JBiIg0YWbkxjPJjWdSlJ8ddZzI6D4IERFpVqgFYWbnmNkyM1tpZt9oZn0/M3vZzBaY2XQz691o3TVmtiKYrgkzp4iIfFhoBWFmMeBu4FxgOHCFmQ1vstkdwFR3HwVMAW4P3tsVuBU4ERgP3GpmXcLKKiIiHxbmHsR4YKW7r3b3GuARYHKTbZN/NOIAAATnSURBVIYDrwTz0xqt/zjwkrtvc/ftwEvAOSFmFRGRJsIsiBJgfaPXG4Jljc0HLgrmLwTyzaxbku/FzG4wszIzK6uoqGix4CIiEv1J6puBCWY2F5gAlANJPzbK3e9z91J3Ly0qKgoro4hIWgrzMtdyoE+j172DZe9x940EexBm1hG42N0rzawcmNjkvdNDzCoiIk2EuQcxCxhsZgPMLA5cDjzVeAMzKzSz/Rm+CTwQzL8AnG1mXYKT02cHy0REpJWEtgfh7nVmdiOJv9hjwAPuvtjMpgBl7v4Uib2E283MgRnAl4L3bjOz75MoGYAp7r7tYL9v9uzZW8xs7VFELgS2HMX726N0+87p9n1B3zldHM137negFSkzWN/RMrOyAw1YlarS7Tun2/cFfed0EdZ3jvoktYiItFEqCBERaZYK4n33RR0gAun2ndPt+4K+c7oI5TvrHISIiDRLexAiItIsFYSIiDQr7QviUEOSpxoze8DMNpvZoqiztBYz62Nm08xsiZktNrOvRp0pbGbWwczeNLP5wXf+XtSZWoOZxcxsrpk9E3WW1mJma8xsoZnNM7OyFv3sdD4HEQxJvhw4i8SAgLOAK9x9SaTBQmRmpwO7SQyzPjLqPK3BzIqBYnefY2b5wGzgghT//2xAnrvvNrMs4FXgq+7+esTRQmVmNwGlQCd3Py/qPK3BzNYApe7e4jcHpvseRDJDkqcUd58BHPSu9FTj7u+4+5xgfhewlGZGB04lnrA7eJkVTCn9r8HggWOTgN9EnSVVpHtBJDWsuKQOM+sPjAXeiDZJ+ILDLfOAzSSer5Lq3/lnwNeBhqiDtDIHXjSz2WZ2Q0t+cLoXhKSRYMTgPwP/5u47o84TNnevd/cxJEZDHm9mKXtI0czOAza7++yos0TgVHcfR+LpnV8KDiO3iHQviEMOSS6pITgO/2fgIXd/POo8rcndK0k8sTGVn8p4CnB+cDz+EeBMM/t9tJFah7uXBz83A38hcei8RaR7QRxySHJp/4ITtvcDS939f6PO0xrMrMjMOgfzOSQuxHgr2lThcfdvuntvd+9P4s/xK+7+mYhjhc7M8oILLzCzPBKPRmixKxTTuiDcvQ7YPyT5UuBRd18cbapwmdnDwExgqJltMLPPRZ2pFZwCXEXiX5XzgukTUYcKWTEwzcwWkPiH0EvunjaXfqaRHsCrZjYfeBN41t2fb6kPT+vLXEVE5MDSeg9CREQOTAUhIiLNUkGIiEizVBAiItIsFYSIiDRLBSFyhMyss5l9MZjvZWaPRZ1JpCXpMleRIxSM6/RMuoyKK+knM+oAIu3Y/wDHBAPirQCGuftIM7sWuADIAwYDdwBxEjfrVQOfcPdtZnYMcDdQBOwFrnf3lL3bWdofHWISOXLfAFYFA+J9rcm6kcBFwAnAbcBedx9L4i72q4Nt7gO+7O7HAzcDv2yV1CJJ0h6ESDimBc+e2GVmO4Cng+ULgVHByLInA39KDBUFQHbrxxQ5MBWESDiqG803NHrdQOLPXQZQGex9iLRJOsQkcuR2AflH8sbgeRRvm9klkBhx1sxGt2Q4kaOlghA5Qu6+FXjNzBYBPz6Cj7gS+FwwEudiUvxxt9L+6DJXERFplvYgRESkWSoIERFplgpCRESapYIQEZFmqSBERKRZKggREWmWCkJERJr1/40YgzobVlpwAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_population(opt_dynamics)\n", "plot_norm(opt_states)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These dynamics show that the non-Hermitian Hamiltonian has the desired effect:\n", "The population is steered out of the decaying $\\ket{2}$ state, with the\n", "resulting loss in norm down to 10% from the 30% loss of the guess pulses.\n", "Indeed, these 10% are exactly the value of the error $1 - F_{\\text{re}}$,\n", "indicating that avoiding population in the $\\ket{2}$ part is the difficult part\n", "of the optimization. Convergence towards this goal is slow, so we continue the\n", "optimization up to iteration 2000." ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:28.324483Z", "start_time": "2019-02-25T17:38:51.495496Z" } }, "outputs": [], "source": [ "dumpfile = \"./non_herm_oct_result.dump\"\n", "if os.path.isfile(dumpfile):\n", " oct_result = krotov.result.Result.load(dumpfile, objectives)\n", "else:\n", " oct_result = krotov.optimize_pulses(\n", " objectives, pulse_options, tlist,\n", " propagator=krotov.propagators.expm,\n", " chi_constructor=krotov.functionals.chis_re,\n", " info_hook=krotov.info_hooks.chain(print_fidelity),\n", " iter_stop=2000,\n", " continue_from=oct_result\n", " )\n", " oct_result.dump(dumpfile)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:28.335319Z", "start_time": "2019-02-25T19:11:28.328930Z" }, "attributes": { "classes": [], "id": "", "n": "21" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Final fidelity: 0.966\n" ] } ], "source": [ "print(\"Final fidelity: %.3f\" % oct_result.info_vals[-1])" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:28.351753Z", "start_time": "2019-02-25T19:11:28.339249Z" }, "attributes": { "classes": [], "id": "", "n": "22" } }, "outputs": [], "source": [ "def plot_convergence(result):\n", " fig, ax = plt.subplots()\n", " ax.semilogy(result.iters, 1-np.array(result.info_vals))\n", " ax.set_xlabel('OCT iteration')\n", " ax.set_ylabel('error')\n", " plt.show(fig)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To get a feel for the convergence, we can plot the optimization error over the iteration number:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:28.942896Z", "start_time": "2019-02-25T19:11:28.362214Z" }, "attributes": { "classes": [], "id": "", "n": "23" }, "lines_to_next_cell": 0 }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEGCAYAAAB7DNKzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAfU0lEQVR4nO3deZCcd33n8fe3j+mes+ceSaP7sLBkbCMrtsHGi2MWGxZjwJC1wwaWpeJQgWxgK5sySxUh2U02yYZsluIqJZgjZa4YKGyOwtzGxjaWZFm2ZMka3SONNJfmvmd++8fz9ExPq6c1I/U13Z9XVdc88/T11TMz/dH3+T3P7zHnHCIiIgsJ5LsAEREpbAoKERFJS0EhIiJpKShERCQtBYWIiKQVyncB2dDY2OjWr1+f7zJERJaNPXv2dDvnmlLdV5RBsX79enbv3p3vMkRElg0zO7nQfdr1JCIiaSkoREQkLQWFiIikpaAQEZG0FBQiIpJWwR/1ZGaVwOeACeCXzrmH81ySiEhJyUtHYWYPmVmnmb2UtP4uMztsZm1m9qC/+p3AI865PwTelvNiRURKXL52PX0ZuCtxhZkFgc8Cbwa2Afeb2TZgNXDaf9h0Nov60lPH+f7+s9l8CxGRZScvQeGcewLoTVp9I9DmnDvmnJsAvgHcA7TjhQVkud6Hnz3FD1/syOZbiIgsO4U0mN3KXOcAXkC0At8B7jWzzwOPLfRkM3vAzHab2e6urq7LKqA8HGR0IqtNi4jIslPwg9nOuWHg/Yt43C5gF8DOnTsv67J90XCAscmZy3mqiEjRKqSO4gywJuH71f66nImGg4xNqaMQEUlUSEHxHLDFzDaYWRlwH/BoLguIhLTrSUQkWb4Oj/068DSw1czazewDzrkp4MPAj4GXgW855w7ksq7ysiDjU9r1JCKSKC9jFM65+xdY/0PghzkuZ1Y0FGBsUh2FiEiiQtr1dMXM7G4z29Xf339Zz4+GgwoKEZEkRRUUzrnHnHMPxGKxy3p+eVmQUQWFiMg8RRUUV8rb9TSDc5d1dK2ISFFSUCSIhIMAGtAWEUmgoEgQ9YNC4xQiInMUFAnKZ4NCHYWISJyCIkE07G0OdRQiInOKKigycXgsoGk8REQSFFVQXPHhsX5QaBoPEZE5RRUUVyoyu+tJYxQiInEKigTa9SQicjEFRYJoyA8K7XoSEZmloEhQXqaOQkQkmYIiQVRjFCIiF1FQJIjvetJRTyIic4oqKDJ1HoXmehIRmVNUQXGl51FEQt7mGNcYhYjIrKIKiisVCBhlwYDGKEREEigokkRCAXUUIiIJFBRJIuGgOgoRkQQKiiTqKERE5lNQJImGA4yroxARmaWgSBIJBdVRiIgkUFAkiYZ11JOISKKiCoorPeEO1FGIiCQrqqC40hPuQB2FiEiyogqKTFBHISIyn4IiiToKEZH5FBRJ1FGIiMynoEiijkJEZD4FRZJIWB2FiEgiBUWSaCjA+NQMzrl8lyIiUhAUFEki4SDOwcS0dj+JiICC4iJzFy9SUIiIQJEFRUbOzPYvhzo2qXEKEREosqDIyJnZ8Y5CRz6JiABFFhSZEO8odOSTiIhHQZEkPkahcylERDwKiiRRdRQiIvMoKJJENEYhIjKPgiJJvKMYU0chIgIoKC6ijkJEZD4FRRJ1FCIi8ykokqijEBGZT0GRJKozs0VE5lFQJNFcTyIi8ykokuiEOxGR+YoqKDIxKWAoGCAUMJ1wJyLiK6qgyMSkgOCNU6ijEBHxFFVQZEokFFBHISLiU1CkoI5CRGSOgiIFdRQiInMUFClE1FGIiMxSUKSgjkJEZI6CIoVoOKApPEREfAqKFCKhoDoKERGfgiKFaDigMQoREZ+CIgV1FCIicxQUKaijEBGZo6BIQR2FiMgcBUUK6ihEROYoKFKIdxTOuXyXIiKSdwqKFKLhADMOJqcVFCIiCooUIiHvcqgapxARKbKgyMSFi8DrKEBXuRMRgSILikxduEgdhYjInKIKikyJqKMQEZmloEhBHYWIyBwFRQoaoxARmaOgSEEdhYjIHAVFCvGOQtekEBFRUKSkjkJEZI6CIgWNUYiIzFFQpBAJq6MQEYlTUKQQDamjEBGJU1CkoI5CRGSOgiIFdRQiInMUFCmEggGCAVNHISKCgmJB0ZCuciciAgqKBUXCum62iAgoKBakjkJExKOgWIDXUSgoREQuGRRmFjSzj+aimEISCQUYm9SuJxGRSwaFc24auD8HtRQUdRQiIp7QIh/3lJl9BvgmMBxf6Zzbm5WqCkBUHYWICLD4oLje//pXCesc8LuZLadwRMJB+kcn812GiEjeLSoonHO3Z7uQQhMNBehURyEisrijnswsZmb/aGa7/dunzCyW7eLySWMUIiKexR4e+xAwCPyefxsAvpStoi6Xmd1tZrv6+/uv+LV01JOIiGexQbHJOfcXzrlj/u0vgY3ZLOxyOOcec849EItdebMTDQfUUYiIsPigGDWzW+PfmNktwGh2SioMkVCQcXUUIiKLPurpg8BXE8YlLgDvy05JhSEaDjCmjkJE5NJBYWYBYKtz7jozqwFwzg1kvbI8i4SCTM84pqZnCAU104mIlK7FnJk9A/y5vzxQCiEBXkcBqKsQkZK32P8q/9TM/szM1phZffyW1cryLBLyL4eqcQoRKXGLHaP4j/7XDyWscxTgkU+Zoo5CRMSz2DGK/+SceyoH9RQMdRQiIp7FjlF8Jge1FJTZjkIXLxKRErfYMYqfmdm9ZmZZraaAzHYUuhyqiJS4xQbFHwHfAsbNbMDMBs2sqI9+iqijEBEBFj+YHQPeA2xwzv2Vma0FVmavrPxTRyEi4llsR/FZ4GbmrnQ3SJGPW5SHvaAYnVBQiEhpW2xHcZNzboeZPQ/gnLtgZmVZrCvvqqPephkan8pzJSIi+bXYjmLSzIJ4505gZk1AUe+8r4p4QTE4pqAQkdK22KD4NPBdoNnM/hp4EvibrFVVAKrUUYiIAIu/FOrDZrYHuAMw4O3OuZezWlmehYMBouEAg2O6braIlLbFjlHgnDsEHMpiLQWnOhpWRyEiJU/zZ6dRHQ0xoDEKESlxCoo0qiMhhhQUIlLiFBRpVEfDGqMQkZKnoEijKhLSGIWIlDwFRRrV0ZDOoxCRkqegSKMqqjEKEREFRRrV0TBDE1PMzLh8lyIikjcKijSqIyGcg6EJdRUiUroUFGnUVXrzHvYN68gnESldCoo0Gvyg6B4ez3MlIiL5o6BIo94Pit6hiTxXIiKSPwqKNBqqvKDoUUchIiVMQZFGQ2UEgJ5hdRQiUroUFGmUlwWpKAvSo11PIlLCFBSXUF9ZRq86ChEpYQqKS2iujnB+YCzfZYiI5I2C4hJa6yo40zea7zJERPJGQXEJq2qjdPSNaRoPESlZBR8UZrbRzL5oZo/k4/1X15YzMT1D15AOkRWR0pTVoDCzh8ys08xeSlp/l5kdNrM2M3sw3Ws454455z6QzTrTaa0rB6D9gnY/iUhpynZH8WXgrsQVZhYEPgu8GdgG3G9m28zs1Wb2/aRbc5bru6R1DZUAHOsaynMlIiL5EcrmizvnnjCz9UmrbwTanHPHAMzsG8A9zrn/Dbw1m/VcjvUNlUTDAQ6dG8x3KSIieZGPMYpW4HTC9+3+upTMrMHMvgC8xsw+luZxD5jZbjPb3dXVlbFigwFja0s1h84NZOw1RUSWk6x2FJngnOsBPriIx+0CdgHs3Lkzo4coXb2yhh+9dI6ZGUcgYJl8aRGRgpePjuIMsCbh+9X+uoJ108Z6+kcnOdihrkJESk8+guI5YIuZbTCzMuA+4NE81LFot2xqBOBXr2Rul5aIyHKR7cNjvw48DWw1s3Yz+4Bzbgr4MPBj4GXgW865A9ms40o110TZua6Ob+9pxzmdeCcipSWrQeGcu985t9I5F3bOrXbOfdFf/0Pn3FXOuU3Oub/OZg2Zct+NaznWPayuQkRKTsGfmb0UZna3me3q7+/P+Gvffd1K1jVU8D+/f5CRiamMv76ISKEqqqBwzj3mnHsgFotl/LUjoSD/6+3XcKx7mI9+cx8TUzMZfw8RkUJUVEGRba/f0sQn3rqNHx84z/u//Fu6BjX/k4gUPwXFEr3/lg186t3X8dyJC9z5T0/wvX1nNMAtIkVNQXEZ7r1hNT/4k1tZU1fOn35jH+/43G947kRvvssSEckKBcVl2tJSzXf++Bb+/t5r6egf5d1feJo/+OKzPH20Rx2GiBQVK8YPtZ07d7rdu3fn7P1GJqb4ym9O8sUnj9M9NM5r1tbyR7dt4o1XNxMKKotFpPCZ2R7n3M6U9xVTUJjZ3cDdmzdv/sMjR47k/P3HJqf5tz3t7HriKKd7R2mtLef3b1rLfb+zhoaqSM7rERFZrJIJirhcdxTJpqZn+NmhTr769AmeauuhLBjgP1y7kvtvXMvvrK/DTBMLikhhSRcUBT977HIUCga4c/sK7ty+grbOQf716ZN8e+8Zvvv8GdY1VPCuHau594bVrKotz3epIiKXpI4iR4bHp/jRS+d4ZM9pnjnWixncurmRd92wmjdtW0F5WTDfJYpICdOupwJzqmeER/a28+097ZzpG6WiLMgbr27h7utWcdtVjURCCg0RyS0FRYGamXE8c7yHx17o4EcvddA3MklNNMRd16zg7utW8dqNDTpqSkRyQkGxDExOz/BkWzePvXCWxw+cZ2h8iobKMu68xhvreO3GBspCCg0RyY6SCYp8Hx6bKWOT0/zycBeP7T/LLw51MjIxTXUkxO2vauZN21t4w9ZmqiI6DkFEMqdkgiJuOXYUCxmbnOaptm4eP3Cen758np7hCcqCAW7Z3MCd21dwx9UtNFXrHA0RuTI6PHYZi4aD3HF1C3dc3cL0jGP3iV4eP3ieHx84xy8Ov4jZi1y7upbbtzZx+9ZmXt0aIxDQeRoikjnqKJYp5xwvdwzyk4Pn+eUrnew73Ydz0FBZxr/zQ+O2LU3EKsL5LlVElgHteioBvcMTPPFKF7843MmvXumib2SSYMDYsbaWN2xt5vVbGtm+KkZQ3YaIpKCgKDHTM459p/v45eFOfnG4k5fODAAQKw/zuk0N3LK5kVs3N7KuoULTiYgIoKAoeZ2DYzx9tIcnj3TzVFs3Z/vHAGitLefWzY3cuqWR121q0MSFIiVMQSGznHMc7x7mqbZunmzr5jdHexgcmwLg6pU13Lyxnps21HPjhgbqK8vyXK2I5IqCQhY0PeN48Uw/T7V53cbeUxcYm5wBYEtzFTdtrOemDQ3ctKGe5pponqsVkWwpmaAolhPu8mliaoYXz/TxzLFefnu8l90nehmemAZgQ2MlN66v56aN9dy4oZ7W2nKNcYgUiZIJijh1FJkzNT3DwY4Bnj3Wy7PHe3nuRC/9o5MAtNREuGFdHTvW1rFjXR3bV9VoQkORZUpBIRkzM+M4fH6Q3x7vZe+pC+w5eYH2C6MAlAUDXNNaMy88WrS7SmRZUFBIVnUOjrH3ZB97T11g78kL7D/Tz8SUN87RWlvOjnV17Fhby3Vratm2soZoWF2HSKFRUEhOTUzNcOBsP3tP9bH3pNd1nBvwDskNBYyrWqq5bk2Ma1fXcu3qGFe1VBPWdOoieaWgkLw71z/GC+197G/vY397P/vb+2fHOiKhANtX1cwGx7Wra9nYWKk5q0RySEEhBcc5x6neEV5o72f/aS88Xjrbz4h/hFV1JMT21hq2r4qxbWUN21tr2NRUpc5DJEs0e6wUHDNjXUMl6xoqedt1qwDvnI62zqHZruPFM/08/OzJ2fM6ykIBtrZUzwbH9lU1vGpFDZW6NodIVqmjkII2PeM43j3EgbMDHDw7wIGzAxw428+FEW+3lRlsaKjk6lVecGxb6d2aqiM6x0NkCdRRyLIVDBibm6vZ3FzNPde3At5uq3MDYxw4M8DBDi84Xjjdxw/2d8w+r64izNYV1WxtqWbrihq2rqjmqpYqqqOadl1kqRQUsuyYGStj5ayMlfPGbS2z6/tHJzl4doBD5wY4fG6Qw+cHeWRP++yZ5eAdrrt1RTVbV1TzqhXVXNVSzaamKl2PXCSNogqKhCk88l2K5EGsPMxrNzXw2k0Ns+tmZhxn+kZng+PQuUFeOTfIE690MTXj7XYNBYyNTZVc1eJ1IJubq9jcXMW6hkoFiAgao5ASNTE1w/Hu4dnu4xU/ROJnmYO322tdQwWbm6pmw2NzcxWbmqo0gC5FR2MUIknKQoHZXVCJhsenONY1TFvXIG2dQ7O3nx/qnO1AwNuFtam56qIQ0dTsUowUFCIJKiMhXr06xqtXx+atn5ia4VTv8LzwaOsa4mvHe2YP3wWoryxjQ2PlRbf1DZWUl2nqElmeFBQii1AWCswefZUoPgbS1jXE0c4hjnYNcbx7mF8f6eKRPe3zHrsqFmVDkxcaGxor2dhUyYbGKlbXletEQiloCgqRKxAIGGvqK1hTX8HtW5vn3Tc8PsWJnmGOdw9zvMv7eqx7mO/v75idvgS8sZC19RWznYcXJhWsq69kVW2UkEJE8kxBIZIllZEQ21fF2L4qdtF9F4YnONbthceJ7rkQefpoD6OTc4fzhgJGa105a+srWFtfwbqGCn+5krUNFVRpUF1yQL9lInlQV1nGDZVl3LCubt76+MmEJ3tGONUzwsneYU72jHC6d4QfvNhB38jkvMc3VJaxtqGCdfUVrG2onA2TdfUVOjtdMkZBIVJAEk8mvHljw0X3949Ocrp3hJN+iJzqGeFU7wjPnbjAoy+cJeHALKLhwGwnsrqugtV15f7NW46VhxUksigKCpFlJFYeJtYa45rWi3dnTUzN0H7BC45Tfpic6vW6kWeO9TI0PjXv8VWR0EXhoSCRVBQUIkWiLBRgY1MVG5uqLrrPOcfA6BSnL4zQfmGU9tmv3vJigqS1NmG5rpy6CgVJqVBQiJQAMyNWESZWkbobSRckZ/pGefZYL4NJQRINB1gVK2dlbZSVsXJW1ZazKhZlZW05rf46ncFeHPRTFJFLBgl44yPtF0Y43TvK2b5ROvpHOds3xtn+UZ480s35wTGSZwSqiYa8AKktZ2Us6i/7wRIrZ0Usqvm0loGiCgpNCiiSPbHyMLHy1If7AkxOz3B+YIyO/jHO9nkh4oWJt/z8qQuz1xGJM4PGqgir/BBZGStnRSxCS02UFTVRVsSitNREiYZ1Vns+aVJAEcmZkYkpOvrH6Ojzw6R/1Fvuj3cpY7OXw01UWxFmRU10NkBaYvEgmQuV+soyjZlcAU0KKCIFoaIsxKYmbwbeVJxzDI5Pcb5/jHMDY5zrH+P8QHx5nPMDYxzsGKB7aPyi3VxlwQDNNZH5QZK03FwTUXdyGRQUIlIwzIyaaJiaaJgtLdULPm5yeoauwXHODYzNhUrC8sGzA/z85c55Z7nH1VaEaa6O0Fwdpak6QnN1xPtaE51bro5QFQmpQ/EpKERk2QkHA7OD5AtxzjEwNuV1JP1zQdI5OE7noPf1+PFhugbHmZieuej55eEgzTWReaESD5F4qDRXR6irKCMQKO5AUVCISFEyM38APsxVaboT5xz9o5N0DY7PhciAt9zlf//yuQGeeGX8okOEwZuPq7EqMhsqTUmdSmNVGY1VERqrIsv2cOHlWbWISIaYGbUVZdRWlKXd3QUwOjFN5+DYXKgMxDsUL1TO9I2x73QfPcMTF42hgNelNFaX0VDpBUdT9VyINCQESlNVhJrywtn1paAQEVmk8rIg6xoqWddQmfZxk9Mz9AxN0D007t/85cG579svjLDvdB+9w+Pz5uiKCwfNC5SkMGnylxurIrOhU19ZRjCLu78UFCIiGRYOBlgR884DuZTpGceFES9I4uHSNZgQLv76w+cG6R4aZ3L64lQJmHd1xcaqCN/549dRUZbZj3YFhYhIHgX9MY7GqsglHxufaqVraJyeoflh0j00Tu/wBOVZOPxXQSEiskzMTbUSZnNz6nNRskGTrIiISFoKChERSUtBISIiaSkoREQkLQWFiIikpaAQEZG0iioozOxuM9vV39+f71JERIpGUQWFc+4x59wDsVjqK3CJiMjSFeUV7sysCzh5mU9vBLozWE6mqK6lUV1Lo7qWphjrWueca0p1R1EGxZUws90LXQ4wn1TX0qiupVFdS1NqdRXVricREck8BYWIiKSloLjYrnwXsADVtTSqa2lU19KUVF0aoxARkbTUUYiISFoKChERSUtB4TOzu8zssJm1mdmDOX7vNWb2CzM7aGYHzOxP/fWfNLMzZrbPv70l4Tkf82s9bGZ3ZrG2E2b2ov/+u/119Wb2EzM74n+t89ebmX3ar2u/me3IUk1bE7bJPjMbMLOP5Gt7mdlDZtZpZi8lrFvyNjKz9/mPP2Jm78tSXf/HzA757/1dM6v11683s9GEbfeFhOfc4P8OtPm1X9HFmReoa8k/u0z/zS5Q1zcTajphZvv89TnZXmk+G3L7++WcK/kbEASOAhuBMuAFYFsO338lsMNfrgZeAbYBnwT+LMXjt/k1RoANfu3BLNV2AmhMWvf3wIP+8oPA3/nLbwF+BBhwM/Bsjn5254B1+dpewG3ADuCly91GQD1wzP9a5y/XZaGuNwEhf/nvEupan/i4pNf5rV+r+bW/OQt1Lelnl42/2VR1Jd3/KeATudxeaT4bcvr7pY7CcyPQ5pw75pybAL4B3JOrN3fOdTjn9vrLg8DLQGuap9wDfMM5N+6cOw604f0bcuUe4Cv+8leAtyes/6rzPAPUmtnKLNdyB3DUOZfuTPysbi/n3BNAb4r3XMo2uhP4iXOu1zl3AfgJcFem63LOPe6cm/K/fQZYne41/NpqnHPPOO8T56sJ/5aM1ZXGQj+7jP/NpqvL7wp+D/h6utfI9PZK89mQ098vBYWnFTid8H076T+os8bM1gOvAZ71V33YbyEfireX5LZeBzxuZnvM7AF/XYtzrsNfPge05KGuuPuY/8eb7+0Vt9RtlI8a/wve/z7jNpjZ82b2KzN7vb+u1a8lF3Ut5WeX6+31euC8c+5Iwrqcbq+kz4ac/n4pKAqImVUB3wY+4pwbAD4PbAKuBzrwWt9cu9U5twN4M/AhM7st8U7/f015OcbazMqAtwH/5q8qhO11kXxuo4WY2ceBKeBhf1UHsNY59xrgvwFfM7OaHJZUkD+7BPcz/z8kOd1eKT4bZuXi90tB4TkDrEn4frW/LmfMLIz3i/Cwc+47AM658865aefcDPDPzO0uyVm9zrkz/tdO4Lt+Defju5T8r525rsv3ZmCvc+68X2Pet1eCpW6jnNVoZv8ZeCvwHv9DBn/XTo+/vAdv//9Vfg2Ju6eyUtdl/Oxyub1CwDuBbybUm7PtleqzgRz/fikoPM8BW8xsg/+/1PuAR3P15v7+zy8CLzvn/jFhfeL+/XcA8aMxHgXuM7OImW0AtuANoGW6rkozq44v4w2EvuS/f/yoifcB30uo673+kRc3A/0J7XE2zPtfXr63V5KlbqMfA28yszp/t8ub/HUZZWZ3AX8OvM05N5KwvsnMgv7yRrxtdMyvbcDMbvZ/T9+b8G/JZF1L/dnl8m/2jcAh59zsLqVcba+FPhvI9e/X5Y7GF9sN72iBV/D+Z/DxHL/3rXit435gn397C/CvwIv++keBlQnP+bhf62Gu8CiUNHVtxDua5AXgQHy7AA3Az4AjwE+Ben+9AZ/163oR2JnFbVYJ9ACxhHV52V54YdUBTOLt+/3A5WwjvDGDNv/2/izV1Ya3rzr+e/YF/7H3+j/jfcBe4O6E19mJ98F9FPgM/owOGa5ryT+7TP/NpqrLX/9l4INJj83J9mLhz4ac/n5pCg8REUlLu55ERCQtBYWIiKSloBARkbQUFCIikpaCQkRE0lJQSEkxs9Vm9j1/Bs2jZvb//OPw4/ffaGZPmDcr6fNm9i9m9iGbmyV0wuZm0/3bpNfeaWaf9pffYGavy2Dd683s91O9l0i26fBYKRn+yUvPAp93zn3JP2FqF9DrnPvvZtaCdzLXfc65p/3nvAv4tfPP/jazE3jHpndf4r0+CQw55/5hCfWF3NyEfcn3vQFvdtW3Lvb1RDJFQSElw8zuAP7COXdbwroa4Dje9AYPAjjnPpHmNU6wQFDEP8yBD+PNzDoNdAF/AhwCvgCs9R/+EefcU36gbMI7ufEU8DG8k88q/cd92Dn3GzN7Brjar/UrwPP4wWFm9cBD/muMAA845/b7r73WX78W+CfnnLoQWbJQvgsQyaHtwJ7EFc65ATM7BWwGrmFu6ubL5pw7Yd6FbGY7CjP7GvB/nXNPmtlavOkTrvafsg1v8sVRM6sA/r1zbszMtuCdLbwTL8RmOwo/lOL+EnjeOfd2M/tdvKmtr/fvexVwO961DA6b2eedc5NX+m+U0qKgEMmNNwLbbO5iZzX+jKAAjzrnRv3lMPAZM7seryO5ahGvfSvelBI4535uZg0JM5n+wDk3DoybWSfedNTtC7yOSEoKCiklB4F3Ja7wP1DX4s1/cwC4gSxMeod34MjNzrmxpPcHGE5Y9VHgPHCd/5x5j78M4wnL0+hvXi6DjnqSUvIzoMLM3gvgD2Z/Cviy82ZS/QzwPjO7Kf4EM3unP8i9VIN4u3viHscbq4i/7vUXPcMTAzqcN932H+Bd8jPV6yX6NfAe/3XfAHS7pGsWiFwJBYWUDOcdufEO4N1mdgRv5tEx4H/495/Hm676H/zDY1/Gu4Tk4GW83WPAO/zDaF8P/Fdgp3lXcDsIfHCB530OL6xewBtfiHcb+4FpM3vBzD6a9JxPAjeY2X7gb5mbflokI3TUk4iIpKWOQkRE0lJQiIhIWgoKERFJS0EhIiJpKShERCQtBYWIiKSloBARkbT+P9XnYKZP8L49AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_convergence(oct_result)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We have used here that the return value of the routine `print_fidelity` that was passed to the `optimize_pulses` routine as an `info_hook` is automatically accumulated in `result.info_vals`.\n", "\n", "We also look at optimized controls and the dynamics they induce:" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:33.619726Z", "start_time": "2019-02-25T19:11:32.852452Z" }, "attributes": { "classes": [], "id": "", "n": "25" } }, "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": [ "print(\"pump pulse amplitude and phase:\")\n", "plot_pulse_amplitude_and_phase(\n", " oct_result.optimized_controls[0], oct_result.optimized_controls[1], tlist)\n", "print(\"Stokes pulse amplitude and phase:\")\n", "plot_pulse_amplitude_and_phase(\n", " oct_result.optimized_controls[2], oct_result.optimized_controls[3], tlist)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "lines_to_next_cell": 2 }, "outputs": [], "source": [ "opt_dynamics = oct_result.optimized_objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm, e_ops=[proj1, proj2, proj3])\n", "opt_states = oct_result.optimized_objectives[0].propagate(\n", " tlist, propagator=krotov.propagators.expm)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "ExecuteTime": { "end_time": "2019-02-25T19:11:34.987825Z", "start_time": "2019-02-25T19:11:34.290384Z" }, "attributes": { "classes": [], "id": "", "n": "26" } }, "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_population(opt_dynamics)\n", "plot_norm(opt_states)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In accordance with the lower optimization error, the population dynamics now show\n", "a reasonably efficient transfer, and a significantly reduced population in\n", "state $\\ket{2}$.\n", "\n", "Finally, we can convert the complex-valued $\\Omega_P$ and $\\Omega_S$ functions to the\n", "physical electric fields $\\epsilon_{P}$ and $\\epsilon_{S}$:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "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", "\n", "print('Physical electric pump pulse in the lab frame:')\n", "plot_physical_field(\n", " oct_result.optimized_controls[0], oct_result.optimized_controls[1], tlist, case = 'pump')\n", "\n", "\n", "print('Physical electric Stokes pulse in the lab frame:')\n", "plot_physical_field(\n", " oct_result.optimized_controls[2], oct_result.optimized_controls[3], tlist, case = 'stokes')" ] } ], "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.7.3" }, "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 }