DVR-jl/tester.jl

43 lines
807 B
Julia

# ./En.run -d 3 -n 3 -e 5 -c eps=0 -c pot=v_gauss,v0=-4,r=2 -N 6 -L 5:14 -c n_imag=1
using CUDA
GPU_mode = !("CPU" in ARGS) && CUDA.functional() && CUDA.has_cuda() && CUDA.has_cuda_gpu()
println("Running with ",Threads.nthreads()," thread(s)")
if GPU_mode
include("GPU.jl")
println("Available GPUs:")
print(" ")
println.(name.(devices()))
else
include("CPU.jl")
end
T=Float32
function V_zero(r2::T)::T
return 0.0
end
function V_test(r2::T)::T
return -4*exp(-r2/4)
end
N=6
n_image=1
μ=0.5
levels=5
for L::T in 5.0:14.0
H=HOperator{T}(V_test,3,3,N,L,convert(T,μ),n_image)
if GPU_mode
CUDA.@time evals,evecs,info=eig(H,levels)
else
@time evals,evecs,info=eig(H,levels)
end
print(info.numops," operations : ")
println(evals)
end