Mercurial > repos > public > sbplib_julia
comparison src/Grids/EquidistantGrid.jl @ 366:0af6da238d95
Merge feature/equidistant_grid/subgrid. Add function for getting isolated dimensions of EquidistantGrid
| author | Jonatan Werpers <jonatan@werpers.com> |
|---|---|
| date | Mon, 28 Sep 2020 22:49:21 +0200 |
| parents | 64ad8ec0eae0 |
| children | dacbcba33d7d |
comparison
equal
deleted
inserted
replaced
| 351:ffddaf053085 | 366:0af6da238d95 |
|---|---|
| 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 restrict(::EquidistantGrid, dim) | |
| 71 | |
| 72 Pick out given dimensions from the grid and return a grid for them | |
| 73 """ | |
| 74 function restrict(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 restrict | |
| 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 |
