Observe the evolution of the wavefunction in both position and momentum space. Do you notice the manifestation of Heisenberg's uncertainty principle? Can you explain it?\n",
@@ -92,7 +92,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 33,
"metadata": {},
"outputs": [],
"source": [
@@ -111,7 +111,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
@@ -208,7 +208,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
@@ -255,7 +255,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 36,
"metadata": {},
"outputs": [],
"source": [
@@ -295,9 +295,24 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 37,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "f5d32d1194954129a59ea1cbe259da68",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "Accordion(children=(VBox(children=(Dropdown(description='Potential type:', options=('1. Box potential', '2. Mo…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"style = {'description_width': 'initial'}\n",
"\n",
@@ -416,7 +431,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
@@ -437,9 +452,34 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 39,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "/tmp/ipykernel_916868/673579290.py:75: ComplexWarning: Casting complex values to real discards the imaginary part\n",
+ " self.norm[int(self.t/self.dt)] = sum(np.conj(self.psi_x)*self.psi_x)*self.dx\n",
+ "/tmp/ipykernel_916868/673579290.py:72: ComplexWarning: Casting complex values to real discards the imaginary part\n",
+ " self.epot[int(self.t/self.dt)] = epot\n"
+ ]
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "571777b3cd834fd2bb0ddd9e424e2e85",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "Accordion(children=(VBox(children=(HBox(children=(FloatSlider(value=1.0, description='mass: ', max=5.0, min=0.…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"V_x = square_barrier(x, a, V0)\n",
"V_x[x < -98] = 100\n",
@@ -477,9 +517,63 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 40,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "fa80577f247044a9936690e95c77e2b3",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAA+gAAAPoCAYAAABNo9TkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAADFVElEQVR4nOzdeXwU9f3H8ffmvki4QkI4o1xyhkMoKAIViIi21AstLYeKtQWVYkXxpyBWRUUFa1G0CtEqoniAFYsiGtSCXBIURAQkciacSch97Pz+WHdhIZuLbGZ283o+HvvY3dmZ2c9+IDvz2e8xNsMwDAEAAAAAAFMFmB0AAAAAAACgQAcAAAAAwBIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AHUyNq1a/XQQw8pKyvLlPfPysrSbbfdptjYWEVGRmrIkCH65ptvTIkFAAAAqA0U6ABqZO3atZo1a5YpBbrdbtfIkSO1ePFiTZ48WU8++aSOHDmiwYMHa9euXXUeDwAAAFAbgswOAACq65133tHatWu1dOlSXXfddZKkG264QR06dNDMmTO1ePFikyMEAAAAqo8WdADV9tBDD+mee+6RJCUmJspms8lmsyk9Pb1O3v+dd95RXFycrrnmGtey2NhY3XDDDVq+fLmKiorqJA4AAACgNtGCDqDarrnmGv3444968803NXfuXDVt2lSSo0j2JD8/X/n5+ZXuOzAwUI0aNapwnS1btqhXr14KCHD/jbFv37566aWX9OOPP6pbt25V+CQAAACAdVCgA6i27t27q1evXnrzzTc1atQotW3bttJtnnzySc2aNavS9dq0aVNpS/zhw4d12WWXnbO8efPmkqRDhw5RoAMAAMDnUKADqBNjx47VpZdeWul64eHhla5TUFCg0NDQc5aHhYW5XgcAAAB8DQU6gDpxwQUX6IILLqiVfYWHh5c7zrywsND1OgAAAOBrKNAB1Inc3Fzl5uZWul5gYGCFY9klR1f2w4cPn7PcuSwhIaFmQQIAAAAmokAHUCM2m61a6z/11FO1NgY9KSlJX375pex2u9tEcevXr1dERIQ6dOhQrdgAAAAAK6BAB1AjkZGRkqSsrKwqrV+bY9Cvu+46vfPOO3rvvfdc10E/duyYli5dqquvvrrc8ekAAACA1dkMwzDMDgKA79m4caP69u2rK6+8UjfeeKOCg4N19dVXuwp3byorK9Oll16qbdu26Z577lHTpk31/PPPa9++fdq4caM6duzo9RgAAACA2kaBDqDGHnnkES1YsECHDx+W3W7X3r17q3TJtdpw8uRJ3XPP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/PIbrmfPnurXr59++OEHt+VpaWm68sorTYoKqENHjtRO93bpdBd3L49BZxZ3oHr+9Kc/6aKLLtLGjRu1c+dOzZkzR59++ql69erlalWviU2bNqlnz57q2bOnJGnq1Knq2bOnZsyYIUk6fPiwq1iXpMTERK1YsUKrVq1Sjx499PTTT+vll1/mEmuoVeHh4a4fjrgG+i+cE72dVaBXmivnj/d0cwcsyW+6uJ9p0aJFmjlzpi699FItW7ZMzZo10wMPPKB3332XAh31w5EjUuvWtbOvyEjHwZwWdMBS9uzZo/fee08dOnSQJLVr105//OMfdcMNN2jKlClaunRpjfY7ePDgCoeGpKSklLvNli1bavR+AGrIWaBXt7ccBTpgaX7Zgi5Js2bN0tSpUzVs2DB17dpVp06d0rp16/Sf//ynTuOYP3++2rZtq7CwMPXr108bNmzwuO7gwYNls9nOuY0cOdK1zvjx4895/YorrqiLjwJfYRi124IuOVrRKdABS7nooot05Ky/S5vNpocfflgrV640KSoAdcZDF/dKOdfnUmuAJfllgZ6Zmam77rpLjzzyiDp37qzg4GCNHz9effv2rdM43nrrLU2dOlUzZ87UN998ox49eig5OfmcEyqn9957T4cPH3bdtm3bpsDAQF1//fVu611xxRVu61V1Vl/UEydPSqWltVugN2vGJHGAxYwfP1533HGH9u/f77Y8Oztb0dHRJkUFeEdBQYEGDx6swYMHq4Cx0w4eurhXmita0AFL88su7omJierYsaOWLl2qkSNHauXKlRo9erT27dune+65p87ieOaZZzRx4kRNmDBBkrRgwQKtWLFCCxcu1H333XfO+o0bN3Z7vmTJEkVERJxToIeGhio+Pt57gcO31eYl1pzi4qTNm5nxFbCQKVOmSJLat2+va665RklJSSorK9Prr7+uJ5980tzggFpmt9u1Zs0a12PI4yzuleaKAh2wNL8s0BcuXKgbb7zR9fyKK67Q559/rquuukrp6emaP3++12MoLi7W5s2bNX36dNeygIAADR06VOvWravSPl555RXdeOON51weIzU1Vc2aNVOjRo3061//Wo888oiaNGlSq/HDhzkLdOfkbrWhWTNHq/zJk9JZPyTVFiaJA6rn8OHDSktL09atW5WWlqaUlBTt2rVLNptNTz75pP773/+qe/fu6t69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PtetW6eGDRu69Q4aOnSoAgICtH79+jqPGadlZmZq4sSJ+ve//62IiAizw7E0T8cQf+VLxyWzeTou1leTJk3SyJEjzznHBpyCzA4A5sjIyHArziW5nmdkZFS4Tk5OjgoKChQeHl43wUp65ZVXlJycrJYtW7qWRUVF6emnn9Yll1yigIAAvfvuuxo1apSWLVum3/zmN3UWm9Odd96pXr16qXHjxlq7dq2mT5+uw4cP65lnnpHkyGdiYqLbNmfmvFGjRnUes9Pu3bv13HPP6amnnnIts1J+jx07prKysnL/P/7www91GktF7Ha7pkyZoksuuURdu3Z1Lf/973+vNm3aKCEhQd9++63uvfde7dy5U++9954pcfbr108pKSnq2LGjDh8+rFmzZmngwIHatm2bMjIyFBIScs7cFXFxca7vBjMtW7ZMWVlZGj9+vGuZ1fJ7JmfOyvu/e+Z3bbNmzdxeDwoKUuPGjS2R8/rKMAyNHz9et99+u/r06aP09HSzQ7Ks8o4h/s5Xjktm83RcrK+WLFmib775xjWfElAeCnQfct999+mJJ56ocJ0dO3a4TfZkNTX5DAcOHNDHH3+st99+2229pk2baurUqa7nF198sQ4dOqQ5c+bUWgFZnXjPjKV79+4KCQnRn/70J82ePVuhoaG1Ek9lapLfgwcP6oorrtD111+viRMnupbXRX79zaRJk7Rt2za38dyS3MYSd+vWTc2bN9fll1+uPXv26MILL6zrMDVixAjX4+7du6tfv35q06aN3n777Tr94a0mXnnlFY0YMcJtPLDV8gtrq+r35CeffKJTp05p+vTpdRSZ+WrzGAJIno+L9dH+/ft11113adWqVQoLCzM7HFgYBboPufvuu91ajcpzwQUXVGlf8fHx58w06pylOT4+3nV/9szNmZmZio6OrvFJfE0+w6JFi9SkSZMqFYX9+vVzTSBVG84n5/369VNpaanS09PVsWNHj/mUTue8ruM9dOiQhgwZogEDBlRpsrrazm9VNW3aVIGBgeXmr7Zyd74mT57smtzrzJ4e5enXr58kR6uTFQrIhg0bqkOHDtq9e7eGDRum4uJiZWVlubWiWyHXP//8sz799NNKW8atlF9nzjIzM9W8eXPX8szMTCUlJbnWOXtSqdLSUp04ccL0nPujqn5PfvbZZ1q3bt05P7D26dNHY8aM0auvvurF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fBhj0AFYWnp6ukaOHKn7779fN910ky644AL1799f33zzjXr16mV2eACAeigtLU2dOnXStGnTdO211yo7O1vJyclas2aNGjZsaHZ4AHyYzTAMw+wgAKA8J06c0IABAzR48GAtWLDAtXzkyJEqKyvTypUrTYwOAFBfTZo0SSdPntTixYvNDgWAn6FABwAAAKrhkksu0dVXX6377rvP7FAA+BnGoAMAAABVZBiGvvvuO3Xv3t3sUAD4IVrQAQAAAACwAFrQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BABwAAAADAAijQAQAAAACwAAp0AAAAAAAsgAIdAAAAAAALoEAHAAAAAMACKNABAAAAALAACnQAAAAAACyAAh0AAAAAAAugQAcAAAAAwAIo0AEAAAAAsAAKdAAAAAAALIACHQAAAAAAC6BAN8ns2bN18cUXq0GDBmrWrJlGjRqlnTt3Vrrd0qVL1alTJ4WFhalbt2766KOP6iBaAEB9wLEJAABzUaCbZM2aNZo0aZK+/vprrVq1SiUlJRo+fLjy8vI8brN27VrddNNNuuWWW7RlyxaNGjVKo0aN0rZt2+owcgCAv+LYBACAuWyGYRhmBwHp6NGjatasmdasWaPLLrus3HVGjx6tvLw8ffjhh65lv/rVr5SUlKQFCxbUVagAgHqCYxMAAHUryOwA4JCdnS1Jaty4scd11q1bp6lTp7otS05O1rJlyzxuU1RUpKKiItdzu92uEydOqEmTJrLZbOcXNACgygzD0KlTp5SQkKCAAN/owMaxCQD8my8em/wdBboF2O12TZkyRZdccom6du3qcb2MjAzFxcW5LYuLi1NGRobHbWbPnq1Zs2bVWqwAgPOzf/9+tWzZ0uwwKsWxCQDqD185NtUHFOgWMGnSJG3btk1fffVVre97+vTpbi0b2dnZat26tfbv36/o6Ohafz8AQPlycnLUqlUrNWjQwOxQqoRjEwD4P187NtUHFOgmmzx5sj788EN98cUXlf5qFR8fr8zMTLdlmZmZio+P97hNaGioQkNDz1keHR3NSRAAmMAXunBzbAKA+sUXjk31BQW6SQzD0B133KH3339fqampSkxMrHSb/v37a/Xq1ZoyZYpr2apVq9S/f38vRuqbysrKVFJSYnYYAOqx4OBgBQYGmh1GtXBsAgDAXBToJpk0aZIWL16s5cuXq0GDBq6xejExMQoPD5ckjR07Vi1atNDs2bMlSXfddZcGDRqkp59+WiNHjtSSJUu0adMmvfTSS6Z9DivKzc3VgQMHxAUKAJjJZrOpZcuWioqKMjuUKuPYBACAuSjQTfLCCy9IkgYPHuy2fNGiRRo/frwkad++fW6zKQ4YMECLFy/WAw88oPvvv1/t27fXsmXLKpy8p74pKyvTgQMHFBERodjYWLrrADCFYRg6evSoDhw4oPbt2/tMSzrHJgAAzMV10OuZnJwcxcTEKDs72y/H+RUWFmrv3r1q27atq7UHAMxQUFCg9PR0JSYmKiwszO+/f88HuQEAc/D9az1c7A5+qa5aztPT03XddddJknbt2qU+ffpo3759mjJligoKCqq1r5SUFBUXF7ser1u3rtbjrQ/S09MVGxurwYMHq2/fvtq4caPH9T755JNq7z8tLU0bNmyQ5Li81MyZMz2uO378eG3btq3a71HfFBQUaPDgwRo8eLAaNGjgenzixAnXOqmpqfrxxx897uPMv0WroAcPgPqirKxMhYWF3Cx0Yy4m30UXd6AWHDx4UL///e/1+uuvq3Xr1po3b16195GSkqLrrrtOISEhrq6kdcVut7t1WfV1gwYN0jvvvKP169fr//7v/8otxJ0F+vDhw6u177S0NOXm5qpv376Kj4837VrO/vRvFh4ertTUVElSnz59XI/PlJqaqj59+qhDhw51G9wv/CnfAFBbDMNQRkaGsrOzmfvHgkJDQ9W0aVNaxn0MBTpwnk6cOKFrr71WCxYsUKdOnSQ5xm9++OGHeuedd/Sf//xHxcXFysjI0AcffKDmzZsrJSVFr7zyisrKyvTII48oPDxcaWlpGjFihH73u98pJydHffr00VVXXaVHH31UH374oUJDQ/Xcc8+pW7durvdeuXKlHn30UZWVlemOO+7QTTfdpPHjxyssLEx79uxRZGSk3n//fUnSnXfeqW3btikwMFApKSlq2bKlOnfurH79+ikmJkbjxo3TxIkTlZCQIMMwdPfdd+v999/X6NGjNWDAAH3yySdas2aNHn30UVPyXBNJSUnav3+/cnJy9Ic//EHZ2dlq3ry5XnvtNb3wwgtau3atNm3apPfee08ffPCB27/Jr3/9aw0ePFi9evXSpk2b1L17d/3zn//UCy+8oBMnTuiDDz7QSy+9pL/97W965513NGfOHK1YsUI5OTl64oknNGzYsHJj+umnn/TnP/9ZRUVF6tmzp+bOnauUlJQq/T9xxtS3b19t2bJFS5cu1Q033KCAgADFx8erbdu26tGjh3bs2KH7779fOTk5uuaaa/Tpp5/WcebPz3fffac///nPMgxDV111laZMmaKUlBS9++67evvttzVnzhzdeOONKi0tVVxcnN566y2P+3rsscf08ccfyzAMzZ8/X926dVOvXr00YMAAbdy4Uddcc43uvfdeHTt2TLfeeqtycnJc/0e+/PJLPf300woKCtLVV1+twMBAPffcc+rSpYs2btyo77//Xpdddpk++eQThYWF6f7779eQIUM8/tsDgL/Jzs5WVlaWYmNjFRkZSc8hizAMQyUlJcrOztbBgwcliSLdlxioV7Kzsw1JRnZ2ttmheEVBQYHx/fffGwUFBXXyfnv37jViYmKMq666ym35oEGDjFOnThmLFi0yJkyYYBiGYTz//PPGs88+axw7dsxITk427Ha7kZubawwaNMhtG8MwjJkzZxr/+c9/jLS0NOM3v/mNYbfbDcMwjLKyMtd72O12Y8CAAUZRUZFRWlpqDBgwwCgtLTXGjRtnvPrqq4ZhGMYNN9xgbN261fjPf/5jPPjgg4ZhGMbXX39tTJo0yTAMw2jQoIFx4sQJwzAMY+TIkcbOnTsNu91uXHLJJcbnn39ubN682fjzn/9sGIZhjB071tixY4c30lir9u7da1x77bWGYRjGxx9/bIwaNcqYM2eO8cILLxiGYRgPP/yw8eqrrxqff/65cffddxuGYVT4b7JmzRrDMAzjV7/6lZGVlWUsWrTIeO655855r7y8PMMwDCMzM9O47LLLDMMwjHHjxhnfffedW3zXX3+9sXv3bsMwDOP22283Nm7cWO3/J59++qlhGIYxZ84c48UXXzQMwzCmT59uzJw50ygqKjIGDhxoGIZhLFy40PW5fUXv3r2Nq666yvj+++8Nu91uDBs2zNi7d6/rb8IwDKOoqMgoKSkxDMMw7rzzTuOTTz5x+7dw+u6774yxY8cahmEYBw8eNH7zm98YhmEYiYmJRnp6ulFaWmp06dLFMAzDuPvuu43Vq1cbhmEYjz/+uLF06VLj888/NwYOHGjY7XajtLTU6NGjh1FYWGgcP37ciIqKMgzDMJ5++mnjrbfecv09nvk3evb3kb9//54PcgP4HrvdbuzcudM4cOCA2aHAA7vdbuzbt8/Ys2ePx3X4/rUeWtDhv/r0kX65RNB5i4+XNm0q96WhQ4cqISFBM2bM0MMPP3zO6z179pQktWrVSps3b9aePXu0fft2DRkyRJJ09OhRj2/7ww8/aODAga5fpM/sYnv06FH9+OOPri7aWVlZrn2d+Z4nT578//buPiyqOv//+Gu4GzADNLlVVExXLE0NyzDbdGUXbyrdzKw0b1Jb3drN8FuJlmZlaJmZftvMbsRu1GpX3WpbzdDqlykqSmUqRZmYCprGTJoiwvn94depSTAqmPOBeT6ua66rOedzZt7zIc6bl+fMOdq+fbuWL1+u999/X5ZlKSEhQZLUunVrNWrUSJJUXFzsOX349PYXX3yxtm/fLpfLpT179njOEPi1fPQj0XvvvacePXqoYcOGmjNnjmbNmqUxY8ZIki655BKtW7dOzZs394w/28/k9Fw0bdpUJSUlVdbz4osv6uWXX1ZAQID2799f5bidO3dq1KhRkqTvvvtOaWlpXu9Tnf9PLrnkEklSQUGB53MlJyfrk08+UUhIiDp27KgtW7botdde00svvVRlLdXVpUsXz+22fovY2FhtruqH9iNFRUVq166dpFP/D37xxRde6w8dOqRx48bp22+/1b59+3TxxRerTZs2Z7zO9u3b9eGHH3quSH76SuqNGjVSixYtJEmhoaGesTk5OXrggQd07Ngx3XzzzWrSpIm6dOkih8OhgwcPKiEhQU6nU06nUy1btpQkDRkyROPGjVNcXJxSUlI4DR6A3ygvL1d5eTlHZg3mcDgUERGhvXv3qqysTMHBwXaXhGogoKP+KiqS/u+0nto2Z84c/fnPf9bChQs1cuRIr3U/Pt3Lsiy1atVKF110kd588005HA7PRTyCg4NVXl7utW27du20ZMkSTZgwQQ6Hw+t7sE2aNFFSUpLefvtthYSEeO14f/qeSUlJuv7663XfffdJkuc9fxwmYmJi9Pnnn6t169bKy8vTwIEDJUlXXXWVxo4dq/79+//mefLVj+T0d9BPa926tTZu3Kjk5GRt2rRJbdq08Zrvqn4m0plzWdnPSZLmzZunjz76SN988426d+9eZW1t27bVrFmz1KJFC1mWpfLycr300kvV/v9E+uHn1rp1a23dulXJycnaunWrgoJO7dKHDx+umTNnKiwsTI0bN/6l03eGoqIizylyvhATE6MdO3YoKSlJW7Zs0dixY7VhwwbPvC9evFhXXXWVRo8erb/97W9Vfu8xKSlJV155pZ599llJP/x/X9kpmElJSfrzn/+sK664wjN23bp1nrmOiorS119/rRMnTujo0aP66quvPLValqUnnnjC8/sFAP7g5MmTkuTpPTDT6b8Ny8vLCeh1BL9RqL9iY332WgEBAVq8eLFSU1PVrFmzs45t0qSJbrjhBl155ZUKDAxUhw4dNHfuXF1zzTW6/vrrPcFYki666CJ16dJFKSkpCgsL09y5cz3fQQ8ICNC9996rP/7xjwoICFBUVJReffXVSt/z6quv1po1a9SzZ085HA4NGTLEcxT3tAcffFA33nijYmNjdc4553h24kOGDNG9996rJ5544men6ef48EfiZcyYMRoyZIiWLl2qmJgY3XPPPTp+/LgyMjI0aNAgPfPMM5X+TCqTkpKiYcOGKScnRw8//LBneffu3dW9e3dddtllatiwYZW1zJw5U2PHjtXx48cVGBio559/vtJxVf1/8mOjR4/WoEGD9Nprr6lJkya64IILJJ064r1t27ZKz+j4NWJr6AdX3deZPn26Ro8eLcuy1K9fP7Vs2VJ/+MMfdM8992jNmjUaOXKkbr75Zr3xxhtnvZ3iRRddpDZt2ujKK69UQECA/vjHP2rSpEmVjp08ebLGjBnjuSr/I4884rU+MDBQ48ePV7du3dSuXTuvMzBuuukmPfDAA+rYsWO1Ph8A1Cd879xs/HzqHu6D7mfq+70OT98H/fR9h1F9p4/AV1RUqGfPnlq6dKni4uJUVFSksWPHasWKFXaXiJ+oqKiQZVkKDAzUpEmT1LFjRw0ePFjSqQsVrlq1Sk6n0+Yq64/TvyOHDx9W7969Pbfb+9e//qVdu3bpf/7nf7zG/3R/VN/3v78FcwPUPfzNVTf83M+J/a95OIIOQJKUk5OjSZMm6dixY+rfv7/i4uK0bt063XXXXZo1a5bd5aESx44dU+/evWVZlqKjo3X//ferpKREgwYN0oABAwjnNeypp57SsmXL9N133+mhhx6SJC1YsEAvvviiXn/9dZurAwAA9QFH0P1Mff9XMv41F4ApOIJefcwNUPfU97+5srKyNHLkSDmdTn3xxRdq2rSp1/oePXrom2++0bZt22yqsHo4gl73cLlZAAAAAKhEaWmpZsyYYXcZ8CMEdNRLnBgCwG7shwCg7uvUqZOeeeYZ7du3r1Ze37IsHTt2rFZeG3UT30FHvRIcHOy5Z3FUVBRXrgRgC8uydPDgQTkcDm5rAwB12KRJk3TTTTdpxowZVd7hRTp127nMzExlZWXp66+/VlxcnG666SZNnTrV65owLVu2VPv27fW3v/1NkydP1rZt2zRjxgx16tRJPXv21CuvvKIdO3ZowYIFcrvdSktL03PPPafQ0FDdc889Wrx4sb7//nsNGjRI8+fP53oz9RABHfVKYGCgmjVrpq+//tpzn2IAsIPD4VCzZs0UGBhodykAgF8pMTFRw4YN0zPPPKOJEycqPj6+0nGjR4/WokWLdN1112nChAnKyclRZmamduzYoeXLl3uNzc/P14033qi//OUvGjNmjNq2betZl5mZqbCwME2cOFEFBQWaN2+egoODFRAQoG+//Vb333+/NmzYoKysLCUmJmrKlCm1+vnhewR01DsNGzZUmzZtVFZWZncpAPxYcHAw4RwA6oHJkyfrhRde0MyZM/XEE0+csf6jjz7SokWLNHr0aD3zzDOSpL/+9a+Kjo7WrFmztHbtWvXs2dMzvqCgQCtXrlRaWppn2bvvvivp1JH49957z3P21cGDB7V06VL17t1bb731lue1CwoK9PzzzxPQ6yECOuqlwMBA/jAGAACwQ5cuUlGR3VWcEhsrbd78m16iVatWuvnmm7VgwQJNnDhRcXFxXutPB+f09HSv5RMmTNCsWbP0n//8xyugJyYmeoXzHxs2bJjXV6O6du2qJUuW6JZbbvEa17VrV82dO1cnT55UUBCRrj7hpwkAAACg5hQVSXv32l1Fjbr33nv14osvasaMGWccRd+9e7cCAgLUunVrr+WxsbGKjIzU7t27vZYnJiZW+T7Nmzf3eh4RESFJSkhIOGN5RUWFXC6XzjvvvF/8eWAuAjoAAACAmhMba3cFP6ihWlq1aqWhQ4d6jqJXproXJw4LC6tyXVVngFa1nDuG1D8EdAAAAAA15zeeUm6qe++9Vy+99JJmzpzptbxFixaqqKjQ559/rnbt2nmWFxcXq6SkRC1atPB1qajDuA86AAAAAPyM888/X0OHDtXTTz+toh99x75v376SpDlz5niNnz17tiSpX79+PqsRdR9H0AEAAACgGiZPnqwXX3xR+fn5uvDCCyVJHTt21PDhw7VgwQKVlJToyiuv1MaNG7Vo0SINGDDA6wJxwM/hCDoAAAAAVEPr1q01dOjQM5Y/++yzmjZtmjZt2qTx48drzZo1ysjI0NKlS22oEnWZw+LKAn7F7XYrIiJCLpdL4eHhdpcDAH6D/W/VmBug7jl+/Lh27dqlxMREhYaG2l0OqvBzPyf2v+bhCDoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAACAX4U7NpuNn0/dQ0AHAAAA8IsEBQVJkk6ePGlzJTibsrIySVJgYKDNlaC6COgAAAAAfpHAwEAFBgbK7XbbXQqqYFmWXC6XnE6ngoOD7S4H1RRkdwH+7P3339ejjz6q3Nxc7d+/X8uXL9eAAQOqHP/uu++qZ8+eZyzfv3+/YmNja7FSAIC/oDcBqA6Hw6Ho6Gjt379fTqdT55xzjhwOh91lQaeCeVlZmVwul44cOaKmTZvaXRJ+AQK6jY4ePaqOHTvqlltu0bXXXlvt7fLz8xUeHu55Hh0dXRvlAQD8EL0JQHVFRETo2LFj+uabb3Tw4EG7y8FPOJ1ONW3a1GvfDPMR0G3Up08f9enT5xdvFx0drcjIyJovCADg9+hNAKrL4XAoLi5O0dHRnu86wwyBgYGc1l5HEdDroE6dOqm0tFTt27fX/fffr8svv9zukgAAfo7eBPiv099HB/DbEdDrkLi4OM2fP19dunRRaWmpnn32WfXo0UM5OTm6+OKLK92mtLRUpaWlnudcyAMAUJPoTQAA1BwCeh3Stm1btW3b1vO8W7du+uKLL/T444/rxRdfrHSbzMxMTZs2zVclAgD8DL0JAICaw23W6rhLL71UBQUFVa7PyMiQy+XyPPbs2ePD6gAA/ojeBADAr8MR9DouLy9PcXFxVa53Op1yOp0+rAgA4O/oTQAA/DoEdBsdOXLE6wjDrl27lJeXp8aNG6t58+bKyMjQ3r179cILL0iS5syZo8TERF144YU6fvy4nn32Wa1Zs0Zvv/22XR8BAFDP0JsAALAPAd1GmzdvVs+ePT3P09PTJUnDhw9XVlaW9u/fr8LCQs/6EydOaMKECdq7d68aNGigiy66SO+8847XawAA8FvQmwAAsI/DsizL7iLgO263WxEREXK5XAoPD7e7HADwG+x/q8bcAIA92P+ah4vEAQAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAArqN3n//fV199dWKj4+Xw+HQihUrfnabd999VxdffLGcTqdat26trKysWq8TAOA/6E0AANiHgG6jo0ePqmPHjnryySerNX7Xrl3q16+fevbsqby8PI0fP16jR4/WqlWrarlSAIC/oDcBAGCfILsL8Gd9+vRRnz59qj1+/vz5SkxM1GOPPSZJateunT744AM9/vjjSktLq60yAQB+hN4EAIB9OIJeh6xfv16pqaley9LS0rR+/XqbKgIA+Dt6EwAANYcj6HVIUVGRYmJivJbFxMTI7Xbr2LFjCgsLO2Ob0tJSlZaWep673e5arxMA4D/oTQAA1ByOoNdzmZmZioiI8DwSEhLsLgkA4OfoTQAAVI6AXofExsaquLjYa1lxcbHCw8MrPUIhSRkZGXK5XJ7Hnj17fFEqAMBP0JsAAKg5nOJeh6SkpOitt97yWrZ69WqlpKRUuY3T6ZTT6azt0gAAforeBABAzeEIuo2OHDmivLw85eXlSTp1q5q8vDwVFhZKOnWEYdiwYZ7xY8eO1Zdffqm7775bO3fu1D/+8Q+9+uqruvPOO+0oHwBQD9GbAACwDwHdRps3b1bnzp3VuXNnSVJ6ero6d+6sKVOmSJL279/v+YNIkhITE/Wf//xHq1evVseOHfXYY4/p2Wef5TY2AIAaQ28CAMA+DsuyLLuLgO+43W5FRETI5XIpPDzc7nIAwG+w/60acwMA9mD/ax6OoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAI6AAAAAAAGIKADAAAAAGAAAjoAAAAAAAYgoAMAAAAAYAACOgAAAAAABiCgAwAAAABgAAK6zZ588km1bNlSoaGh6tq1qzZu3Fjl2KysLDkcDq9HaGioD6sFAPgDehMAAPYgoNvolVdeUXp6uqZOnaotW7aoY8eOSktL04EDB6rcJjw8XPv37/c8du/e7cOKAQD1Hb0JAAD7ENBtNHv2bI0ZM0YjR47UBRdcoPnz56tBgwZ6/vnnq9zG4XAoNjbW84iJifFhxQCA+o7eBACAfQjoNjlx4oRyc3OVmprqWRYQEKDU1FStX7++yu2OHDmiFi1aKCEhQf3799enn3561vcpLS2V2+32egAAUBl6EwAA9iKg2+Sbb75ReXn5GUcZYmJiVFRUVOk2bdu21fPPP69///vfeumll1RRUaFu3brp66+/rvJ9MjMzFRER4XkkJCTU6OcAANQf9CYAAOxFQK9DUlJSNGzYMHXq1ElXXnmlli1bpqioKD399NNVbpORkSGXy+V57Nmzx4cVAwDqO3oTAAA1J8juAvxVkyZNFBgYqOLiYq/lxcXFio2NrdZrBAcHq3PnziooKKhyjNPplNPp/E21AgD8A70JAAB7cQTdJiEhIUpOTlZ2drZnWUVFhbKzs5WSklKt1ygvL9cnn3yiuLi42ioTAOBH6E0AANiLI+g2Sk9P1/Dhw9WlSxddeumlmjNnjo4ePaqRI0dKkoYNG6amTZsqMzNTkvTAAw/osssuU+vWrVVSUqJHH31Uu3fv1ujRo+38GACAeoTeBACAfQjoNho8eLAOHjyoKVOmqKioSJ06ddLKlSs9F+cpLCxUQMAPJzl8++23GjNmjIqKitSoUSMlJyfrww8/1AUXXGDXRwAA1DP0JgAA7OOwLMuyuwj4jtvtVkREhFwul8LDw+0uBwD8BvvfqjE3AGAP9r/m4TvoAAAAAAAYgIAOAAAAAIABCOgAAAAAABiAgA4AAAAAgAEI6AAAAAAAGICADgAAAACAAQjoAAAAAAAYgIAOAAAAAIABCOgAAAAAABiAgA4AAAAAgAEI6AAAAAAAGICADgAAAACAAQjoAAAAAAAYgIAOAAAAAIABCOgAAAAAABiAgC7p6NGjdpcAAAAAAPBzBHRJMTExuuWWW/TBBx/YXQoAAAAAwE8R0CW99NJLOnz4sP7whz/od7/7nWbMmKF9+/bZXRYAAAAAwI8Q0CUNGDBAK1as0N69ezV27FgtXrxYLVq00FVXXaVly5bp5MmTdpcIAAAAAKjnCOg/EhUVpfT0dH388ceaPXu23nnnHV133XWKj4/XlClT9P3339tdIgAAAACgngqyuwCTFBcXa9GiRcrKytLu3bt13XXXadSoUfr66681c+ZMbdiwQW+//bbdZQIAAAAA6iECuqRly5Zp4cKFWrVqlS644AL99a9/1dChQxUZGekZ061bN7Vr186+IgEAAAAA9RoBXdLIkSN1ww03aN26dbrkkksqHRMfH6/Jkyf7uDIAgL+yLEv//Oc/tXbtWh04cEAVFRVe65ctW2ZTZQAAoLYQ0CXt379fDRo0OOuYsLAwTZ061UcVAQD83fjx4/X000+rZ8+eiomJkcPhsLskAABQywjokk6ePCm3233GcofDIafTqZCQEBuqAgD4sxdffFHLli1T37597S4FAAD4CAFdUmRk5FmPTDRr1kwjRozQ1KlTFRDAhe8BALUvIiJCrVq1srsMAADgQ6RNSVlZWYqPj9ekSZO0YsUKrVixQpMmTVLTpk311FNP6dZbb9XcuXM1Y8YMu0sFAPiJ+++/X9OmTdOxY8fsLgUAAPgIR9AlLVq0SI899piuv/56z7Krr75aHTp00NNPP63s7Gw1b95c06dP16RJk2ysFADgL66//notWbJE0dHRatmypYKDg73Wb9myxabKAABAbSGgS/rwww81f/78M5Z37txZ69evlyR1795dhYWFvi4NAOCnhg8frtzcXA0dOpSLxAEA4CcI6JISEhL03HPPnXEK+3PPPaeEhARJ0qFDh9SoUSM7ygMA+KH//Oc/WrVqlbp37253KQAAwEcI6JJmzZqlQYMG6b///a/nPuibN2/Wzp079c9//lOStGnTJg0ePNjOMgEAfiQhIUHh4eF2lwEAAHyIi8RJuuaaa5Sfn6++ffvq8OHDOnz4sPr06aOdO3fqqquukiSNGzdOs2fPtrlSAIC/eOyxx3T33Xfrq6++srsUAADgI34f0MvKytSrVy+VlZUpMzNTy5Yt07Jly5SZmamWLVvW+vs/+eSTatmypUJDQ9W1a1dt3LjxrONfe+01JSUlKTQ0VB06dNBbb71V6zUCAHxv6NChWrt2rc4//3yde+65aty4sdejNtGbAACwh9+f4h4cHKyPP/7Ylvd+5ZVXlJ6ervnz56tr166aM2eO0tLSlJ+fr+jo6DPGf/jhh7rxxhuVmZmpq666SosXL9aAAQO0ZcsWtW/f3oZPAACoLXPmzLHlfelNAADYx2FZlmV3EXa788475XQ6fX6f865du+qSSy7R//7v/0qSKioqlJCQoL/97W+aOHHiGeMHDx6so0eP6s033/Qsu+yyy9SpU6dKr0JfGbfbrYiICLlcLr7bCAA+9Ev2v2VlZfrLX/6i++67T4mJiT6q8BR6EwD4D/a/5vH7I+iSdPLkST3//PN65513lJycrHPOOcdrfW189/zEiRPKzc1VRkaGZ1lAQIBSU1M9t3b7qfXr1ys9Pd1rWVpamlasWFHj9QEA7BMcHKx//etfuu+++3z6vvQmAADsRUCXtG3bNl188cWSpM8++8xrXW3dd/abb75ReXm5YmJivJbHxMRo586dlW5TVFRU6fiioqIq36e0tFSlpaWe5263+zdUDQDwlQEDBmjFihW68847ffae9CYAAOxFQJe0du1au0uoNZmZmZo2bZrdZQAAfqE2bdrogQce0Lp16yo9u+vvf/+7TZX9dvQmAAAqR0D/kYKCAn3xxRf6/e9/r7CwMFmWVWtH0Js0aaLAwEAVFxd7LS8uLlZsbGyl28TGxv6i8ZKUkZHhdeqh2+1WQkLCb6gcAOALzz33nCIjI5Wbm6vc3FyvdQ6Ho1YCOr0JAAB7+f1t1iTp0KFD6tWrl373u9+pb9++2r9/vyRp1KhRmjBhQq28Z0hIiJKTk5Wdne1ZVlFRoezsbKWkpFS6TUpKitd4SVq9enWV4yXJ6XQqPDzc6wEAMN+uXbuqfHz55Ze18p70JgAA7EVA16mruAcHB6uwsFANGjTwLB88eLBWrlxZa++bnp6uZ555RosWLdKOHTs0btw4HT16VCNHjpQkDRs2zOtCPXfccYdWrlypxx57TDt37tT999+vzZs36/bbb6+1GgEA9rMsS7666Qq9CQAA+3CKu6S3335bq1atUrNmzbyWt2nTRrt376619x08eLAOHjyoKVOmqKioSJ06ddLKlSs9F9spLCxUQMAP/4bSrVs3LV68WPfee68mTZqkNm3aaMWKFdxnFgDqqRdeeEGPPvqoPv/8c0nS7373O9111126+eaba+096U0AANiH+6BLOvfcc7Vlyxa1adNG5557rj766CO1atVKmzdvVlpamg4dOmR3iTWGex0CgD1+6f539uzZuu+++3T77bfr8ssvlyR98MEHevLJJ/XQQw/59OrutY3eBAD2YP9rHo6gS7riiiv0wgsv6MEHH5R06uI7FRUVeuSRR9SzZ0+bqwMA+KN58+bpqaee0rBhwzzLrrnmGl144YW6//7761VABwAApxDQJT3yyCPq1auXNm/erBMnTujuu+/Wp59+qsOHD2vdunV2lwcA8EP79+9Xt27dzljerVs3z8VMAQBA/cJF4iS1b99en332mbp3767+/fvr6NGjuvbaa7V161adf/75dpcHAPBDrVu31quvvnrG8ldeeUVt2rSxoSIAAFDbOIL+fyIiIjR58mS7ywAAQJI0bdo0DR48WO+//77nO+jr1q1TdnZ2pcEdAADUfQT0/1NSUqKNGzfqwIEDqqio8Fr34+//AQDgCwMHDlROTo5mz56tFStWSJLatWunjRs3qnPnzvYWBwAAagUBXdIbb7yhIUOG6MiRIwoPD5fD4fCsczgcBHQAgC2Sk5P18ssv210GAADwEb6DLmnChAm65ZZbdOTIEZWUlOjbb7/1PA4fPmx3eQAAPxIQEKDAwMCzPoKC+Pd1AADqIzq8pL179+rvf/+7GjRoYHcpAAA/t3z58irXrV+/XnPnzj3jq1gAAKB+IKBLSktL0+bNm9WqVSu7SwEA+Ln+/fufsSw/P18TJ070fCXrgQcesKEyAABQ2wjokvr166e77rpL27dvV4cOHRQcHOy1/pprrrGpMgCAP9u3b5+mTp2qRYsWKS0tTXl5eWrfvr3dZQEAgFpCQJc0ZswYSar0iITD4VB5ebmvSwIA+DGXy6WHH35Y8+bNU6dOnZSdna0rrrjC7rIAAEAtI6BLfJcPAGCMRx55RDNnzlRs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",
+ "text/html": [
+ "\n",
+ " \n",
+ "
\n",
+ " Figure\n",
+ "
\n",
+ "
\n",
+ "
\n",
+ " "
+ ],
+ "text/plain": [
+ "Canvas(header_visible=False, toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Bac…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "c990f82f8a264cd5a2cd752eba5dcabe",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "HBox(children=(Label(value='Wavefunction component'), Checkbox(value=True, description='$|\\\\psi|$', layout=Lay…"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ },
+ {
+ "data": {
+ "application/vnd.jupyter.widget-view+json": {
+ "model_id": "df53efc46abe42dfbefc9005b4117f46",
+ "version_major": 2,
+ "version_minor": 0
+ },
+ "text/plain": [
+ "Button(description='Play', style=ButtonStyle())"
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
"source": [
"######################################################################\n",
"# Set up plot\n",
@@ -517,7 +611,7 @@
"ax2 = fig.add_subplot(222, xlim=klim,\n",
" ylim=(ymin - 0.2 * (ymax - ymin),\n",
" ymax + 0.2 * (ymax - ymin)))\n",
- "psi_k_line, = ax2.plot([], [], c='r', label=r'$|\\psi(k)|$', linewidth=1.2)\n",
+ "psi_k_line, = ax2.plot([], [], c='r', label=r'$|\\psi(p)|$', linewidth=1.2)\n",
"\n",
"p0_line1 = ax2.axvline(-p0 / hbar, c='k', ls=':', label=r'$\\pm p_0$')\n",
"p0_line2 = ax2.axvline(p0 / hbar, c='k', ls=':')\n",
@@ -525,7 +619,7 @@
"\n",
"ax2.legend(prop=dict(size=8), ncol=4, loc=1)\n",
"ax2.set_xlabel('$p$')\n",
- "ax2.set_ylabel(r'$|\\psi(k)|$')\n",
+ "ax2.set_ylabel(r'$|\\psi(p)|$')\n",
"\n",
"# axis for energy plots\n",
"ax3 = fig.add_subplot(223, xlim=(0,S.tot_steps*S.dt),ylim=(-2.,2.))\n",
@@ -734,7 +828,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.8.8"
+ "version": "3.10.6"
},
"voila": {
"authors": "Dou Du, Sara Bonella and Giovanni Pizzi"
diff --git a/notebook/quantum-mechanics/theory/theory_shooting_method.ipynb b/notebook/quantum-mechanics/theory/theory_shooting_method.ipynb
new file mode 100644
index 0000000..58aa069
--- /dev/null
+++ b/notebook/quantum-mechanics/theory/theory_shooting_method.ipynb
@@ -0,0 +1,108 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "bec50683-b438-443d-adcf-cd18fbffc0d8",
+ "metadata": {},
+ "source": [
+ "# **Background Theory**:Using the Shooting Method to Solve the Time-Independent Schrödinger Equation for a 1D Quantum Well\n",
+ "\n",
+ " Go back to the interactive notebook\n",
+ "\n",
+ "**Source code:** https://github.com/osscar-org/quantum-mechanics/blob/master/notebook/quantum-mechanics/theory/theory_shooting_method.ipynb\n",
+ "\n",
+ "
"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ae07c1b8-3889-46f3-83cb-f7d92660c627",
+ "metadata": {},
+ "source": [
+ "\n",
+ "# **Shooting method**\n",
+ " \n",
+ " \n",
+ " In numerical analysis, the shooting method is a method for solving a boundary value problem by reformulating it as an initial value problem. Roughly speaking, we 'shoot' out trajectories in different directions from an initial trial value until we find a trajectory that has the desired boundary value. You can check out the following link for additional information on the method\n",
+ "https://en.wikipedia.org/wiki/Shooting_method.\n",
+ "
\n",
+ "For the specific example of the one-dimensional time-independent Schrodinger equation with a quantum well potential, we know that the wavefunction will converge to zero at both the far left and right boundaries in order for the wavefunction to be normalizable (i.e. $\\psi(x_{\\pm \\infty})=0$). \n",
+ " By keeping the boundary value at the left hand side equal to zero, one can try different eigenvalues of the Schrödinger equation and obtain the\n",
+ " corresponding eigenfunctions (by means of a numerical integrator such as the Numerov algorithm discussed below). Only the true eigenvalue will result in the solution\n",
+ " wavefunction converging to zero at the right hand side. By scanning over the possible trial energies and monitoring the\n",
+ " solution wavefunction at the right hand boundary, we can find all allowed eigenvalues and their corresponding wavefunctions. This \n",
+ " numerical method is referred to as the shooting method. Through its use can obtain the eigenvalues and eigenfunctions of the Schrödinger equation for this 1D quantum well."
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "de09fcbb-8517-43c7-a7d0-527faea70af4",
+ "metadata": {},
+ "source": [
+ "# **Numerical integration and the Numerov algorithm**\n",
+ "\n",
+ "The time-independent Schrödinger equation is an ordinary differential equation (ODE) of second order, where the 1st-order term does not appear in the equation, i.e. it assumes the following structure: \n",
+ "$\\large \\dfrac{d^2 y}{d x^{2}} = -g(x)y(x) + s(x)$\n",
+ "\n",
+ " \n",
+ "In the particular case of the time-independent Schrödinger equation, we have: \n",
+ "
\n",
+ "\n",
+ "$\\large \\left[\n",
+ " -\\dfrac{\\hslash^2}{2m} \\, \\dfrac{\\partial^2}{\\partial x^{2}} + V(x)\\right] \\psi(x) = E\\psi(x)$ (1)\n",
+ " \n",
+ "and so $g(x)= \\frac{2m}{\\hslash^2}(E-V(x))$ and $s(x)=0$.\n",
+ " \n",
+ "For a one dimensional system, the second-derivative can be evaluated numerically via the following formula \n",
+ "
\n",
+ "\n",
+ "$\\large \\psi ''(x_{i})= \\dfrac{1}{\\delta x^2}\\left[ \\psi(x_{i+1})-2\\psi(x_i)+\\psi(x_{i-1}) \\right]$ (2)\n",
+ "\n",
+ "where $x_i$ gives the position at the i-th point on a discretized grid of $i=1,...,N$ points representing space in the x-dimension and $\\delta x = x_{i+1}-x_{i}$ is the grid spacing. \n",
+ "\n",
+ "Substituting equation 2 into equation 1, we can create an iterative procedure for generating the wavefunction $\\psi(x)$: \n",
+ "\n",
+ "$\\large \\psi(x_{i+1}) =\\delta x^2 \\psi ''(x_{i}) +2\\psi(x_i)-\\psi(x_{i-1}) = -\\dfrac{2m \\delta x^2}{\\hslash^2} \\left[E-V(x_i)\\right]\\psi(x_i) +2\\psi(x_i)-\\psi(x_{i-1})$\n",
+ "\n",
+ "I.e. if we know the value of $\\psi$ at two preceding points $x_i$ and $x_{i-1}$, then we can obtain the value of $\\psi$ at the next point $x_{i+1}$. Carrying this out for all values of $i$, we obtain our solution wavefunction.\n",
+ "\n",
+ "\n",
+ " However, the values of the first two starting points are unknown. \n",
+ " For the square well potential shown in the interactive notebook, we can assume $\\psi(x_0)$ is zero and $\\psi(x_1)$\n",
+ " is a very small positive (or negative) number. See task 4 in the interactive notebook for further discussion of the issue of initial conditions.\n",
+ " \n",
+ "There are occasions where the above approximation to the derivative is simply not accurate enough for the problem at hand. In this case, higher-order approximations must be employed. \n",
+ " The Numerov method is one such higher-order method. It is used to specifically solve the kind of \n",
+ " ODE which has a form like that of the time-independent Schrödinger equation, i.e., one having the form $\\dfrac{d^2 y}{d x^{2}} = -g(x)y(x) + s(x)$. The method capitalizes on this particular form to approximate the solution to order $O((\\delta x)^6)$, where $\\delta x$ is the step size for the integration. The method works by allowing one to relate the value of the solution at a given point on a discretized grid representing space, $y_{n+1}$, to the two previous points, $y_n$ and $y_{n-1}$, through the relationship:\n",
+ "\n",
+ "$\\large y_{n+1}\\left(1+{\\frac {(\\delta x)^{2}}{12}}g_{n+1}\\right)=2y_{n}\\left(1-{\\frac {5(\\delta x)^{2}}{12}}g_{n}\\right)-y_{n-1}\\left(1+{\\frac {(\\delta x)^{2}}{12}}g_{n-1}\\right)+{\\frac {(\\delta x)^{2}}{12}}(s_{n+1}+10s_{n}+s_{n-1})+O((\\delta x)^{6})$ \n",
+ " \n",
+ "where $s_n = s(x_n)$ and $g_n = g(x_n)$.\n",
+ "\n",
+ "\n",
+ "See https://en.wikipedia.org/wiki/Numerov's_method for a detailed derivation of the method. "
+ ]
+ }
+ ],
+ "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.11.0"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/notebook/quantum-mechanics/theory/theory_soft.ipynb b/notebook/quantum-mechanics/theory/theory_soft.ipynb
index e842fb5..5fd35c0 100644
--- a/notebook/quantum-mechanics/theory/theory_soft.ipynb
+++ b/notebook/quantum-mechanics/theory/theory_soft.ipynb
@@ -16,87 +16,61 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "## **Background theory**\n",
- "\n",
- "In previous notebooks, we focus on numerical solutions of the time-independent\n",
- "Schrödinger equation. Here, we demonstrate the numercial solution of the \n",
+ "In other notebooks, we focus on numerical solutions of the time-independent\n",
+ "Schrödinger equation. Here, we demonstrate the numerical solution of the \n",
"one-dimensional time dependent Schrödinger equation. The split operator \n",
"Fourier transform (SOFT) was employed.\n",
"\n",
- "\n",
- "Propagation operator
\n",
"Let's consider a time-independent Hamiltonian and its associated time-dependent\n",
"Schrödinger equation for a system of one particle in one dimension.\n",
" \n",
"$$\\large i\\hbar\\frac{d}{dt}|\\psi> = \\hat{H}|\\psi> \\quad \\text{where} \\quad \n",
- "\\hat{H} = \\frac{\\hat{P}^2}{2m} + V(\\hat{x})$$\n",
+ "\\hat{H} = \\frac{\\hat{P}^2}{2m} + V(\\hat{X})$$\n",
"\n",
- "The time evolution of the eigenstates can be formulated as:\n",
- " \n",
- "$$\\large \\psi_n(x,t) = \\psi_n(x)e^{-iE_nt/\\hbar}$$\n",
- " \n",
- "For a small time $\\Delta t$, the evolution of the wavefunction from $t=0$\n",
- "to $t=\\Delta t$ can be formulated as:\n",
- " \n",
- "$$\\large \\psi(x, \\Delta t) = e^{-iH\\Delta t/\\hbar}\\psi(x, 0)\n",
- "=\\sum_{n=0}^{\\infty} \\frac{(-1)^n}{n!}\\left(\\frac{iH\\Delta t}{\\hbar}\\right)^n \\psi(x,0)\n",
- "=U(\\Delta t)\\psi(x,0)$$\n",
- " \n",
- "and where the $U(\\Delta t)$ is called the unitary propagation operator.\n",
- "The $U$ is Hermitian, which fulfills the condition:\n",
" \n",
- "$$\\large UU^\\dagger = e^{-iHt/\\hbar}e^{-iHt/\\hbar \\dagger}\n",
- "= e^{-iHt/\\hbar}e^{iHt/\\hbar} = I$$\n",
- " \n",
- "The time-evolution operator is also reversible or symmetric\n",
- "in thime:\n",
- " \n",
- "$$\\large U(-\\Delta t)U(\\Delta t)|\\psi(x,t)> = |\\psi(x,t)>$$\n",
- " "
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "\n",
- "Split operator Fourier transform
\n",
"We know that this equation admits at least a formal solution of the kind\n",
"$|\\psi(t)> = \\exp\\biggl[-\\frac{i}{\\hbar}\\hat{H}t\\biggr]|\\psi(0)>$\n",
"that projected on the coordinate basis gives the (still formal) solution\n",
- "$\\psi(x_t,t) = \\int dx_0 K(x_t, t; x_0, 0)\\psi(x_0,0)$\n",
- "where $ K(x_t, t; x_0, 0)= < x_t|\\exp\\biggl[-\\frac{i}{\\hbar}\\hat{H}t\\biggr]|x_0 > $\n",
- "Note that $x_t$ and $x_0$ are just labels for the coordinates, as if we had $x$ and $x'$.\n",
+ "$\\psi(X_t,t) = \\int dX_0 K(X_t, t; X_0, 0)\\psi(X_0,0)$\n",
+ "where $ K(X_t, t; X_0, 0)= < X_t|\\exp\\biggl[-\\frac{i}{\\hbar}\\hat{H}t\\biggr]|X_0 > $\n",
+ "Note that $X_t$ and $X_0$ are just labels for the coordinates, as if we had $X$ and $X'$.\n",
"\n",
- "$$\\large k(x_t, x_0) = < x_t|e^{-\\frac{i}{\\hbar}\\hat{H}t} | x_0 > = < x_{N+1} | \\underbrace{e^{-\\frac{i}{\\hbar}t/N} e^{-\\frac{i}{\\hbar}t/N} ... e^{-\\frac{i}{\\hbar}t/N}}_\\textrm{N} |x_0 >$$\n",
+ "$$\\large k(X_t, X_0) = < X_t|e^{-\\frac{i}{\\hbar}\\hat{H}t} | X_0 > = < X_{N+1} | \\underbrace{e^{-\\frac{i\\hat{H}}{\\hbar}t/N} e^{-\\frac{i\\hat{H}}{\\hbar}t/N} ... e^{-\\frac{i\\hat{H}}{\\hbar}t/N}}_\\textrm{N} |X_0 >$$\n",
" \n",
"Let us then focus on the single step propogator.\n",
" \n",
- "$$\\large < x_1 |\\psi(\\epsilon) > = \\psi(x_1,\\epsilon) = \\int dx_0 < x_1 | \n",
- "e^{-\\frac{i}{\\hbar}\\hat{H}\\epsilon} |x_0 > \\psi(x_0,0)$$\n",
+ "$$\\large < X_1 |\\psi(\\epsilon) > = \\psi(X_1,\\epsilon) = \\int dX_0 < X_1 | \n",
+ "e^{-\\frac{i}{\\hbar}\\hat{H}\\epsilon} |X_0 > \\psi(X_0,0)$$\n",
" \n",
"We can use the Trotter approximation to write:\n",
" \n",
- "$$\\large < x_1 |e^{-\\frac{i}{\\hbar}\\hat{H}\\epsilon}| x_0 > = < x_1 | e^{-\\frac{i}{\\hbar}\n",
- "[\\frac{\\hat{P^2}}{2m}+V(\\hat{x})]\\epsilon} | x_0> \\approx < x_1 | e^{-\\frac{i}\n",
- "{\\hbar}V(\\hat{x})\\epsilon/2}e^{-\\frac{i}{\\hbar}\\frac{\\hat{P^2}}{2m}\\epsilon}e^{-\\frac{i}\n",
- "{\\hbar}V(\\hat{x})\\epsilon/2} | x_0 >$$\n",
+ "$$\\large < X_1 |e^{-\\frac{i}{\\hbar}\\hat{H}\\epsilon}| X_0 > = < X_1 | e^{-\\frac{i}{\\hbar}\n",
+ "[\\frac{\\hat{P^2}}{2m}+V(\\hat{X})]\\epsilon} | X_0> \\approx < X_1 | e^{-\\frac{i}\n",
+ "{\\hbar}V(\\hat{X})\\epsilon/2}e^{-\\frac{i}{\\hbar}\\frac{\\hat{P^2}}{2m}\\epsilon}e^{-\\frac{i}\n",
+ "{\\hbar}V(\\hat{X})\\epsilon/2} | X_0 >$$\n",
" \n",
- "$$\\large =e^{-\\frac{i}{\\hbar}V(\\hat{x})\\epsilon /2} \\int dp < x_1 | e^{-\\frac{i}{\\hbar}\\frac{\\hat{P^2}}{2m}\\epsilon} | p > < p | x_0 > e^{ \n",
- "\\frac{i}{\\hbar}V(\\hat{x})\\epsilon/2}$$\n",
+ "$$\\large =e^{-\\frac{i}{\\hbar}V(\\hat{X})\\epsilon /2} \\int dp < X_1 | e^{-\\frac{i}{\\hbar}\\frac{\\hat{P^2}}{2m}\\epsilon} | P > < P | X_0 > e^{ \n",
+ "\\frac{i}{\\hbar}V(\\hat{X})\\epsilon/2}$$\n",
" \n",
- "where, $< p | x_0 > = \\frac{1}{\\sqrt{2\\pi\\hbar}}e^{-\\frac{i}{\\hbar}Px_0}$.\n",
+ "where, $< p | X_0 > = \\frac{1}{\\sqrt{2\\pi\\hbar}}e^{-\\frac{i}{\\hbar}PX_0}$.\n",
" \n",
- "$$\\large \\psi(x_1,\\epsilon)=e^{-\\frac{1}{\\hbar}V(x_1)\\epsilon/2}\\int \\frac{dp}{\\sqrt{2\\pi\\hbar}}e^{\\frac{i}{\\hbar}px_1}e^{-\\frac{i}{\\hbar}\\frac{p^2}{2m}\\epsilon}\\underbrace{\\int \\frac{dx_0}{\\sqrt{2\\pi\\hbar}}e^{-\\frac{i}{\\hbar}px_0}\\underbrace{e^{-\\frac{i}{\\hbar}V(x_0)\\frac{\\epsilon}{2}}\\psi(x_0,0)}_{\\Phi_{\\frac{\\epsilon}{2}}(x_0)}}_{\\tilde{\\Phi}_{\\frac{\\epsilon}{2}}(p)}$$\n",
+ "$$\\large \\psi(X_1,\\epsilon)=e^{-\\frac{1}{\\hbar}V(X_1)\\epsilon/2}\\int \\frac{dP}{\\sqrt{2\\pi\\hbar}}e^{\\frac{i}{\\hbar}PX_1}e^{-\\frac{i}{\\hbar}\\frac{P^2}{2m}\\epsilon}\\underbrace{\\int \\frac{dX_0}{\\sqrt{2\\pi\\hbar}}e^{-\\frac{i}{\\hbar}PX_0}\\underbrace{e^{-\\frac{i}{\\hbar}V(X_0)\\frac{\\epsilon}{2}}\\psi(X_0,0)}_{\\Phi_{\\frac{\\epsilon}{2}}(X_0)}}_{\\tilde{\\Phi}_{\\frac{\\epsilon}{2}}(P)}$$\n",
" \n",
- "$$\\large \\psi(x_1,\\epsilon)=e^{-\\frac{1}{\\hbar}V(x_1)\\epsilon/2}\\underbrace{\\int \\frac{dp}{\\sqrt{2\\pi\\hbar}}e^{\\frac{i}{\\hbar}px_1}\\underbrace{e^{-\\frac{i}{\\hbar}\\frac{p^2}{2m}\\epsilon}\\tilde{\\Phi}_{\\frac{\\epsilon}{2}}(p)}_{\\tilde{\\Phi}(p)}}_{\\tilde{\\Phi}(x_1)}$$\n",
+ "$$\\large \\psi(X_1,\\epsilon)=e^{-\\frac{1}{\\hbar}V(X_1)\\epsilon/2}\\underbrace{\\int \\frac{dP}{\\sqrt{2\\pi\\hbar}}e^{\\frac{i}{\\hbar}PX_1}\\underbrace{e^{-\\frac{i}{\\hbar}\\frac{P^2}{2m}\\epsilon}\\tilde{\\Phi}_{\\frac{\\epsilon}{2}}(P)}_{\\tilde{\\Phi}(P)}}_{\\tilde{\\Phi}(X_1)}$$, \n",
+ "\n",
+ "where we recognize $\\tilde{\\Phi}(P)$ as the Fourier transform of $\\Phi(X)$ for instance.\n",
" \n",
- "By interating N times, we can obtain $\\psi(x,t)$. In summary, the split operator\n",
- "Fourier transfer algorithm can be conducted into five step as shown below:\n",
+ "By interating N times, we can obtain $\\psi(X,t)$. In summary, the split operator\n",
+ "Fourier transfer algorithm can be reduced into the repeated execution of the five steps shown below:\n",
"\n",
- "\n",
- " "
+ "\n",
+ "\n"
]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": []
}
],
"metadata": {
@@ -115,7 +89,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.8.8"
+ "version": "3.10.6"
},
"voila": {
"authors": "Dou Du, Sara Bonella and Giovanni Pizzi"