Mercurial > repos > public > sbplib_julia
changeset 1822:189e69d44056 feature/grids/tensor_grid/spacing
Merge default
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Sun, 20 Oct 2024 20:38:39 +0200 |
parents | 7eb20abc4b70 (diff) 9b47cdbbba75 (current diff) |
children | 054447ac4b0e |
files | src/Grids/tensor_grid.jl test/Grids/tensor_grid_test.jl |
diffstat | 2 files changed, 11 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/Grids/tensor_grid.jl Fri Oct 18 21:18:58 2024 +0200 +++ b/src/Grids/tensor_grid.jl Sun Oct 20 20:38:39 2024 +0200 @@ -47,6 +47,10 @@ Base.size(g::TensorGrid) = LazyTensors.concatenate_tuples(size.(g.grids)...) Base.size(g::TensorGrid, d) = size(g)[d] +# Review: Handle boundary grids as well? +# spacing(boundary_grid(g,id)) fails right now with +# MethodError: no method matching spacing(::ZeroDimGrid{Float64}) +spacing(g::TensorGrid) = spacing.(g.grids) function min_spacing(g::TensorGrid) relevant_grids = filter(g->!isa(g,ZeroDimGrid),g.grids)
--- a/test/Grids/tensor_grid_test.jl Fri Oct 18 21:18:58 2024 +0200 +++ b/test/Grids/tensor_grid_test.jl Sun Oct 20 20:38:39 2024 +0200 @@ -137,6 +137,13 @@ @test axes(g) == (1:11,1:6) end + @testset "spacing" begin + g₁ = EquidistantGrid(range(0,1,length=11)) + g₂ = EquidistantGrid(range(2,3,length=6)) + + @test spacing(TensorGrid(g₁, g₂)) == (1/10, 1/5) + end + @testset "min_spacing" begin g₁ = EquidistantGrid(range(0,1,length=11)) g₂ = EquidistantGrid(range(2,3,length=6))