Merge remote-tracking branch 'origin/calculations'
This commit is contained in:
commit
850447a507
|
|
@ -1,3 +1,6 @@
|
||||||
|
# HPC scripts and logs
|
||||||
|
hpc/
|
||||||
|
|
||||||
# Calculation outputs
|
# Calculation outputs
|
||||||
*.dat
|
*.dat
|
||||||
*.csv
|
*.csv
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
include("../Hamiltonian.jl")
|
||||||
|
mode = cpu_tensor
|
||||||
|
T = Float32
|
||||||
|
|
||||||
|
V_gauss(r2) = -2 * exp(-r2 / 4)
|
||||||
|
|
||||||
|
d = 3
|
||||||
|
n = 3
|
||||||
|
N = 20
|
||||||
|
L = 15
|
||||||
|
n_imag = 1
|
||||||
|
ϕ = 0
|
||||||
|
|
||||||
|
s = system{T}(d, n, N, L)
|
||||||
|
H = Hamiltonian{T}(s, V_gauss, ϕ, n_imag, mode)
|
||||||
|
@time evals, _, info = eig(H, 5)
|
||||||
|
|
||||||
|
print(info.numops, " operations")
|
||||||
|
display(evals)
|
||||||
|
|
@ -0,0 +1,36 @@
|
||||||
|
# 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
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
include("../Hamiltonian.jl")
|
||||||
|
mode = cpu_tensor
|
||||||
|
T = Float32 # single-precision mode
|
||||||
|
|
||||||
|
V_gauss(r2) =
|
||||||
|
-10 * exp(-(sqrt(r2)) ^ 2)
|
||||||
|
|
||||||
|
d = 3
|
||||||
|
n = 2
|
||||||
|
N = 96
|
||||||
|
ϕ = pi/6
|
||||||
|
n_imag = 1
|
||||||
|
|
||||||
|
open("ComplexScaling-FV-P-res.dat", "w") do f
|
||||||
|
for L = range(20, 35, length=16)
|
||||||
|
println("Calculating L=", L)
|
||||||
|
s = system{T}(d, n, N, L)
|
||||||
|
H = Hamiltonian{T}(s, V_gauss, ϕ, n_imag, mode)
|
||||||
|
@time evals, _, info = eig(H, 40)
|
||||||
|
|
||||||
|
dataline = vcat([L], hcat(real.(evals), imag.(evals))'[:])
|
||||||
|
println(f, join(dataline, '\t'))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
include("../Hamiltonian.jl")
|
||||||
|
mode = cpu_tensor
|
||||||
|
T = Float32 # single-precision mode
|
||||||
|
|
||||||
|
V_gauss(r2) =
|
||||||
|
-10 * exp(-(sqrt(r2)) ^ 2)
|
||||||
|
|
||||||
|
d = 3
|
||||||
|
n = 2
|
||||||
|
N = 30
|
||||||
|
L = 6
|
||||||
|
n_imag = 1
|
||||||
|
|
||||||
|
open("ComplexScaling-FV-S-bound-phi.dat", "w") do f
|
||||||
|
for ϕ = range(0.0, 0.5, length=11)
|
||||||
|
println("Calculating ϕ=", ϕ)
|
||||||
|
s = system{T}(d, n, N, L)
|
||||||
|
H = Hamiltonian{T}(s, V_gauss, ϕ, n_imag, mode)
|
||||||
|
@time evals, _, info = eig(H, 10, resonances = false)
|
||||||
|
|
||||||
|
dataline = vcat([ϕ], hcat(real.(evals), imag.(evals))'[:])
|
||||||
|
println(f, join(dataline, '\t'))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
include("../Hamiltonian.jl")
|
||||||
|
mode = cpu_tensor
|
||||||
|
T = Float32 # single-precision mode
|
||||||
|
|
||||||
|
V_gauss(r2) =
|
||||||
|
2 * exp(- ((sqrt(r2)-3)/1.5) ^ 2)
|
||||||
|
|
||||||
|
d = 3
|
||||||
|
n = 2
|
||||||
|
N = 96
|
||||||
|
L = 30
|
||||||
|
n_imag = 1
|
||||||
|
|
||||||
|
open("ComplexScaling-FV-S-res-phi.dat", "w") do f
|
||||||
|
for ϕ = range(0.1, 0.6, length=26)
|
||||||
|
println("Calculating ϕ=", ϕ)
|
||||||
|
s = system{T}(d, n, N, L)
|
||||||
|
H = Hamiltonian{T}(s, V_gauss, ϕ, n_imag, mode)
|
||||||
|
@time evals, _, info = eig(H, 40, resonances = true)
|
||||||
|
|
||||||
|
dataline = vcat([ϕ], hcat(real.(evals), imag.(evals))'[:])
|
||||||
|
println(f, join(dataline, '\t'))
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
Reference in New Issue