{"id":1027,"date":"2018-11-01T13:06:15","date_gmt":"2018-11-01T13:06:15","guid":{"rendered":"http:\/\/second-tech.com\/wordpress\/?p=1027"},"modified":"2020-01-10T12:18:23","modified_gmt":"2020-01-10T12:18:23","slug":"creating-models-with-complex-geometries-using-an-indexfilter-in-tbtk","status":"publish","type":"post","link":"http:\/\/second-tech.com\/wordpress\/index.php\/2018\/11\/01\/creating-models-with-complex-geometries-using-an-indexfilter-in-tbtk\/","title":{"rendered":"Creating Models with complex geometries using an IndexFilter in TBTK"},"content":{"rendered":"<p><i>Most recent TBTK release at the time of writing: v1.0.3<\/i><br \/>\n<i>Updated to work with: v2.0.0<\/i><\/p>\n<p>One of the core strengths of <a href=\"http:\/\/second-tech.com\/wordpress\/index.php\/tbtk\/\">TBTK<\/a> is the generality of the quantum systems that can be modeled and the ease with which such models can be created. In this post we will take a look at how the use of an IndexFilter can simplify this process further. In particular, we will show how to setup the Schr\u00f6dinger equation on a simple annulus shaped geometry and how to calculate the energy and probability density for a given state.<\/p>\n<p>In addition to showing how to use an IndexFilter, this post also provides a simple example of quantum mechanics in polar coordinates. The solutions we arrive at show similarities with the s, p, and d orbitals, and the radial wave functions that appears as solutions to the Schr\u00f6dinger equation in a central potential (the Hydrogen atom). This without the need of introducing a spatially varying potential. As such it can give useful insights into aspects of quantum mechanics that can be difficult to grasp from the derivation of the solutions to the full fledged Schr\u00f6dinger equation in a central potential.<\/p>\n<p>The material closely parallels the earlier post <a href=\"http:\/\/second-tech.com\/wordpress\/index.php\/2018\/10\/27\/direct-access-to-wave-function-amplitudes-and-eigenvalues-in-tbtk\/\">Direct access to wave function amplitudes and eigenvalues in TBTK<\/a>, which provide more details on some of the content that is treated more briefly here.<\/p>\n<div class=\"a-single a-4\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script>\r\n<ins class=\"adsbygoogle\"\r\n     style=\"display:block; text-align:center;\"\r\n     data-ad-layout=\"in-article\"\r\n     data-ad-format=\"fluid\"\r\n     data-ad-client=\"ca-pub-3756520172792312\"\r\n     data-ad-slot=\"9656949358\"><\/ins>\r\n<script>\r\n     (adsbygoogle = window.adsbygoogle || []).push({});\r\n<\/script><\/div>\n<h2>Model<\/h2>\n<p>The model that we consider here is the Hamiltonian<\/p>\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 44px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-8192fbef0d654403e8bd881d74741a3a_l3.png\" height=\"44\" width=\"125\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#091; &#72;&#32;&#61;&#32;&#45;&#116;&#92;&#115;&#117;&#109;&#95;&#123;&#92;&#108;&#97;&#110;&#103;&#108;&#101;&#32;&#105;&#106;&#92;&#114;&#97;&#110;&#103;&#108;&#101;&#125;&#99;&#95;&#123;&#105;&#125;&#94;&#123;&#92;&#100;&#97;&#103;&#103;&#101;&#114;&#125;&#99;&#95;&#123;&#106;&#125;&#44; &#92;&#093;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n<p>on an annulus with inner radius <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-0c3b951596977bcd7e87e9f86b04a003_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#82;&#95;&#105;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"18\" style=\"vertical-align: -3px;\"\/> and outer radius <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-33033bcdfe95204f08b2b8a9b9861d09_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#82;&#95;&#123;&#111;&#125;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"20\" style=\"vertical-align: -3px;\"\/>. Here <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-b5058d9507f49acb6c33457e030e789e_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#108;&#97;&#110;&#103;&#108;&#101;&#32;&#105;&#106;&#92;&#114;&#97;&#110;&#103;&#108;&#101;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"25\" style=\"vertical-align: -5px;\"\/> denotes summation over nearest neighbors and the Hamiltonian can be considered to be the (square lattice) discretized version of the Schr\u00f6dinger equation with<\/p>\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 94px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-792d9a388f86a4b5574a9d21ca16cb5d_l3.png\" height=\"94\" width=\"358\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#091;&#92;&#98;&#101;&#103;&#105;&#110;&#123;&#97;&#108;&#105;&#103;&#110;&#101;&#100;&#125; &#72;&#95;&#123;&#83;&#125;&#32;&#38;&#61;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#45;&#92;&#104;&#98;&#97;&#114;&#94;&#50;&#125;&#123;&#50;&#109;&#125;&#92;&#108;&#101;&#102;&#116;&#40;&#92;&#102;&#114;&#97;&#99;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#94;&#50;&#125;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#32;&#120;&#94;&#50;&#125;&#32;&#43;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#94;&#50;&#125;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#32;&#121;&#94;&#50;&#125;&#92;&#114;&#105;&#103;&#104;&#116;&#41;&#32;&#43;&#32;&#86;&#40;&#120;&#44;&#121;&#41;&#92;&#92; &#38;&#61;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#45;&#92;&#104;&#98;&#97;&#114;&#94;&#50;&#125;&#123;&#50;&#109;&#125;&#92;&#108;&#101;&#102;&#116;&#40;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#114;&#125;&#92;&#102;&#114;&#97;&#99;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#125;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#32;&#114;&#125;&#92;&#108;&#101;&#102;&#116;&#40;&#114;&#92;&#102;&#114;&#97;&#99;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#125;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#32;&#114;&#125;&#92;&#114;&#105;&#103;&#104;&#116;&#41;&#32;&#43;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#114;&#94;&#50;&#125;&#92;&#102;&#114;&#97;&#99;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#94;&#50;&#125;&#123;&#92;&#112;&#97;&#114;&#116;&#105;&#97;&#108;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#94;&#50;&#125;&#92;&#114;&#105;&#103;&#104;&#116;&#41;&#32;&#43;&#32;&#86;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#44; &#92;&#101;&#110;&#100;&#123;&#97;&#108;&#105;&#103;&#110;&#101;&#100;&#125;&#92;&#093;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n<p>with <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-cdd4336816741e7262dfe9c7b22f4a6a_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#104;&#98;&#97;&#114;&#94;&#50;&#47;&#50;&#109;&#100;&#120;&#94;&#50;&#32;&#61;&#32;&#92;&#104;&#98;&#97;&#114;&#94;&#50;&#47;&#50;&#109;&#100;&#121;&#94;&#50;&#32;&#61;&#32;&#116;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"208\" style=\"vertical-align: -5px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-f4d73c1df4525ce51bfbd413ee59af0d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#86;&#40;&#120;&#44;&#32;&#121;&#41;&#32;&#61;&#32;&#86;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#32;&#61;&#32;&#45;&#52;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"178\" style=\"vertical-align: -4px;\"\/>.<\/p>\n<h3>Parameters<\/h3>\n<p>To set up this model we first specify the following parameters.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n\/\/Parameters.\r\nconst unsigned int SIZE = 41;\r\nconst unsigned int SIZE_X = SIZE;\r\nconst unsigned int SIZE_Y = SIZE;\r\nconst double OUTER_RADIUS = SIZE\/2;\r\nconst double INNER_RADIUS = SIZE\/8;\r\ndouble t = 1;\r\nint state = 0;\r\n<\/pre>\n<p>The first three parameters specifies an underlying <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-c4ee86aff2d92930bc366e57a56ba8b5_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#52;&#49;&#92;&#116;&#105;&#109;&#101;&#115;&#32;&#52;&#49;\" title=\"Rendered by QuickLaTeX.com\" height=\"13\" width=\"56\" style=\"vertical-align: -1px;\"\/> grid. The fourth and fifth parameter defines the outer and inner radius of the annulus and we also set <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-14abf99c05aca801d5c2ba2350cc5296_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#116;&#32;&#61;&#32;&#49;\" title=\"Rendered by QuickLaTeX.com\" height=\"13\" width=\"38\" style=\"vertical-align: -1px;\"\/>. The last parameter is used to indicate for which state we are going to calculate the energy and probability density.<\/p>\n<h3>IndexFilter<\/h3>\n<p>The basic idea behind an IndexFilter is to allow for geometry specific information to be separated from the specification of the Hamiltonian.<br \/>\nIt is possible to add if-statements in the model specification to guard against the addition of HoppingAmplitudes to sites that are not supposed to be included. However, allowing for such elements to be passed to the Model and instead use a filter to exclude invalid terms results in cleaner and less error prone code.<\/p>\n<p>To create an IndexFilter we need to inherit from the class AbstractIndexFilter and implement the functions clone() and isIncluded().<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n\/\/IndexFilter.\r\nclass MyIndexFilter\r\n\t: public AbstractIndexFilter{\r\npublic:\r\n\t\/\/Implements AbstractIndexFilter::clone().\r\n\tMyIndexFilter* clone() const{\r\n\t\treturn new MyIndexFilter();\r\n\t}\r\n\r\n\t\/\/Implements\r\n\t\/\/AbstractIndexFilter::isIncluded().\r\n\tbool isIncluded(const Index &amp;index) const{\r\n\t\t\/\/Extract x and y from the Index.\r\n\t\tint x = index&#x5B;0];\r\n\t\tint y = index&#x5B;1];\r\n\r\n\t\t\/\/Calculate the distance from the\r\n\t\t\/\/center.\r\n\t\tdouble r = sqrt(\r\n\t\t\tpow(abs(x - (int)SIZE_X\/2), 2)\r\n\t\t\t+ pow(abs(y - (int)SIZE_Y\/2), 2)\r\n\t\t);\r\n\r\n\t\t\/\/Return true if the distance is less\r\n\t\t\/\/than the outer radius of the annulus,\r\n\t\t\/\/but larger than the inner radius.\r\n\t\tif(r &lt; OUTER_RADIUS &amp;&amp; r &gt; INNER_RADIUS)\r\n\t\t\treturn true;\r\n\t\telse\r\n\t\t\treturn false;\r\n\t}\r\n};\r\n<\/pre>\n<p>For all basic use cases clone() can be implemented as above and we will therefore leave this function without further comments.<\/p>\n<p>The first thing to note about isIncluded() is that it needs to be ready to accept any Index that is passed to the Model and return true or false depending on whether the Index is included or not. This means that the filter writer needs to be aware what type of indices that can be expected to be added to the model. In our case this is simple, our indices will all be of the form {x, y}. We can therefore immediately read of the x and y value from the first and second subindex. The distance <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-df163da6c15d481bf43b92e0e9ab6c1c_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#114;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"8\" style=\"vertical-align: 0px;\"\/> from the center of the grid is then calculated and true is returned if <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-6e8b5ec663319e926cbb8df896e8aaa5_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#82;&#95;&#105;&#32;&#60;&#32;&#114;&#32;&#60;&#32;&#82;&#95;&#111;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"95\" style=\"vertical-align: -3px;\"\/>.<\/p>\n<h3>Create the Model<\/h3>\n<p>Having created the IndexFilter we are now ready to set up the actual model.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n\t\/\/Create filter.\r\n\tMyIndexFilter filter;\r\n\r\n\t\/\/Create the Model.\r\n\tModel model;\r\n\tmodel.setFilter(filter);\r\n\tfor(unsigned int x = 0; x &lt; SIZE_X; x++){\r\n\t\tfor(unsigned int y = 0; y &lt; SIZE_Y; y++){\r\n\t\t\tmodel &lt;&lt; HoppingAmplitude(\r\n\t\t\t\t-t,\r\n\t\t\t\t{x + 1,\ty},\r\n\t\t\t\t{x,     y}\r\n\t\t\t) + HC;\r\n\t\t\tmodel &lt;&lt; HoppingAmplitude(\r\n\t\t\t\t-t,\r\n\t\t\t\t{x, y + 1},\r\n\t\t\t\t{x, y}\r\n\t\t\t) + HC;\r\n\t\t}\r\n\t}\r\n\tmodel.construct();\r\n<\/pre>\n<p>Compare this to the model creation in <a href=\"http:\/\/second-tech.com\/wordpress\/index.php\/2018\/10\/27\/direct-access-to-wave-function-amplitudes-and-eigenvalues-in-tbtk\/\">Direct access to wave function amplitudes and eigenvalues in TBTK<\/a>. The first difference is the creation of the filter in the second line and the addition of this filter to the Model in the sixth line. Other than this the only difference is the absence of if-statements inside the loop. By using an IndexFilter we have made the annulus even simpler to setup than the square grid!<\/p>\n<h2>Solver<\/h2>\n<p>We are now ready to set up and run the solver.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n\/\/Setup and run the Solver.\r\nSolver::Diagonalizer solver;\r\nsolver.setModel(model);\r\nsolver.run();\r\n<\/pre>\n<h2>Extract the eigenvalue probability density<\/h2>\n<p>The code for extracting the eigenvalue (energy) and probability density and writing this to file is almost identical to the code in <a href=\"http:\/\/second-tech.com\/wordpress\/index.php\/2018\/10\/27\/direct-access-to-wave-function-amplitudes-and-eigenvalues-in-tbtk\/\">Direct access to wave function amplitudes and eigenvalues in TBTK<\/a>.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\n\/\/Setup the PropertyExtractor.\r\nPropertyExtractor::Diagonalizer\r\n\tpropertyExtractor(solver);\r\n\r\n\/\/Print the eigenvalue for the given state.\r\nStreams::out &lt;&lt; &quot;The energy of state &quot;\r\n\t&lt;&lt; state &lt;&lt; &quot; is &quot;\r\n\t&lt;&lt; propertyExtractor.getEigenValue(state)\r\n\t&lt;&lt; &quot;\\n&quot;;\r\n\r\n\/\/Calculate the probability density for the\r\n\/\/given state.\r\nArray&lt;double&gt; probabilityDensity(\r\n\t{SIZE_X, SIZE_Y},\r\n\t0\r\n);\r\nfor(unsigned int x = 0; x &lt; SIZE_X; x++){\r\n\tfor(unsigned int y = 0; y &lt; SIZE_Y; y++){\r\n\t\tif(!filter.isIncluded({x, y}))\r\n\t\t\tcontinue;\r\n\t\t\/\/Get the probability amplitude at\r\n\t\t\/\/site (x, y) for the\r\n\t\t\/\/given state.\r\n\t\tcomplex&lt;double&gt; amplitude\r\n\t\t\t= propertyExtractor.getAmplitude(\r\n\t\t\t\tstate,\r\n\t\t\t\t{x, y}\r\n\t\t\t);\r\n\r\n\t\t\/\/Calculate the probability density.\r\n\t\tprobabilityDensity&#x5B;{x, y}] = pow(\r\n\t\t\tabs(amplitude),\r\n\t\t\t2\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\/\/Plot the probability density.\r\nPlotter plotter;\r\nplotter.plot(probabilityDensity);\r\nplotter.save(&quot;figures\/ProbabilityDensity.png&quot;);\r\n<\/pre>\n<p>There are only two minor difference, of which the first is the zero as second argument in the expression<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\nArray&lt;double&gt; probabilityDensity(\r\n\t{SIZE_X, SIZE_Y},\r\n\t0\r\n);\r\n<\/pre>\n<p>This is used to initialize every element to zero to make sure that elements outside of the annulus are not left uninitialized. The second difference is the appearance of the following two lines inside the loop.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">\r\nif(!filter.isIncluded({x, y}))\r\n\tcontinue;\r\n<\/pre>\n<p>Here the IndexFilter is used once more to check whether a given Index is included in the Model or not. If not, we skip the rest of the loop body for this particular Index to avoid requesting data that does not exist.<\/p>\n<h2>Results<\/h2>\n<p>Below we present the energies and probability densities for the eleven first states.<\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-3e05db2f46a0ff11287f039f94070ef8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#48;&#32;&#61;&#32;&#45;&#51;&#46;&#57;&#54;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"90\" style=\"vertical-align: -3px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1855 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity0.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity0.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity0-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity0-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-63c1d8bafb20a735fdc657a247e41224_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#49;&#44;&#50;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#57;&#53;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"100\" style=\"vertical-align: -6px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1856 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity1.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity1.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity1-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity1-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1857 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity2.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity2.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity2-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity2-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-b961cf4e0465d957ff11126e3bd86217_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#51;&#44;&#52;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#57;&#51;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"101\" style=\"vertical-align: -6px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1858 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity3.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity3.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity3-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity3-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1859 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity4.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity4.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity4-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity4-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-cf79f70f1659e7088ebf18668490ec54_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#53;&#44;&#54;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#57;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"101\" style=\"vertical-align: -6px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1860 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity5.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity5.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity5-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity5-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1861 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity6.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity6.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity6-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity6-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-da0a764924d3566a95ee29204577e1aa_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#55;&#44;&#56;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#56;&#54;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"101\" style=\"vertical-align: -6px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1862 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity7.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity7.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity7-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity7-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1863 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity8.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity8.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity8-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity8-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-5f1e998f8d7514138424b9510058518e_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#57;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#56;&#52;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"90\" style=\"vertical-align: -3px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1864 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity9.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity9.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity9-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity9-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-42665cffa47d9ff6c597b5d7828383e2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#69;&#95;&#123;&#49;&#48;&#44;&#49;&#49;&#125;&#32;&#61;&#32;&#45;&#51;&#46;&#56;&#51;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"115\" style=\"vertical-align: -6px;\"\/><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1865 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity10.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity10.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity10-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity10-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/p>\n<h3><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1866 size-full\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity11.png\" alt=\"\" width=\"800\" height=\"600\" srcset=\"http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity11.png 800w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity11-300x225.png 300w, http:\/\/second-tech.com\/wordpress\/wp-content\/uploads\/2018\/11\/ProbabilityDensity11-768x576.png 768w\" sizes=\"(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/h3>\n<p>To understand these results we note that through separation of variables, the polar form of <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-fd21ad1c7040a59a81ea704f6fe75da8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#72;&#95;&#115;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"21\" style=\"vertical-align: -3px;\"\/> can be seen to be solved by a function of the form<\/p>\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 22px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-57f089d025846d33510057ced248434a_l3.png\" height=\"22\" width=\"173\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#091; &#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#32;&#61;&#32;&#102;&#95;&#123;&#110;&#125;&#40;&#114;&#41;&#101;&#94;&#123;&#105;&#109;&#92;&#116;&#104;&#101;&#116;&#97;&#125;&#46; &#92;&#093;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n<p>Here the radial function needs to satisfy the boundary conditions <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-d09127f87805264a2786760f7ecf5722_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#95;&#123;&#110;&#125;&#40;&#82;&#95;&#123;&#105;&#125;&#41;&#32;&#61;&#32;&#102;&#95;&#123;&#110;&#125;&#40;&#82;&#95;&#111;&#41;&#32;&#61;&#32;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"18\" width=\"159\" style=\"vertical-align: -4px;\"\/>. Moreover, it can be verified by application of <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-afe597c574058407aca7a6c10897da6d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#72;&#95;&#123;&#115;&#125;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"21\" style=\"vertical-align: -3px;\"\/> to <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-c6289bc5d654efcab8a97e92ab41ae36_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#92;&#116;&#104;&#101;&#116;&#97;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"71\" style=\"vertical-align: -6px;\"\/> that <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-07192d7ea6a6aec8302277cb705b1599_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"71\" style=\"vertical-align: -6px;\"\/> and <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-2aa8d655dbea1cdcf260f9f235c3dcee_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#95;&#123;&#110;&#44;&#45;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"82\" style=\"vertical-align: -6px;\"\/> are solutions with the same energy. In the continuous case we therefore expect non-degenerate eigenvalues for <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-49584979c3106d37f96a7ec934fb515d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;&#32;&#61;&#32;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"48\" style=\"vertical-align: 0px;\"\/> and doubly degenerate eigenvalues for <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-b2e8c7e0ecf7a18e67e12eeaa0598700_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;&#32;&#92;&#110;&#101;&#113;&#32;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"17\" width=\"48\" style=\"vertical-align: -4px;\"\/>. For the radial solutions we can further expect a set of increasingly oscillating functions with increasing <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-a63eb5ff0272d3119fa684be6e7acce8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#110;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"11\" style=\"vertical-align: 0px;\"\/>.<\/p>\n<p>The numerical results are indeed in agreement with this observation. The 0th state displays a simple structure with a single radial oscillation and <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-49584979c3106d37f96a7ec934fb515d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;&#32;&#61;&#32;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"48\" style=\"vertical-align: 0px;\"\/>. State 1-8 appear in pairs with increasing wave number <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-c9892c160739d7b5be03e1d300d29a2b_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"15\" style=\"vertical-align: 0px;\"\/> along the <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-218cdf16b16c99af5ecb73d9adb061f4_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#116;&#104;&#101;&#116;&#97;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: 0px;\"\/> direction. After state 8 it is no longer energetically favorable to keep increasing the angular wave number, but instead the next energy state is found by once again returning to the non-degenerate case <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-07a7002959c873383773b990e3afa5fb_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;&#61;&#48;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"48\" style=\"vertical-align: 0px;\"\/>, but to increase the radial wave number by one. This is then followed by another set of degenerate states with two radial oscillations and <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-7f944a0e0df902e174864dd80176c9a8_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;&#32;&#61;&#32;&#92;&#112;&#109;&#32;&#49;\" title=\"Rendered by QuickLaTeX.com\" height=\"13\" width=\"61\" style=\"vertical-align: -1px;\"\/>.<\/p>\n<p>These observations are only approximate though, which we realize by noting that the probability density <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-b27760ab48ad1dac90fdd5659c7891e1_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#124;&#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#124;&#94;&#50;\" title=\"Rendered by QuickLaTeX.com\" height=\"21\" width=\"87\" style=\"vertical-align: -6px;\"\/> actually is a constant function of <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-218cdf16b16c99af5ecb73d9adb061f4_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#116;&#104;&#101;&#116;&#97;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: 0px;\"\/> for all <img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-c9892c160739d7b5be03e1d300d29a2b_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#109;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"15\" style=\"vertical-align: 0px;\"\/>. To understand why we see oscillations also in the probability density, we first note that<\/p>\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 40px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-1784965f8d2ceacd7e1c3e5026aa796a_l3.png\" height=\"40\" width=\"376\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#091; &#38;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#92;&#115;&#113;&#114;&#116;&#123;&#50;&#125;&#125;&#92;&#108;&#101;&#102;&#116;&#40;&#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#32;&#43;&#32;&#102;&#95;&#123;&#110;&#44;&#45;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#92;&#114;&#105;&#103;&#104;&#116;&#41;&#32;&#61;&#32;&#92;&#115;&#113;&#114;&#116;&#123;&#50;&#125;&#102;&#95;&#123;&#110;&#125;&#40;&#114;&#41;&#92;&#99;&#111;&#115;&#40;&#105;&#109;&#92;&#116;&#104;&#101;&#116;&#97;&#41; &#92;&#093;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n<p>and<\/p>\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 40px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/second-tech.com\/wordpress\/wp-content\/ql-cache\/quicklatex.com-8bda533be7e972840f96ec5a69e40f3c_l3.png\" height=\"40\" width=\"380\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\"&#92;&#091; &#38;&#92;&#102;&#114;&#97;&#99;&#123;&#49;&#125;&#123;&#92;&#115;&#113;&#114;&#116;&#123;&#50;&#125;&#125;&#92;&#108;&#101;&#102;&#116;&#40;&#102;&#95;&#123;&#110;&#44;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#32;&#43;&#32;&#102;&#95;&#123;&#110;&#44;&#45;&#109;&#125;&#40;&#114;&#44;&#32;&#92;&#116;&#104;&#101;&#116;&#97;&#41;&#92;&#114;&#105;&#103;&#104;&#116;&#41;&#32;&#61;&#32;&#92;&#115;&#113;&#114;&#116;&#123;&#50;&#125;&#105;&#102;&#95;&#123;&#110;&#125;&#40;&#114;&#41;&#92;&#115;&#105;&#110;&#40;&#105;&#109;&#92;&#116;&#104;&#101;&#116;&#97;&#41; &#92;&#093;\" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n<p>are equally valid eigenstates and display the spatial variation also for the probability density. Moreover, the degeneracy is only approximate in the discrete case, resulting in the true eigenstates resembling the later set more closely. Why the spatially modulated functions are preferred once the degeneracy is lifted can likely be understood by considering that spatial modulation allows the wave function of the lower energy state to avoid the areas that result in an increasing energy.<\/p>\n<p>We finally note how the geometry of the problem results in solutions that naturally separate into a radial wave function multiplied by an angular wave function. This is in analogy with the solutions to the Schr\u00f6dinger equation in a central potential, which gives rise to a separation between orbital and radial wave functions with independent wave numbers. However, in two dimensions the angular wave functions appear with a single non-degenerate solution followed by pairs of degenerate solutions (1, 2, 2, 2, &#8230;). In contrast, the spherical harmonics has two angular coordinates and the s, p, d, orbitals etc. instead has the degeneracies (1, 3, 5, &#8230;). First considering this simpler manifestation of this phenomenon can be useful to get a better understanding also of the solutions to the Schr\u00f6dinger equation for the Hydrogen atom.<\/p>\n<h2>Full code<\/h2>\n<p>Full code is available in <a href=\"https:\/\/github.com\/dafer45\/SecondTechCode\/blob\/master\/2018_11_01\/src\/main.cpp\">src\/main.cpp<\/a> in the project <a href=\"https:\/\/github.com\/dafer45\/SecondTechCode\/tree\/master\/2018_11_01\">2018_11_01<\/a> of the <a href=\"https:\/\/github.com\/dafer45\/SecondTechCode\">Second Tech code package<\/a>. See the README for instructions on how to build and run.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Most recent TBTK release at the time of writing: v1.0.3 Updated to work with: v2.0.0 One of the core strengths of TBTK is the generality of the quantum systems that can be modeled and the ease with which such models can be created. In this post we will take a look at how the use &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/second-tech.com\/wordpress\/index.php\/2018\/11\/01\/creating-models-with-complex-geometries-using-an-indexfilter-in-tbtk\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Creating Models with complex geometries using an IndexFilter in TBTK&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1027"}],"collection":[{"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=1027"}],"version-history":[{"count":104,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1027\/revisions"}],"predecessor-version":[{"id":1867,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/1027\/revisions\/1867"}],"wp:attachment":[{"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=1027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=1027"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/second-tech.com\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=1027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}