comparison src/SbpOperators/stencil.jl @ 1032:11767fbb29f4 feature/dissipation_operators

Add padding functions for stencils
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 22 Mar 2022 11:18:57 +0100
parents 4433be383840
children 14cb97284373
comparison
equal deleted inserted replaced
1031:0905cec43d2e 1032:11767fbb29f4
76 @simd for k ∈ N-1:-1:1 76 @simd for k ∈ N-1:-1:1
77 w += s.weights[k]*v[i - s.range[1] - k + 1] 77 w += s.weights[k]*v[i - s.range[1] - k + 1]
78 end 78 end
79 return w 79 return w
80 end 80 end
81
82
83 function left_pad(s::Stencil, N)
84 weights = LazyTensors.left_pad_tuple(s.weights, zero(eltype(s)), N)
85 range = (s.range[1] - (N - length(s.weights)) ,s.range[2])
86
87 return Stencil(range, weights)
88 end
89
90 function right_pad(s::Stencil, N)
91 weights = LazyTensors.right_pad_tuple(s.weights, zero(eltype(s)), N)
92 range = (s.range[1], s.range[2] + (N - length(s.weights)))
93
94 return Stencil(range, weights)
95 end