{ "cells": [ { "cell_type": "markdown", "id": "d06baf83", "metadata": {}, "source": [ "# SOQCS Example 9: Dielectric film with losses." ] }, { "cell_type": "markdown", "id": "1ca2492b", "metadata": {}, "source": [ "

We consider a circuit made of single dielectric thin film as studied in [1]. We reproduce numerically the results presented in figs 2 and 3 of the same ref. [1] obtained by means of analytical calculations to validate the loss model in SOQCS. Each of the figures correspond to the cases where two photons are injected in the dielectric from the same direction or from opposite directions. Here, both situations are considered as two different input channels therefore we plot the different outcome probabilities as function of the transmission amplitude |t| for each of the two cases | 2, 0 > and | 1, 1 >.

\n", "
\n", "
\n", "[1] Stephen M. Barnett, et Al. Quantum optics of lossy beam splitters. Physical Review A Volume 57 Number 3 (1998)" ] }, { "cell_type": "code", "execution_count": 1, "id": "5f976a0f", "metadata": {}, "outputs": [], "source": [ "import soqcs # Import SOQCS\n", "import numpy as np # Import numpy" ] }, { "cell_type": "markdown", "id": "5c0ffbac", "metadata": {}, "source": [ "## Build the plotting function for a | 2, 0 > input." ] }, { "cell_type": "markdown", "id": "100033b7", "metadata": {}, "source": [ "### SOQCS Circuit." ] }, { "cell_type": "markdown", "id": "8a09c256", "metadata": {}, "source": [ "

Next, we build a function that contains the calculation of the output probability of the dielectric given a transmission amplitude t for the case when the input is $|2, 0 >$. The probability is calculated for a specific outcome. Its occupation is provided to the function as parameters.
\n", "
\n", "Note: This is not the most efficient implementation. All the objects have to be recreated for each point calculation and only one probability is returned at a time (even if various have been calculated). This code is implemented for demonstration purposes therefore it is intended to be simple.

" ] }, { "cell_type": "code", "execution_count": 2, "id": "9d83d972", "metadata": {}, "outputs": [], "source": [ "def DieProb(x,args):\n", " #Obtain t\n", " t=np.sqrt(x/2.0)\n", " #Build the circuit\n", " example = soqcs.qodev(nph=2, nch=2, nm=1, ns=2, clock=0, R=0, loss=True)\n", " example.add_photons(2,0,0, 0.0, 1.0,1.0)\n", " example.dielectric(0,1,t,1j* t)\n", " example.detector(0);\n", " example.detector(1);\n", "\n", " # Create a simulator and run the simulation\n", " sim=soqcs.simulator()\n", " measured=sim.run(example)\n", " \n", " term=[[0 , 1],\n", " [args[0],args[1]]]\n", " prob=measured.prob(term,example) \n", " return prob" ] }, { "cell_type": "markdown", "id": "ff6a14ee", "metadata": {}, "source": [ "### Results." ] }, { "cell_type": "markdown", "id": "5ac4d1a6", "metadata": {}, "source": [ "* $| 2, 0 >$: Black\n", "* $| 1, 1 >$: Red\n", "* $| 1, 0 >$: Green\n", "* $| 0, 2 >$: Yellow\n", "* $| 0, 1 >$: Blue\n", "* $| 0, 0 >$: Purple\n", "\n", "Some colors may not be vissible if two plots are the same ( for example | 2, 0 > and | 0, 2 > )." ] }, { "cell_type": "code", "execution_count": 3, "id": "db55791c", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ " #Arg1 #Arg2\n", "args=[{0:2, 1:0}, #Plot 1\n", " {0:1, 1:1}, #Plot 2\n", " {0:1, 1:0}, #Plot 3 \n", " {0:0, 1:2}, #Plot 4 \n", " {0:0, 1:1}, #Plot 5 \n", " {0:0, 1:0}] #Plot 6\n", "\n", "soqcs.plot(DieProb,6,5,'$2|t|^2$', 0.0, 0.9999, 3 ,'P', 0.0 , 1.0, 3, 100, args,['k','r','g','y','b','m'])" ] }, { "cell_type": "markdown", "id": "9a428352", "metadata": {}, "source": [ "## Build the plotting function for a | 1, 1 > input." ] }, { "cell_type": "markdown", "id": "57bd5bdc", "metadata": {}, "source": [ "### Individual function" ] }, { "cell_type": "markdown", "id": "413c9c26", "metadata": {}, "source": [ "

Next, we build a function that contains the calculation of the output probability of the dielectric given a transmission amplitude t for the case when the input is $|1, 1 >$. The probability is calculated for a specific outcome. Its occupation is provided to the function as parameters.
\n", "
\n", "Note: This is not the most efficient implementation. All the objects have to be recreated for each point calculation and only one probability is returned at a time (even if various have been calculated). This code is implemented for demonstration purposes therefore it is intended to be simple.

" ] }, { "cell_type": "code", "execution_count": 4, "id": "9dfe9b61", "metadata": {}, "outputs": [], "source": [ "def DieProb(x,occ1,occ2): \n", " # Obtain t\n", " t=np.sqrt(x/2.0)\n", " \n", " #Build the circuit\n", " example = soqcs.qodev(nph=2, nch=2, nm=1, ns=2, clock=0, R=0, loss=True)\n", " example.add_photons(1,0,0, 0.0, 1.0,1.0)\n", " example.add_photons(1,1,0, 0.0, 1.0,1.0)\n", " example.dielectric(0,1,t,t)\n", " example.detector(0,);\n", " example.detector(1);\n", "\n", " # Create a simulator and run the simulation\n", " sim=soqcs.simulator()\n", " measured=sim.run(example)\n", " \n", " term=[[0,1],\n", " [occ1,occ2]]\n", " prob=measured.prob(term,example) \n", " return prob" ] }, { "cell_type": "markdown", "id": "ffcc78ee", "metadata": {}, "source": [ "### Sum function" ] }, { "cell_type": "markdown", "id": "0840136e", "metadata": {}, "source": [ "In this case the interest is to give the total probability of detecting at the output 0, 1 or 2 photons independently of the channel where those are detected. Therefore we need to sum the probabilities of the different outcomes that contain 0, 1 or 2 photons in each case." ] }, { "cell_type": "code", "execution_count": 5, "id": "f52ed475", "metadata": {}, "outputs": [], "source": [ "def DieSumProb(x,args): \n", " if(args[0]==2):\n", " probs1=DieProb(x,2,0)\n", " probs2=DieProb(x,1,1)\n", " probs3=DieProb(x,0,2)\n", " probs=probs1+probs2+probs3\n", " \n", " if(args[0]==1):\n", " probs1=DieProb(x,1,0)\n", " probs2=DieProb(x,0,1)\n", " probs=probs1+probs2\n", " \n", " if(args[0]==0):\n", " probs=DieProb(x,0,0)\n", "\n", " return probs" ] }, { "cell_type": "markdown", "id": "f56dd96b", "metadata": {}, "source": [ "## Plotting the function" ] }, { "cell_type": "markdown", "id": "c09d1b77", "metadata": {}, "source": [ "* $| 2 >$: Black\n", "* $| 1 >$: Red\n", "* $| 0 >$: Green" ] }, { "cell_type": "code", "execution_count": 6, "id": "c9cf9c32", "metadata": {}, "outputs": [ { "data": { "image/png": "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xfr161mzZg1r1qzh1KlTma5bokQJHnzwQXr16kWPHj0oVaqUDSsVIpc0bAg7d8J77xlHRomJEBVlDOFesQJmznTYc8xyJJRTBw/CkCHGzxSlS8PXXxshJHIsISGB3bt3s3btWv7880+2bdtGQuquiXRq167Nww8/zEMPPUTr1q0pVKiQDasVIo/t2gXDhsHRo3faPD1h9mz4179yZRdyJOQIkpKMEW4vvwyxsXfau3c3zgd5e5tXm4NLSkoiKCiI9evX8/fff7Nx40YiIiIyXb9o0aJ07NiRnj170qNHD+lmE/lb06awd69xXdEXXxht164ZXf5jxsBnn0GRIubWmA1yJHQ/Ll82Rq2sWXOnrXBh+PRTeOYZue4nm5KSkjh06BAbN25kw4YNbNy4kevXr991m4YNG9KtWzcefPBBWrdujZubm42qFcKO/PUXjBgBwcF32mrXhh9/BH//+35aORKyZ6tWGScIU39I+vsb/9Nr1zavLgcSHx9PYGAgmzdvZvPmzWzZsoUbN27cdZtKlSrRuXNnunbtSpcuXSjvoP3fQuSqrl3hwAHjYvhffjHajh6F5s3h44/h+eft/kuxHAllVWws/Oc/xmiUFErBpEnGyUKZ8y1ToaGh7Nixg3/++Yd//vmHHTt2cPv27btu4+npSYcOHejYsSNdunShRo0aMoRaiMxobQzZfu45Y8BCih494LvvoFy5bD2dDNG2gWyF0MmTxiCDvXvvtHl5wQ8/GHO/CYuEhAQOHTrEjh072L59O9u3b+fIkSP33M7T05P27dvTvn17OnToQL169SR0hMiuEydg0CDYs+dOW4UKxqwt2fisku44e7JwoTEM8tatO20PP2x86yhb1ry67IDWmlOnTrFr1y7Lsnfv3nse5YAxNU7btm1p164dbdu2pXbt2hI6QuSUry9s3QqvvWacowZj1pauXeGNN+DNN202/1xWyZFQZqKjjakxZs680+bqCp98AuPH230/a25LSEjg+PHjBAYGEhgYyJ49ewgMDCQ8PPye27q4uNCoUSNatmxJ69atad26NZUqVbJB1UIUYGvWGEO5r16909a+vXH++h6jd+VIyGwnTsCjjxon/FJUrw6LFkFAgHl12cjNmzcJCgriwIED7N+/n/379xMUFER0dHSWtq9UqRLNmzenefPmtGjRgoCAAIo40JBRIfKF7t1h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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "soqcs.plot(DieSumProb,6,5,'$2|t|^2$', 0.0, 0.5, 3 ,'P', 0.0 , 1.0, 3, 100, [{0:2},{0:1},{0:0}],['k','r','g'])" ] }, { "cell_type": "markdown", "id": "78782dc1", "metadata": {}, "source": [ "**THIS CODE IS PART OF SOQCS**
\n", "\n", "**Copyright:**
\n", "Copyright © 2023 National University of Ireland Maynooth, Maynooth University. All rights reserved.\n", "The contents and use of this document and the related code are subject to the licence terms detailed in LICENCE.txt" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.8" } }, "nbformat": 4, "nbformat_minor": 5 }