annotate src/SbpOperators/SbpOperators.jl @ 356:0844069ab5ff refactor/remove_dynamic_size_tensormapping

Reinclude SbpOperators and fix most of the code and tests there.
author Jonatan Werpers <jonatan@werpers.com>
date Sun, 27 Sep 2020 22:51:31 +0200
parents 7fe43d902a27
children f36866ba97e6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
219
69a6049e14d9 Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents: 170
diff changeset
1 module SbpOperators
69a6049e14d9 Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents: 170
diff changeset
2
335
f4e3e71a4ff4 Fix `using` commands to refer to local modules within the Sbplib package/module
Jonatan Werpers <jonatan@werpers.com>
parents: 333
diff changeset
3 using Sbplib.RegionIndices
f4e3e71a4ff4 Fix `using` commands to refer to local modules within the Sbplib package/module
Jonatan Werpers <jonatan@werpers.com>
parents: 333
diff changeset
4 using Sbplib.LazyTensors
356
0844069ab5ff Reinclude SbpOperators and fix most of the code and tests there.
Jonatan Werpers <jonatan@werpers.com>
parents: 348
diff changeset
5 using Sbplib.Grids
219
69a6049e14d9 Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents: 170
diff changeset
6
69a6049e14d9 Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents: 170
diff changeset
7 include("stencil.jl")
249
7cb4492ccd60 Refactor package SbpOperators
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 245
diff changeset
8 include("constantstenciloperator.jl")
7cb4492ccd60 Refactor package SbpOperators
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 245
diff changeset
9 include("d2.jl")
7cb4492ccd60 Refactor package SbpOperators
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 245
diff changeset
10 include("readoperator.jl")
313
d1004b881da1 Update modules and project/manifest
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 249
diff changeset
11 include("laplace/secondderivative.jl")
d1004b881da1 Update modules and project/manifest
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 249
diff changeset
12 include("laplace/laplace.jl")
328
9cc5d1498b2d Refactor 1D diagonal inner product in quadrature.jl to separate file. Write tests for quadratures. Clean up laplace and secondderivative
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 313
diff changeset
13 include("quadrature/diagonal_inner_product.jl")
9cc5d1498b2d Refactor 1D diagonal inner product in quadrature.jl to separate file. Write tests for quadratures. Clean up laplace and secondderivative
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 313
diff changeset
14 include("quadrature/quadrature.jl")
344
f781d6da7d3d Merge and reactivate includes in SbpOperators.jl
Jonatan Werpers <jonatan@werpers.com>
parents: 336
diff changeset
15 include("quadrature/inverse_diagonal_inner_product.jl")
f781d6da7d3d Merge and reactivate includes in SbpOperators.jl
Jonatan Werpers <jonatan@werpers.com>
parents: 336
diff changeset
16 include("quadrature/inverse_quadrature.jl")
348
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
17
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
18 abstract type SbpOperator{T,R,D} <: TensorMapping{T,R,D} end
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
19
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
20 """
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
21 grid(::ColocationOperator)
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
22
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
23 Return the the grid which the sbp-operator lives on
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
24 """
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
25 function grid end
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
26
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
27 abstract type ColocationOperator{T,R,D} <: SbpOperator{T,R,D} end
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
28
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
29 LazyTensors.range_size(co::ColocationOperator) = size(grid(co))
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
30 LazyTensors.domain_size(co::ColocationOperator) = size(grid(co))
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
31
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
32 # 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.)
7fe43d902a27 Start trying to change LazyTensors
Jonatan Werpers <jonatan@werpers.com>
parents: 344
diff changeset
33
219
69a6049e14d9 Create package SbpOperators
Jonatan Werpers <jonatan@werpers.com>
parents: 170
diff changeset
34 end # module