comparison src/SbpOperators/stencil.jl @ 1458:b411493597f3 bugfix/sbp_operators/stencil_return_type

Update op for backwards apply too
author Jonatan Werpers <jonatan@werpers.com>
date Sun, 26 Nov 2023 23:07:21 +0100
parents 6e9ac7925f20
children
comparison
equal deleted inserted replaced
1455:6e9ac7925f20 1458:b411493597f3
77 77
78 return w 78 return w
79 end 79 end
80 80
81 Base.@propagate_inbounds @inline function apply_stencil_backwards(s::Stencil, v::AbstractVector, i::Int) 81 Base.@propagate_inbounds @inline function apply_stencil_backwards(s::Stencil, v::AbstractVector, i::Int)
82 T = Base.promote_op(*, eltype(s), eltype(v)) 82 T = Base.promote_op((a₁,v₁,a₂,v₂)->a₁*v₁ + a₂*v₂, eltype(s), eltype(v), eltype(s), eltype(v))
83 w = zero(T) 83 w = zero(T)
84 @simd for k ∈ length(s):-1:1 84 @simd for k ∈ length(s):-1:1
85 w += s.weights[k]*v[i - s.range[k]] 85 w += s.weights[k]*v[i - s.range[k]]
86 end 86 end
87 return w 87 return w