diff diffOp.jl @ 105:44cd6b4371de cell_based_test

Specify region types in Laplace 2d apply!
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Fri, 08 Feb 2019 10:55:22 +0100
parents a274d6384e91
children 8010aadc4ff1
line wrap: on
line diff
--- a/diffOp.jl	Thu Feb 07 17:17:31 2019 +0100
+++ b/diffOp.jl	Fri Feb 08 10:55:22 2019 +0100
@@ -77,10 +77,11 @@
     return nothing
 end
 
-function apply!(L::Laplace{2}, u::AbstractArray{T,2}, v::AbstractArray{T,2}, r1::R1, r2::R2) where {T, R1, R2}
-    N = L.grid.numberOfPointsPerDim;
-    closuresize = closureSize(L.op);
-    for I ∈ regionindices(N, closuresize, (r1,r2))
+function apply!(L::Laplace{2}, u::AbstractArray{T,2}, v::AbstractArray{T,2}, r1::Type{<:Region}, r2::Type{<:Region}) where T
+    N = L.grid.numberOfPointsPerDim
+    closuresize = closureSize(L.op)
+    regionTuple = (r1,r2)
+    for I ∈ regionindices(N, closuresize, regionTuple)
         @inbounds indextuple = (Index(I[1], r1), Index(I[2], r2))
         @inbounds u[I] = apply(L, v, indextuple)
     end