36 lines
763 B
Julia
36 lines
763 B
Julia
# 10.1007/s00601-020-01550-8
|
|
# Fig. 7
|
|
# E_R = 4.18(8)
|
|
|
|
#./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
|
|
|
|
include("Hamiltonian.jl")
|
|
mode = cpu_tensor
|
|
T = Float32 # single-precision mode
|
|
|
|
using Plots
|
|
|
|
V_gauss(r2) =
|
|
2 * exp(-((sqrt(r2) - 3) / 1.5) ^ 2)
|
|
|
|
d = 3
|
|
n = 3
|
|
N = 16
|
|
L = 16
|
|
n_imag = 0
|
|
|
|
for ϕ::T in 0.2:0.05:0.4
|
|
s = system{T}(d, n, N, L)
|
|
H = Hamiltonian{T}(s, V_gauss, ϕ, n_imag, mode)
|
|
@time evals, _, info = eig(H, 20)
|
|
|
|
print(info.numops, " operations")
|
|
display(evals)
|
|
|
|
scatter(real.(evals), imag.(evals); legend=false)
|
|
xlabel!("Re E")
|
|
ylabel!("Im E")
|
|
xlims!(0, 6)
|
|
ylims!(-0.6, 0)
|
|
savefig("temp/phi$(Int(round(ϕ * 100))).png")
|
|
end |