First try to properly add improvement

parent 2eb07322
This diff is collapsed.
...@@ -18,6 +18,7 @@ using ..Space ...@@ -18,6 +18,7 @@ using ..Space
vector_field(::Type{T}, lp::SpaceParm) where {T} = CuArray{T, 3}(undef, lp.bsz, lp.ndim, lp.rsz) vector_field(::Type{T}, lp::SpaceParm) where {T} = CuArray{T, 3}(undef, lp.bsz, lp.ndim, lp.rsz)
scalar_field(::Type{T}, lp::SpaceParm) where {T} = CuArray{T, 2}(undef, lp.bsz, lp.rsz) scalar_field(::Type{T}, lp::SpaceParm) where {T} = CuArray{T, 2}(undef, lp.bsz, lp.rsz)
nscalar_field(::Type{T}, n, lp::SpaceParm) where {T} = CuArray{T, 3}(undef, lp.bsz, n, lp.rsz) nscalar_field(::Type{T}, n, lp::SpaceParm) where {T} = CuArray{T, 3}(undef, lp.bsz, n, lp.rsz)
tensor_field(::Type{T}, lp::SpaceParm) where {T} = CuArray{T, 3}(undef, lp.bsz, lp.npls, lp.rsz)
scalar_field_point(::Type{T}, lp::SpaceParm{N,M,D}) where {T,N,M,D} = CuArray{T, N}(undef, lp.iL...) scalar_field_point(::Type{T}, lp::SpaceParm{N,M,D}) where {T,N,M,D} = CuArray{T, N}(undef, lp.iL...)
......
...@@ -34,7 +34,7 @@ return sum(sumf) ...@@ -34,7 +34,7 @@ return sum(sumf)
end end
function CG!(si, U, A, dpar::DiracParam, lp::SpaceParm, dws::DiracWorkspace{T}, ymws = "ymws", gp = "gp", maxiter::Int64 = 10, tol=1.0) where {T} function CG!(si, U, A, dpar::DiracParam, lp::SpaceParm, dws::DiracWorkspace{T}, ymws::YMWorkspace, maxiter::Int64 = 10, tol=1.0) where {T}
dws.sr .= si dws.sr .= si
dws.sp .= si dws.sp .= si
......
...@@ -83,6 +83,7 @@ struct YMworkspace{T} ...@@ -83,6 +83,7 @@ struct YMworkspace{T}
f2 = vector_field(SU2alg{T}, lp) f2 = vector_field(SU2alg{T}, lp)
mm = vector_field(SU2alg{T}, lp) mm = vector_field(SU2alg{T}, lp)
u1 = vector_field(SU2{T}, lp) u1 = vector_field(SU2{T}, lp)
csw = tensor_field(SU2alg{T},lp)
end end
if (G == SU3) if (G == SU3)
...@@ -92,6 +93,7 @@ struct YMworkspace{T} ...@@ -92,6 +93,7 @@ struct YMworkspace{T}
f2 = vector_field(SU3alg{T}, lp) f2 = vector_field(SU3alg{T}, lp)
mm = vector_field(SU3alg{T}, lp) mm = vector_field(SU3alg{T}, lp)
u1 = vector_field(SU3{T}, lp) u1 = vector_field(SU3{T}, lp)
csw = tensor_field(SU3alg{T},lp)
end end
cs = scalar_field_point(Complex{T}, lp) cs = scalar_field_point(Complex{T}, lp)
rs = scalar_field_point(T, lp) rs = scalar_field_point(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