comparison src/Grids/tensor_grid.jl @ 1804:7eb20abc4b70 feature/grids/tensor_grid/spacing

Review: Handle spacing for boundary grids as well?
author Vidar Stiernström <vidar.stiernstrom@gmail.com>
date Wed, 02 Oct 2024 11:11:33 -0700
parents 87ebdd6eed95
children 189e69d44056
comparison
equal deleted inserted replaced
1800:87ebdd6eed95 1804:7eb20abc4b70
45 Base.IteratorSize(::Type{<:TensorGrid{<:Any, D}}) where D = Base.HasShape{D}() 45 Base.IteratorSize(::Type{<:TensorGrid{<:Any, D}}) where D = Base.HasShape{D}()
46 Base.length(g::TensorGrid) = prod(length, g.grids) 46 Base.length(g::TensorGrid) = prod(length, g.grids)
47 Base.size(g::TensorGrid) = LazyTensors.concatenate_tuples(size.(g.grids)...) 47 Base.size(g::TensorGrid) = LazyTensors.concatenate_tuples(size.(g.grids)...)
48 Base.size(g::TensorGrid, d) = size(g)[d] 48 Base.size(g::TensorGrid, d) = size(g)[d]
49 49
50 # Review: Handle boundary grids as well?
51 # spacing(boundary_grid(g,id)) fails right now with
52 # MethodError: no method matching spacing(::ZeroDimGrid{Float64})
50 spacing(g::TensorGrid) = spacing.(g.grids) 53 spacing(g::TensorGrid) = spacing.(g.grids)
51 54
52 function min_spacing(g::TensorGrid) 55 function min_spacing(g::TensorGrid)
53 relevant_grids = filter(g->!isa(g,ZeroDimGrid),g.grids) 56 relevant_grids = filter(g->!isa(g,ZeroDimGrid),g.grids)
54 d = min_spacing.(relevant_grids) 57 d = min_spacing.(relevant_grids)