Mercurial > repos > public > sbplib_julia
comparison src/Grids/EquidistantGrid.jl @ 355:5c9212a8ee4f refactor/remove_dynamic_size_tensormapping
Merge in subgrid function
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Sun, 27 Sep 2020 21:08:18 +0200 |
parents | 8257cc75ea6b |
children | 64ad8ec0eae0 |
comparison
equal
deleted
inserted
replaced
354:db5f7b51038c | 355:5c9212a8ee4f |
---|---|
64 indices = Tuple.(CartesianIndices(grid.size)) | 64 indices = Tuple.(CartesianIndices(grid.size)) |
65 h = spacing(grid) | 65 h = spacing(grid) |
66 return broadcast(I -> grid.limit_lower .+ (I.-1).*h, indices) | 66 return broadcast(I -> grid.limit_lower .+ (I.-1).*h, indices) |
67 end | 67 end |
68 | 68 |
69 """ | |
70 subgrid(::EquidistantGrid, dim) | |
71 | |
72 Pick out given dimensions from the grid and return a grid for them | |
73 """ | |
74 function subgrid(grid::EquidistantGrid, dim) | |
75 size = grid.size[dim] | |
76 limit_lower = grid.limit_lower[dim] | |
77 limit_upper = grid.limit_upper[dim] | |
78 | |
79 return EquidistantGrid(size, limit_lower, limit_upper) | |
80 end | |
81 export subgrid | |
82 | |
69 function pointsalongdim(grid::EquidistantGrid, dim::Integer) | 83 function pointsalongdim(grid::EquidistantGrid, dim::Integer) |
70 @assert dim<=dimension(grid) | 84 @assert dim<=dimension(grid) |
71 @assert dim>0 | 85 @assert dim>0 |
72 points = collect(range(grid.limit_lower[dim],stop=grid.limit_upper[dim],length=grid.size[dim])) | 86 points = collect(range(grid.limit_lower[dim],stop=grid.limit_upper[dim],length=grid.size[dim])) |
73 end | 87 end |