{ "cells": [ { "cell_type": "markdown", "id": "7877b17c-c1cd-433c-ae0d-18e040e192e3", "metadata": {}, "source": [ "# 1D Schrödinger equation on LUCIDAC\n", "\n", "This notebook demonstrates how to use *lucipy* to define the circuit for solving a simple quantum mechanical problem given by the time-indepentent Schrödinger equation in one spatial dimension and the typical anlog computing approach where analog computer time is mapped onto a physical coordinate (dimension). This is loosely connected to the [Analog Paradigm Application Note 22](https://analogparadigm.com/downloads/alpaca_22.pdf). This is also somewhat similar to this [Wolfram Demo: Energies for Particle in a Gaussian Potential Well](https://demonstrations.wolfram.com/EnergiesForParticleInAGaussianPotentialWell/).\n", "\n", "The approach chosen is called [Shooting method](https://en.wikipedia.org/wiki/Shooting_method) and reduces the initial value boundary problem (IVBP) to an initial value problem (IVP) by trying out parameters until the boundary requirements are met. It is a classical method to solve the Schrödingers equation, i.e. it is one way to solve the Eigenvalue problem by determining the unknown Eigenvalue $E$ at the same time as the eigenvector and wave function $\\Psi(t)$. Note that we work here with a purely real-valued $\\Psi$.\n", "\n", "## The anatomy about solutions in our setting\n", "\n", "Solutions are bound wave functions $\\Psi(t)$. Bound means $\\int_{-\\infty}^{\\infty} \\Psi(t)\\mathrm d t=1$. Wave functions vanish outside of an infinitely deep potential well and do so approximately for a finite one. That means $\\Psi(t)\\to 0$ for the simulation boundaries.\n", "\n", "The problem has no analytical solution but it is easy to find ones numerically. The expected solutions (wave forms) $\\Psi(t)$\n", "\n", "* are symmetric (around the center of the well) because our $V$ is also chosen symmetric\n", "* have a nonzero $\\Psi(0)$\n", "* have a $\\Psi'(0) < 0$ close to zero (somewhat similar to a Gaussian)\n", "\n" ] }, { "cell_type": "code", "execution_count": 115, "id": "cc5cc52c-6f3e-417d-94c9-86e00c906a47", "metadata": {}, "outputs": [], "source": [ "from lucipy import Circuit" ] }, { "cell_type": "code", "execution_count": 29, "id": "5bfc5171-002b-459d-a768-f6f434b68faf", "metadata": {}, "outputs": [], "source": [ "from pylab import *\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "id": "18bedf6d-3bc3-4149-95fe-a54c589112d8", "metadata": {}, "source": [ "## Modeling the potential well\n", "\n", "We choose a Gaussian potential well because it is easy to compute on LUCIDAC. In contrast, a square well needs comparators which are not available on LUCIDAC. In the following code snippets we explore how to design the well and how to compute it from an ordinary differential equation. In principle the idea is that we know we want to have some $G(t) = e^{-(t-t_c)^2/w}$, we can just determine $G'(t)$ analytically and then obtain $G(t)$ by solving $\\int G = G'(t)$ on LUCIDAC -- or here with `solve_ivp`." ] }, { "cell_type": "code", "execution_count": 21, "id": "9a22873b-df09-4f77-a318-36e419a0851a", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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vLb6Gui56k8iv65cLpcmTZqkOXPmaPny5Zo1a5Z++ctfRsVrKiHDiMvlUllZmSoqKnpdX1FRoXnz5llUVWzo7OxUZWWlCgoKrC4lqpWWlio/P7/Xa8zr9Wr9+vW8xgapsbFRNTU1CfdaMwxD999/v1555RW98847Ki0t7fV1XltnXey56k+ivq76YxiGOjs7o+M1NSJtslHo97//vZGUlGQ888wzxu7du40lS5YYaWlpxqFDh6wuLap873vfM9atW2dUVVUZH330kfFXf/VXRkZGBs+TYRgtLS3G1q1bja1btxqSjBUrVhhbt241Dh8+bBiGYTz++OOGx+MxXnnlFWPnzp3G17/+daOgoMBobm62uHJrXOj5amlpMb73ve8ZGzduNA4ePGi8++67xty5c42xY8cm3PP1d3/3d4bH4zHWrVtn1NbWBi/t7e3B2/DaCrjYc8Xr6qxly5YZGzZsMA4ePGjs2LHD+PGPf2zY7Xbj7bffNgzD+tdUwoYRwzCMX//610ZJSYnhcrmMK664otdyMAQsXLjQKCgoMJKSkozCwkLjK1/5irFr1y6ry4oK7777riGpz+X22283DCOwBPORRx4x8vPzDbfbbXzmM58xdu7caW3RFrrQ89Xe3m6Ul5cbOTk5RlJSkjFu3Djj9ttvN6qrq60ue8T19xxJMn77298Gb8NrK+BizxWvq7O+/e1vB9/vcnJyjM9//vPBIGIY1r+mbIZhGCMzBgMAANBXQvaMAACA6EEYAQAAliKMAAAASxFGAACApQgjAADAUoQRAABgKcIIAACwFGEEAABYijACAAAsRRgBAACWIowAAABLEUYAAICl/n9eC0B6StsPXgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t_final = 30\n", "t_center = t_final/2\n", "t = linspace(0, t_final)\n", "plot(t, 1-exp( -(t-t_center)**2 / 10) )" ] }, { "cell_type": "markdown", "id": "0c6fc576-3a75-4944-ac4d-2121c2dcb262", "metadata": {}, "source": [ "Unfortunately the ODE approach is very sensitive for the initial conditions, as we are effectively evolving an exponential. Therefore it is hard to generate a symmetrical Gaussian as it is plotted above. Instead, we have to restrict to the *right* side of the simulation domain, straight from the *center* of the well. However, this also makes it difficult to use the ordinary shooting method which exploits the sensitivity of parameters around the zero." ] }, { "cell_type": "code", "execution_count": 23, "id": "98b801e5-3cd7-4f85-b577-3b724c0966dd", "metadata": {}, "outputs": [], "source": [ "from scipy.integrate import solve_ivp" ] }, { "cell_type": "code", "execution_count": 61, "id": "f8bc15f3-0cd8-455b-8d63-578fda5e70c5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ " message: The solver successfully reached the end of the integration interval.\n", " success: True\n", " status: 0\n", " t: [ 0.000e+00 9.990e-04 ... 9.746e+00 1.000e+01]\n", " y: [[ 0.000e+00 9.990e-04 ... 9.746e+00 1.000e+01]\n", " [ 1.000e+00 1.000e+00 ... 1.383e-06 2.762e-07]]\n", " sol: None\n", " t_events: None\n", " y_events: None\n", " nfev: 170\n", " njev: 0\n", " nlu: 0" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "t_final=10\n", "t_center=0\n", "width=3\n", "result = solve_ivp(lambda t,y: [1, -2/width*(y[0]-t_center)*y[1]], [0,t_final], [0, 1])\n", "assert np.allclose(result.t, result.y[0]), \"Could not integrate time as variable\"\n", "result" ] }, { "cell_type": "code", "execution_count": 121, "id": "abd11e4a-6611-4dc3-9100-128d22baee7b", "metadata": {}, "outputs": [ { "data": { "image/png": "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8D73DN7nntEb3ueAGGAFAADBK6RXRgAAgHmUEQAAYBRlBAAAGEUZAQAARoV0GVm6dKmysrIUGRmp7OxsbdiwwXSkoJKfn68rr7xSMTExSkpK0s0336w9e/aYjhX08vPzZbPZNH/+fNNRgtKRI0d05513KiEhQVFRURo7dqwKCwtNxwoqjY2N+vd//3dlZWWpT58+GjJkiBYtWiSv12s6WkBbv369Zs2apbS0NNlsNv3pT39q833LsvSzn/1MaWlp6tOnj6655hrt3LmzR7KFbBlZvXq15s+fr8cee0xFRUWaNm2aZs6cqdLSUtPRgsa6det0//3364MPPlBBQYEaGxuVm5urmpoa09GC1vbt27V8+XJdccUVpqMEpVOnTmnKlCkKDw/X22+/rV27dunpp59Wv379TEcLKr/61a/0/PPPa8mSJSopKdFTTz2lX//613ruuedMRwtoNTU1GjNmjJYsWdLh95966ik988wzWrJkibZv366UlBRdf/31rfeH8ysrRE2YMMGaN29em20jRoywHn30UUOJgl9lZaUlyVq3bp3pKEGpurraGjZsmFVQUGBdffXV1kMPPWQ6UtB55JFHrKlTp5qOEfRuuukm6+67726z7dvf/rZ15513GkoUfCRZb775ZuvXXq/XSklJsX75y1+2bjt37pwVFxdnPf/8837PE5IrI/X19SosLFRubm6b7bm5udq8ebOhVMHP5XJJkuLj4w0nCU7333+/brrpJl133XWmowStt956Szk5Ofrud7+rpKQkjRs3Tv/93/9tOlbQmTp1qt59913t3btXkvTRRx9p48aNuvHGGw0nC14HDx5URUVFm89Fp9Opq6++ukc+FwPiRnndraqqSh6PR8nJyW22Jycnq6KiwlCq4GZZlvLy8jR16lSNHj3adJyg8/vf/14ffvihtm/fbjpKUDtw4ICWLVumvLw8/fSnP9W2bdv04IMPyul0au7cuabjBY1HHnlELpdLI0aMkMPhkMfj0S9+8QvdfvvtpqMFrZbPvo4+Fw8dOuT31w/JMtLCZrO1+dqyrHbb0D0eeOABffzxx9q4caPpKEGnrKxMDz30kN555x1FRkaajhPUvF6vcnJy9OSTT0qSxo0bp507d2rZsmWUkW60evVqvfLKK1q1apVGjRql4uJizZ8/X2lpafr+979vOl5QM/W5GJJlJDExUQ6Ho90qSGVlZbtWiIv34x//WG+99ZbWr1+v9PR003GCTmFhoSorK5Wdnd26zePxaP369VqyZInq6urkcDgMJgweqampuuyyy9psGzlypF5//XVDiYLTww8/rEcffVS33XabJOnyyy/XoUOHlJ+fTxnxk5SUFElNKySpqamt23vqczEkZ0YiIiKUnZ2tgoKCNtsLCgo0efJkQ6mCj2VZeuCBB/TGG29o7dq1ysrKMh0pKM2YMUOffPKJiouLWx85OTm64447VFxcTBHpRlOmTGl3evrevXuVmZlpKFFwqq2tld3e9uPJ4XBwaq8fZWVlKSUlpc3nYn19vdatW9cjn4shuTIiSXl5efre976nnJwcTZo0ScuXL1dpaanmzZtnOlrQuP/++7Vq1Sr9+c9/VkxMTOtKVFxcnPr06WM4XfCIiYlpN4cTHR2thIQE5nO62YIFCzR58mQ9+eSTuvXWW7Vt2zYtX75cy5cvNx0tqMyaNUu/+MUvNGjQII0aNUpFRUV65plndPfdd5uOFtDOnDmj/fv3t3598OBBFRcXKz4+XoMGDdL8+fP15JNPatiwYRo2bJiefPJJRUVFac6cOf4P5/fzdXqx3/zmN1ZmZqYVERFhjR8/nlNOu5mkDh8vv/yy6WhBj1N7/ecvf/mLNXr0aMvpdFojRoywli9fbjpS0HG73dZDDz1kDRo0yIqMjLSGDBliPfbYY1ZdXZ3paAHtvffe6/C/yd///vcty2o6vfeJJ56wUlJSLKfTaX3ta1+zPvnkkx7JZrMsy/J/5QEAAOhYSM6MAACA3oMyAgAAjKKMAAAAoygjAADAKMoIAAAwijICAACMoowAAACjKCMAAMAoyggAADCKMgIAAIyijAAAAKMoIwAAwKj/H4D6pBfolW0RAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot(result.t, result.y[1]);" ] }, { "cell_type": "markdown", "id": "60eb232a-4c7c-4778-a8b5-3c2348d859d2", "metadata": {}, "source": [ "## Solving the SDE with this Well\n", "\n", "We now combine the ODE above with the SDE:" ] }, { "cell_type": "code", "execution_count": 123, "id": "95db3884-358d-4fcc-afa1-285d91a5410d", "metadata": {}, "outputs": [ { "data": { "image/png": "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brrJoopCD2C+9dZbNe89Ho+ZmJho/v3vf69pKysrM2NjY80XXnjB5/U0y56R8vJysrKyyMjIqNWekZHBl19+aVFVoa+4uBiANm3aWFxJaLrnnnsYMWIEV1xxhdWlhKzFixfTr18/fvGLX9CuXTv69OnDyy+/bHVZIWfw4MF88sknbNmyBYC1a9eyYsUKhg8fbnFloWvbtm0UFBTU+l10Op1ccsklfvldDIoH5TW1oqIi3G43CQkJtdoTEhIoKCiwqKrQZpomkydPZvDgwfTs2dPqckLOv//9b9asWcM333xjdSkhbevWrcyaNYvJkyfz+9//nlWrVjFhwgScTifjxo2zuryQ8dBDD1FcXEy3bt2w2+243W7+9re/8ctf/tLq0kJW9W9fXb+L27dv9/n5m2UYqWYYRq33pmme0CZN495772XdunWsWLHC6lJCzo4dO7j//vv56KOPiIiIsLqckObxeOjXrx+PPfYYAH369GHjxo3MmjVLYaQJzZ8/n//7v//j9ddfp0ePHuTk5DBx4kSSk5O55ZZbrC4vpFn1u9gsw0h8fDx2u/2EXpDCwsITUqGcufvuu4/FixezbNkyOnToYHU5IScrK4vCwkLS09Nr2txuN8uWLeO5557D5XJht9strDB0JCUlcd5559Vq6969OwsWLLCootD04IMP8vDDD3PDDTcAcP7557N9+3amT5+uMOIjiYmJgLeHJCkpqabdX7+LzfKakfDwcNLT08nMzKzVnpmZycCBAy2qKvSYpsm9997LwoUL+fTTT0lNTbW6pJB0+eWXs379enJycmqWfv368atf/YqcnBwFkSY0aNCgE25P37JlC506dbKootB0+PBhbLbaP092u1239vpQamoqiYmJtX4Xy8vLWbp0qV9+F5tlzwjA5MmTufnmm+nXrx8DBgzgpZdeIjc3l/Hjx1tdWsi45557eP3111m0aBHR0dE1PVGxsbFERkZaXF3oiI6OPuE6nKioKOLi4nR9ThObNGkSAwcO5LHHHuP6669n1apVvPTSS7z00ktWlxZSRo4cyd/+9jc6duxIjx49yM7O5umnn+b222+3urSgdvDgQX744Yea99u2bSMnJ4c2bdrQsWNHJk6cyGOPPUaXLl3o0qULjz32GC1atODGG2/0fXE+v18ngD3//PNmp06dzPDwcLNv37665bSJAXUur7zyitWlhTzd2us777zzjtmzZ0/T6XSa3bp1M1966SWrSwo5JSUl5v3332927NjRjIiIMDt37mxOnTrVdLlcVpcW1D777LM6/5t8yy23mKbpvb330UcfNRMTE02n02lefPHF5vr16/1Sm2Gapun7yCMiIiJSt2Z5zYiIiIgEDoURERERsZTCiIiIiFhKYUREREQspTAiIiIillIYEREREUspjIiIiIilFEZERETEUgojIiIiYimFEREREbGUwoiIiIhYSmFERERELPX/AS6YTg9nNl0QAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m, hbar, E = 1, 1, 0.4\n", "def sde(t, y, E=E):\n", " t, V, dpsi, psi = y\n", " phi = 2*m/hbar*(V-E)\n", " dV = -2/width*(t-t_center)*V # results in V=exp( -(t-tc)**2 / width)\n", " return [ 1, dV, phi*dpsi, dpsi ]\n", "\n", "res = solve_ivp(sde, [0, t_final], [0, 1, -0.06, 0.6])\n", "t, V, dpsi, psi = res.y\n", "plot(t, V)\n", "plot(t, psi);" ] }, { "cell_type": "markdown", "id": "ffd0ff87-dd0d-423d-8db9-523c81620630", "metadata": {}, "source": [ "## Turning the potentiometer knobs\n", "\n", "We can have some interactivity to play around with the parameters. Note this requires a running notebook and won't run in a static render such as in the Sphinx documentation generator." ] }, { "cell_type": "code", "execution_count": 91, "id": "817c31f1-cf9c-496a-8ed6-44213a38ad09", "metadata": {}, "outputs": [], "source": [ "from ipywidgets import interact, interactive, fixed, interact_manual\n", "import ipywidgets as widgets" ] }, { "cell_type": "code", "execution_count": 111, "id": "ba05b95a-819f-490c-acec-ac1681c88f4b", "metadata": {}, "outputs": [], "source": [ "def f(E, dpsi0, psi0):\n", " res = solve_ivp(lambda t,y: sde(t,y,E), [0, t_final], [0, 1, -dpsi0, psi0])\n", " t, V, dpsi, psi = res.y\n", " plot(t, V)\n", " plot(t, psi)\n", " axhline(0)\n", " title(f\"{E=}, {dpsi0=}, {psi0=}\")" ] }, { "cell_type": "code", "execution_count": 124, "id": "d124aef6-4ba6-4850-939d-46d475460dc9", "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "e4664a71123c458180b6ec3e96011362", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.8, description='E', max=3.0), FloatSlider(value=0.2, description='dp…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interact(f,\n", " E=widgets.FloatSlider(value=0.8, min=0, max=3, step=0.1),\n", " dpsi0=widgets.FloatSlider(value=0.2, min=-0.5, max=0.5, step=0.01),\n", " psi0=widgets.FloatSlider(min=0, max=3, step=0.1),\n", " );" ] }, { "cell_type": "markdown", "id": "b5f93b1c-6bfc-4dbe-ac4a-6a0e721feb4f", "metadata": {}, "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.3" } }, "nbformat": 4, "nbformat_minor": 5 }