{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# 10.1007/s00601-020-01550-8\n", "# Fig. 7\n", "# E_R = 4.18(8)\n", "\n", "#./En.run -d 3 -n 3 -N 16 -c pot=v_shifted_gauss,v0=2.0,r=1.5,a=3.0 -c n_eig=20 -c which=li -c tol=1e-6 -L 16 -c phi=0.3 -v\n", "\n", "include(\"Hamiltonian.jl\")\n", "mode = gpu_cutensor\n", "T = Float32 # single-precision mode\n", "\n", "using Plots\n", "\n", "V_gauss(r2) =\n", " 2 * exp(-((sqrt(r2) - 3) / 1.5) ^ 2)\n", "\n", "d = 3\n", "n = 3\n", "N = 14\n", "L::T = 16\n", "μ::T = 0.5\n", "n_imag = 0\n", "\n", "for ϕ::T in 0.2:0.05:0.4\n", " H = Hamiltonian{T}(V_gauss, d, n, N, L, ϕ, μ, n_imag, mode)\n", " @time evals, _, info = eig(H, 20)\n", " \n", " print(info.numops, \" operations\")\n", " display(evals)\n", "\n", " scatter(real.(evals), imag.(evals); legend=false)\n", " xlabel!(\"Re E\")\n", " ylabel!(\"Im E\")\n", " xlims!(0, 6)\n", " ylims!(-0.6, 0)\n", " savefig(\"temp/phi$(Int(round(ϕ * 100))).png\")\n", "end" ] } ], "metadata": { "kernelspec": { "display_name": "Julia 1.8.5", "language": "julia", "name": "julia-1.8" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.8.5" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }