Mercurial > repos > public > sbplib_julia
comparison src/Grids/tensor_grid.jl @ 1678:13a7a4ff49e3 feature/grids/manifolds
Merge feature/grids/curvilinear
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Sun, 30 Jun 2024 10:50:44 +0200 |
parents | 51f0c5f895fb |
children | ff7aeda1b292 |
comparison
equal
deleted
inserted
replaced
1650:8250cf5a3ce9 | 1678:13a7a4ff49e3 |
---|---|
47 Base.IteratorSize(::Type{<:TensorGrid{<:Any, D}}) where D = Base.HasShape{D}() | 47 Base.IteratorSize(::Type{<:TensorGrid{<:Any, D}}) where D = Base.HasShape{D}() |
48 Base.length(g::TensorGrid) = prod(length, g.grids) | 48 Base.length(g::TensorGrid) = prod(length, g.grids) |
49 Base.size(g::TensorGrid) = LazyTensors.concatenate_tuples(size.(g.grids)...) | 49 Base.size(g::TensorGrid) = LazyTensors.concatenate_tuples(size.(g.grids)...) |
50 Base.size(g::TensorGrid, d) = size(g)[d] | 50 Base.size(g::TensorGrid, d) = size(g)[d] |
51 | 51 |
52 | |
53 function min_spacing(g::TensorGrid) | |
54 relevant_grids = filter(g->!isa(g,ZeroDimGrid),g.grids) | |
55 d = min_spacing.(relevant_grids) | |
56 return minimum(d) | |
57 end | |
52 | 58 |
53 refine(g::TensorGrid, r::Int) = mapreduce(g->refine(g,r), TensorGrid, g.grids) | 59 refine(g::TensorGrid, r::Int) = mapreduce(g->refine(g,r), TensorGrid, g.grids) |
54 coarsen(g::TensorGrid, r::Int) = mapreduce(g->coarsen(g,r), TensorGrid, g.grids) | 60 coarsen(g::TensorGrid, r::Int) = mapreduce(g->coarsen(g,r), TensorGrid, g.grids) |
55 | 61 |
56 """ | 62 """ |