Mercurial > repos > public > sbplib_julia
diff src/SbpOperators/volumeops/volume_operator.jl @ 1355:102ebdaf7c11 feature/variable_derivatives
Merge default
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 08 Feb 2023 21:21:28 +0100 |
parents | 5a3281429a48 716e721ce3eb |
children | 49d03d1169ef |
line wrap: on
line diff
--- a/src/SbpOperators/volumeops/volume_operator.jl Fri Feb 03 22:50:42 2023 +0100 +++ b/src/SbpOperators/volumeops/volume_operator.jl Wed Feb 08 21:21:28 2023 +0100 @@ -1,24 +1,6 @@ -""" - volume_operator(grid, inner_stencil, closure_stencils, parity, direction) - -Creates a volume operator on a `Dim`-dimensional grid acting along the -specified coordinate `direction`. The action of the operator is determined by -the stencils `inner_stencil` and `closure_stencils`. When `Dim=1`, the -corresponding `VolumeOperator` tensor mapping is returned. When `Dim>1`, the -returned operator is the appropriate outer product of a one-dimensional -operators and `IdentityTensor`s, e.g for `Dim=3` the volume operator in the -y-direction is `I⊗op⊗I`. -""" -function volume_operator(grid::EquidistantGrid, inner_stencil, closure_stencils, parity, direction) - #TODO: Check that direction <= Dim? - - op = VolumeOperator(restrict(grid, direction), inner_stencil, closure_stencils, parity) - return LazyTensors.inflate(op, size(grid), direction) -end -# TBD: Should the inflation happen here or should we remove this method and do it at the caller instead? - """ VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1} + Implements a one-dimensional constant coefficients volume operator """ struct VolumeOperator{T,N,M,K} <: LazyTensor{T,1,1}