diff src/Grids/tensor_grid.jl @ 1492:d9d9ab18cdfc feature/grids/curvilinear

Merge default
author Jonatan Werpers <jonatan@werpers.com>
date Fri, 01 Dec 2023 11:52:26 +0100
parents 0322c181a1cd de4e15924d26
children b02917bcd7d5
line wrap: on
line diff
--- a/src/Grids/tensor_grid.jl	Thu Nov 23 16:08:47 2023 +0100
+++ b/src/Grids/tensor_grid.jl	Fri Dec 01 11:52:26 2023 +0100
@@ -75,7 +75,6 @@
     return LazyTensors.concatenate_tuples(per_grid...)
 end
 
-
 """
     boundary_grid(g::TensorGrid, id::TensorGridBoundary)
 
@@ -87,6 +86,16 @@
     return TensorGrid(new_grids...)
 end
 
+function boundary_indices(g::TensorGrid, id::TensorGridBoundary)
+    per_grid_ind = map(g.grids) do g
+        ntuple(i->:, ndims(g))
+    end
+
+    local_b_ind = boundary_indices(g.grids[grid_id(id)], boundary_id(id))
+    b_ind = Base.setindex(per_grid_ind, local_b_ind, grid_id(id))
+
+    return LazyTensors.concatenate_tuples(b_ind...)
+end
 
 function combined_coordinate_vector_type(coordinate_types...)
     combined_coord_length = mapreduce(_ncomponents, +, coordinate_types)