comparison src/SbpOperators/volumeops/volume_operator.jl @ 1360:f59228534d3a tooling/benchmarks

Merge default
author Jonatan Werpers <jonatan@werpers.com>
date Sat, 20 May 2023 15:15:22 +0200
parents e94ddef5e72f
children 4684c7f1c4cb
comparison
equal deleted inserted replaced
1321:42738616422e 1360:f59228534d3a
1 """ 1 """
2 VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1} 2 VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1}
3 3
4 Implements a one-dimensional constant coefficients volume operator 4 A one-dimensional constant coefficients stencil operator.
5 """ 5 """
6 struct VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1} 6 struct VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1}
7 inner_stencil::Stencil{T,N} 7 inner_stencil::Stencil{T,N}
8 closure_stencils::NTuple{M,Stencil{T,K}} 8 closure_stencils::NTuple{M,Stencil{T,K}}
9 size::NTuple{1,Int} 9 size::NTuple{1,Int}
10 parity::Parity 10 parity::Parity
11 end 11 end
12 12
13 function VolumeOperator(grid::EquidistantGrid{1}, inner_stencil, closure_stencils, parity) 13 function VolumeOperator(grid::EquidistantGrid, inner_stencil, closure_stencils, parity)
14 return VolumeOperator(inner_stencil, Tuple(closure_stencils), size(grid), parity) 14 return VolumeOperator(inner_stencil, Tuple(closure_stencils), size(grid), parity)
15 end 15 end
16 16
17 closure_size(::VolumeOperator{T,N,M}) where {T,N,M} = M 17 closure_size(::VolumeOperator{T,N,M}) where {T,N,M} = M
18 18