diff --git a/src/YM/YMhmc.jl b/src/YM/YMhmc.jl index a7ed54b..30657f9 100644 --- a/src/YM/YMhmc.jl +++ b/src/YM/YMhmc.jl @@ -86,7 +86,7 @@ function HMC!(U, int::IntrScheme, lp::SpaceParm, gp::GaugeParm, ymws::YMworkspac end return dh, acc end -HMC!(U, eps, ns, lp::SpaceParm, gp::GaugeParm, ymws::YMworkspace{T}; noacc=false) where T = HMC!(U, omf4(T, int.eps, int.ns), lp, gp, ymws; noacc=noacc) +HMC!(U, eps, ns, lp::SpaceParm, gp::GaugeParm, ymws::YMworkspace{T}; noacc=false) where T = HMC!(U, omf4(T, eps, ns), lp, gp, ymws; noacc=noacc) function MD!(mom, U, int::IntrScheme{NI, T}, lp::SpaceParm, gp::GaugeParm{T}, ymws::YMworkspace{T}) where {NI, T <: AbstractFloat} diff --git a/src/YM/YMsf.jl b/src/YM/YMsf.jl index 3da101a..faa6f68 100644 --- a/src/YM/YMsf.jl +++ b/src/YM/YMsf.jl @@ -25,7 +25,9 @@ function sfcoupling(U, lp::SpaceParm{N,M,B,D}, gp::GaugeParm, ymws::YMworkspace) end @timeit "SF coupling measurement" begin - tmp = zeros(eltype(ymws.rm),lp.iL[end]) + T = eltype(ymws.rm) + tmp = zeros(T,lp.iL[end]) + fill!(ymws.rm, zero(T)) CUDA.@sync begin CUDA.@cuda threads=lp.bsz blocks=lp.rsz krnl_sfcoupling!(ymws.rm, U, gp.Ubnd, lp) end @@ -47,10 +49,9 @@ function krnl_sfcoupling!(rm, U::AbstractArray{T}, Ubnd::T, lp::SpaceParm{N,M,B, I = point_coord((b,r), lp) it = I[N] - SR3::eltype(rm) = 1.73205080756887729352744634151 - SR3x2::type(rm) = 3.46410161513775458705489268302 + SR3::eltype(rm) = 1.73205080756887729352744634151 + SR3x2::eltype(rm) = 3.46410161513775458705489268302 - rm[I] = zero(eltype(rm)) if (it == 1) but, rut = up((b,r), N, lp) IU = point_coord((but,rut), lp)