Merge remote-tracking branch 'origin/calculations'
This commit is contained in:
commit
850447a507
|
|
@ -1,3 +1,6 @@
|
|||
# HPC scripts and logs
|
||||
hpc/
|
||||
|
||||
# Calculation outputs
|
||||
*.dat
|
||||
*.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