Mercurial > repos > public > sbplib_julia
diff diffOp.jl @ 9:aafc4bdbe675
Add h in stencil application
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Mon, 17 Dec 2018 14:44:17 +0100 |
parents | 433008d3b7d3 |
children | 10a5e7c77fb8 |
line wrap: on
line diff
--- a/diffOp.jl Mon Dec 17 14:30:59 2018 +0100 +++ b/diffOp.jl Mon Dec 17 14:44:17 2018 +0100 @@ -29,19 +29,23 @@ end # u = L*v -function apply(L::Laplace1D, u::AbstractVector, v::AbstractVector)::AbstractVector +function apply(L::Laplace1D, u::AbstractVector, v::AbstractVector) N = closureSize(L.op) M = length(v) + h = scaling(L.grid) + for i ∈ 1:N - u[i] = apply(L.op.closureStencils[i], v, i) + u[i] = apply(L.op.closureStencils[i], v, i)/h^2 end for i ∈ N+1:M-N - u[i] = apply(L.op.innerStencil, i); + u[i] = apply(L.op.innerStencil, i)/h^2 end for i ∈ M:-1:M-N+1 - u[i] = apply(flip(L.op.closureStencils[M-i+1]), v, i) + u[i] = apply(flip(L.op.closureStencils[M-i+1]), v, i)/h^2 end + + return nothing end