{ "cells": [ { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline \n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "import arc as arc" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "atom=arc.Lithium6()\n", "pqn = [10]\n", "colors = ['blue']\n", "l = 0 # S state\n", "j = 0.5 # J = 1/2\n", "\n", "plotLegend = []\n", "for i in range(len(pqn)):\n", " n = pqn[i]\n", " step = 0.001 \n", " a1,b1 = atom.radialWavefunction(l,0.5,j,\\\n", " atom.getEnergy(n, l, j)/27.211,\\\n", " atom.alphaC**(1/3.0),\\\n", " 2.0*n*(n+15.0), step)\n", " legendInfo, = plt.plot(a1,(b1)*(b1),\\\n", " \"-\",lw=2,color = colors[i], label = (\"n = %d\" % n) )\n", " plotLegend.append(legendInfo)\n", " \n", "plt.legend(handles=plotLegend)\n", "plt.xlabel(r\"Distance from nucleus $r$ ($a_0$)\")\n", "plt.ylabel(r\"$\\vert rR(r)\\vert^2$\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Li D2 transition 10S_{1/2} --> 11S_{1/2}\n", "===========================================\n", " = 2.864 ea_0\n", "\n" ] } ], "source": [ "#Li D2 transition 10S_{1/2} --> 11P_{3/2}\n", "n1=10\n", "l1=0\n", "j1=0.5\n", "mj1=0.5\n", "n2=11\n", "l2=1\n", "j2=1.5\n", "mj2=1.5\n", "\n", "print(\"Li D2 transition 10S_{1/2} --> 11S_{1/2}\")\n", "print(\"===========================================\")\n", "print(\" = %.3f ea_0\\n\" % \\\n", " atom.getDipoleMatrixElement(n1,l1,j1,mj1,n2,l2,j2,mj2,1))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "# calcualtion of energy defects and c3 terms for atom-pairs\n", "n0=60;l0=0;j0=0.5;mj0=0.5; #Target State\n", "theta=0; #Polar Angle [0-pi]\n", "phi=0; #Azimuthal Angle [0-2pi]\n", "dn = 5; #Range of n to consider (n0-dn:n0+dn)\n", "deltaMax = 25e9 #Max pair-state energy difference [Hz]\n", "\n", "#Set target-state and extract value\n", "calculation = PairStateInteractions(Rubidium(), n0,l0,j0,n0,l0,j0, mj0,mj0)" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([3, 4, 5, 6, 7, 8, 9])" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rlist=np.arange(3,10)*1e-6\n", "Enerlist= " ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\u001b[1;31mType:\u001b[0m PairStateInteractions\n", "\u001b[1;31mString form:\u001b[0m \n", "\u001b[1;31mFile:\u001b[0m c:\\programdata\\anaconda3\\lib\\site-packages\\arc\\calculations_atom_pairstate.py\n", "\u001b[1;31mDocstring:\u001b[0m \n", "Calculates Rydberg level diagram (spaghetti) for the given pair state\n", "\n", "Initializes Rydberg level spaghetti calculation for the given atom in\n", "the vicinity of the given pair state. For details of calculation see\n", "Ref. [1]_. For a quick start point example see\n", "`interactions example snippet`_.\n", "\n", ".. _`interactions example snippet`:\n", " ./Rydberg_atoms_a_primer.html#Short-range-interactions\n", "\n", "Args:\n", " atom (:obj:`AlkaliAtom`): ={ :obj:`alkali_atom_data.Lithium6`,\n", " :obj:`alkali_atom_data.Lithium7`,\n", " :obj:`alkali_atom_data.Sodium`,\n", " :obj:`alkali_atom_data.Potassium39`,\n", " :obj:`alkali_atom_data.Potassium40`,\n", " :obj:`alkali_atom_data.Potassium41`,\n", " :obj:`alkali_atom_data.Rubidium85`,\n", " :obj:`alkali_atom_data.Rubidium87`,\n", " :obj:`alkali_atom_data.Caesium` }\n", " Select the alkali metal for energy level\n", " diagram calculation\n", " n (int): principal quantum number for the *first* atom\n", " l (int): orbital angular momentum for the *first* atom\n", " j (float): total angular momentum for the *first* atom\n", " nn (int): principal quantum number for the *second* atom\n", " ll (int): orbital angular momentum for the *second* atom\n", " jj (float): total angular momentum for the *second* atom\n", " m1 (float): projection of the total angular momentum on z-axis\n", " for the *first* atom\n", " m2 (float): projection of the total angular momentum on z-axis\n", " for the *second* atom\n", " interactionsUpTo (int): Optional. If set to 1, includes only\n", " dipole-dipole interactions. If set to 2 includes interactions\n", " up to quadrupole-quadrupole. Default value is 1.\n", " s2 (float): optinal, spin state of the second atom. If not\n", " specified (left to default value None) it will assume spin\n", " state of the first atom.\n", " atom2 (:obj:`AlkaliAtom` or :obj:`DivalentAtom`): optional,\n", " specifies atomic species for the second atom, enabeling\n", " calculation of **inter-species pair-state interactions**.\n", " If not specified (left to default value None) it will assume\n", " spin state of the first atom.\n", "\n", "References:\n", " .. [1] T. G Walker, M. Saffman, PRA **77**, 032723 (2008)\n", " https://doi.org/10.1103/PhysRevA.77.032723\n", "\n", "Examples:\n", " **Advanced interfacing of pair-state is2=None, atom2=Nonenteractions calculations\n", " (PairStateInteractions class).** This\n", " is an advanced example intended for building up extensions to the\n", " existing code. If you want to directly access the pair-state\n", " interaction matrix, constructed by :obj:`defineBasis`,\n", " you can assemble it easily from diagonal part\n", " (stored in :obj:`matDiagonal` ) and off-diagonal matrices whose\n", " spatial dependence is :math:`R^{-3},R^{-4},R^{-5}` stored in that\n", " order in :obj:`matR`. Basis states are stored in :obj:`basisStates`\n", " array.\n", "\n", " >>> from arc import *\n", " >>> calc = PairStateInteractions(Rubidium(), 60,0,0.5, 60,0,0.5, 0.5,0.5,interactionsUpTo = 1)\n", " >>> # theta=0, phi = 0, range of pqn, range of l, deltaE = 25e9\n", " >>> calc.defineBasis(0 ,0 , 5, 5, 25e9, progressOutput=True)\n", " >>> # now calc stores interaction matrix and relevant basis\n", " >>> # we can access this directly and generate interaction matrix\n", " >>> # at distance rval :\n", " >>> rval = 4 # in mum\n", " >>> matrix = calc.matDiagonal\n", " >>> rX = (rval*1.e-6)**3\n", " >>> for matRX in self.matR:\n", " >>> matrix = matrix + matRX/rX\n", " >>> rX *= (rval*1.e-6)\n", " >>> # matrix variable now holds full interaction matrix for\n", " >>> # interacting atoms at distance rval calculated in\n", " >>> # pair-state basis states can be accessed as\n", " >>> basisStates = calc.basisStates\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "?calculation" ] } ], "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.7.6" } }, "nbformat": 4, "nbformat_minor": 4 }