Commit 3c8b39c2 authored by Alberto Ramos's avatar Alberto Ramos

Updated JuliaGPU. Added support for boundary fields

parent 1749010e
......@@ -175,7 +175,7 @@ version = "0.0.11+0"
[[LatticeGPU]]
deps = ["CUDA", "Random", "TimerOutputs"]
git-tree-sha1 = "62d7728203bfe2cf4934648f9cc356cf16f69cf3"
git-tree-sha1 = "d8e0de54b67807478ead3f1fde4de0a0d94f7277"
repo-rev = "master"
repo-url = "https://igit.ific.uv.es/alramos/latticegpu.jl"
uuid = "958c3683-801a-4582-9cfa-2d6e2ae1763b"
......
......@@ -22,7 +22,13 @@ bcs = "PERIODIC" # Choose PERIODIC, SF
ntwist = [0,0,0,0,0,0]
beta = 5.96
c0 = 1.0 # 1.0 is Wilson action, 1.66... is LW, 3.648 is Iwasaki
cG = 0.0 # Only used with SF bcs
# Parameters for SF boundary conditions.
# These lines are only needed in case of SF boundary
# conditions
cG = 0.0
phi0 = [-1.047197551196598, 0.0] # Boundary fields for
phiT = [-3.141592653589793, 1.047197551196598] # SF boundary conditions
[HMC]
integrator = "OMF4" # "LEAPFROPG", "OMF2", "OMF4"
......
......@@ -50,11 +50,20 @@ function read_options(fname)
GRP = SU3
end
T = Float64
gp = GaugeParm{T}(GRP{T},
s["Simulation"]["beta"],
s["Simulation"]["c0"],
(s["Simulation"]["cG"],s["Simulation"]["cG"]))
if (BCS == BC_SF_AFWB)
gp = GaugeParm{T}(GRP{T},
s["Simulation"]["beta"],
s["Simulation"]["c0"],
(s["Simulation"]["cG"],s["Simulation"]["cG"]),
s["Simulation"]["phiT"], lp.iL[1:end-1])
phi0 = s["Simulation"]["phi0"]
else
gp = GaugeParm{T}(GRP{T},
s["Simulation"]["beta"],
s["Simulation"]["c0"])
phi0 = nothing
end
# HMC parameters
if s["HMC"]["integrator"] == "OMF4"
int = omf4(T, s["HMC"]["eps"], s["HMC"]["ns"])
......@@ -115,16 +124,19 @@ function read_options(fname)
nthm = s["HMC"]["nthm"]
nt = s["HMC"]["ntraj"]
return gp, lp, int, flwint, nthm, nt, flw_ns, flw_dtr, fb, flog, GRP, T, BCS
return gp, phi0, lp, int, flwint, nthm, nt, flw_ns, flw_dtr, fb, flog, GRP, T, BCS
end
parsed_args = parse_commandline()
infile = parsed_args["i"]
gp, lp, int, flwint, nthm, nt, flw_ns, flw_dtr, fb, flog, GRP, T, BCS = read_options(infile)
gp, phi0, lp, int, flwint, nthm, nt, flw_ns, flw_dtr, fb, flog, GRP, T, BCS = read_options(infile)
U = vector_field(GRP{T}, lp)
fill!(U, one(GRP{T}))
if phi0 != nothing
setbndfield(U, phi0, lp)
end
ymws = YMworkspace(GRP, T, lp)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment