comparison src/SbpOperators/volumeops/volume_operator.jl @ 919:b41180efb6c2 performance/get_region_type_inference

Start refactor to improve type stability for apply(op,::TensorApplication,...)
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 21 Feb 2022 10:33:58 +0100
parents ae28f1d7ef5e
children e79debd10f7d f1c2a4fa0ee1
comparison
equal deleted inserted replaced
911:a378ab959b6f 919:b41180efb6c2
54 function LazyTensors.apply(op::VolumeOperator{T}, v::AbstractVector{T}, i::Index{Upper}) where T 54 function LazyTensors.apply(op::VolumeOperator{T}, v::AbstractVector{T}, i::Index{Upper}) where T
55 return @inbounds Int(op.parity)*apply_stencil_backwards(op.closure_stencils[op.size[1]-Int(i)+1], v, Int(i)) 55 return @inbounds Int(op.parity)*apply_stencil_backwards(op.closure_stencils[op.size[1]-Int(i)+1], v, Int(i))
56 end 56 end
57 57
58 function LazyTensors.apply(op::VolumeOperator{T}, v::AbstractVector{T}, i) where T 58 function LazyTensors.apply(op::VolumeOperator{T}, v::AbstractVector{T}, i) where T
59 r = getregion(i, closure_size(op), op.size[1]) 59 return LazyTensors.apply_with_region(op, v, closure_size(op), op.size[1], i)
60 return LazyTensors.apply(op, v, Index(i, r))
61 end 60 end