Mercurial > repos > public > sbplib_julia
diff src/SbpOperators/SbpOperators.jl @ 348:7fe43d902a27 refactor/remove_dynamic_size_tensormapping
Start trying to change LazyTensors
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Sat, 26 Sep 2020 15:20:18 +0200 |
parents | f781d6da7d3d |
children | 0844069ab5ff |
line wrap: on
line diff
--- a/src/SbpOperators/SbpOperators.jl Fri Sep 25 14:19:15 2020 +0200 +++ b/src/SbpOperators/SbpOperators.jl Sat Sep 26 15:20:18 2020 +0200 @@ -13,4 +13,21 @@ include("quadrature/quadrature.jl") include("quadrature/inverse_diagonal_inner_product.jl") include("quadrature/inverse_quadrature.jl") + +abstract type SbpOperator{T,R,D} <: TensorMapping{T,R,D} end + +""" + grid(::ColocationOperator) + +Return the the grid which the sbp-operator lives on +""" +function grid end + +abstract type ColocationOperator{T,R,D} <: SbpOperator{T,R,D} end + +LazyTensors.range_size(co::ColocationOperator) = size(grid(co)) +LazyTensors.domain_size(co::ColocationOperator) = size(grid(co)) + +# Allt ovan kanske är overkill.. Eventuellt bara lättare och tydligare att alla typer definerar sina range och domain size hur dom vill. (I praktiken typ alltid genom att ha gridden som ett fält i structen.) + end # module