@@ -150,7 +150,7 @@ def rotation_matrix(axis, angle):
150
150
@pytest .mark .parametrize ("dtype" , [np .float32 , np .float64 ])
151
151
def test_empty_tree (dtype ):
152
152
mesh = create_unit_interval (MPI .COMM_WORLD , 16 , dtype = dtype )
153
- bbtree = bb_tree (mesh , mesh .topology .dim , np .array ([], dtype = dtype ))
153
+ bbtree = bb_tree (mesh , mesh .topology .dim , 0.0 , np .array ([], dtype = dtype ))
154
154
assert bbtree .num_bboxes == 0
155
155
156
156
@@ -167,7 +167,7 @@ def test_compute_collisions_point_1d(dtype):
167
167
168
168
# Compute collision
169
169
tdim = mesh .topology .dim
170
- tree = bb_tree (mesh , tdim )
170
+ tree = bb_tree (mesh , tdim , 0.0 )
171
171
entities = compute_collisions_points (tree , p )
172
172
assert len (entities .array ) == 1
173
173
@@ -212,8 +212,8 @@ def locator_B(x):
212
212
cells_B = np .sort (np .unique (np .hstack ([v_to_c .links (vertex ) for vertex in vertices_B ])))
213
213
214
214
# Find colliding entities using bounding box trees
215
- tree_A = bb_tree (mesh_A , mesh_A .topology .dim )
216
- tree_B = bb_tree (mesh_B , mesh_B .topology .dim )
215
+ tree_A = bb_tree (mesh_A , mesh_A .topology .dim , 0.0 )
216
+ tree_B = bb_tree (mesh_B , mesh_B .topology .dim , 0.0 )
217
217
entities = compute_collisions_trees (tree_A , tree_B )
218
218
entities_A = np .sort (np .unique ([q [0 ] for q in entities ]))
219
219
entities_B = np .sort (np .unique ([q [1 ] for q in entities ]))
@@ -229,8 +229,8 @@ def test_compute_collisions_tree_2d(point, dtype):
229
229
mesh_B = create_unit_square (MPI .COMM_WORLD , 5 , 5 , dtype = dtype )
230
230
bgeom = mesh_B .geometry .x
231
231
bgeom += point
232
- tree_A = bb_tree (mesh_A , mesh_A .topology .dim )
233
- tree_B = bb_tree (mesh_B , mesh_B .topology .dim )
232
+ tree_A = bb_tree (mesh_A , mesh_A .topology .dim , 0.0 )
233
+ tree_B = bb_tree (mesh_B , mesh_B .topology .dim , 0.0 )
234
234
entities = compute_collisions_trees (tree_A , tree_B )
235
235
236
236
entities_A = np .sort (np .unique ([q [0 ] for q in entities ]))
@@ -251,8 +251,8 @@ def test_compute_collisions_tree_3d(point, dtype):
251
251
bgeom = mesh_B .geometry .x
252
252
bgeom += point
253
253
254
- tree_A = bb_tree (mesh_A , mesh_A .topology .dim )
255
- tree_B = bb_tree (mesh_B , mesh_B .topology .dim )
254
+ tree_A = bb_tree (mesh_A , mesh_A .topology .dim , 0.0 )
255
+ tree_B = bb_tree (mesh_B , mesh_B .topology .dim , 0.0 )
256
256
entities = compute_collisions_trees (tree_A , tree_B )
257
257
entities_A = np .sort (np .unique ([q [0 ] for q in entities ]))
258
258
entities_B = np .sort (np .unique ([q [1 ] for q in entities ]))
@@ -269,7 +269,7 @@ def test_compute_closest_entity_1d(dim, dtype):
269
269
N = 16
270
270
points = np .array ([[- ref_distance , 0 , 0 ], [2 / N , 2 * ref_distance , 0 ]], dtype = dtype )
271
271
mesh = create_unit_interval (MPI .COMM_WORLD , N , dtype = dtype )
272
- tree = bb_tree (mesh , dim )
272
+ tree = bb_tree (mesh , dim , 0.0 )
273
273
num_entities_local = (
274
274
mesh .topology .index_map (dim ).size_local + mesh .topology .index_map (dim ).num_ghosts
275
275
)
@@ -303,7 +303,7 @@ def test_compute_closest_entity_2d(dim, dtype):
303
303
points = np .array ([- 1.0 , - 0.01 , 0.0 ], dtype = dtype )
304
304
mesh = create_unit_square (MPI .COMM_WORLD , 15 , 15 , dtype = dtype )
305
305
mesh .topology .create_entities (dim )
306
- tree = bb_tree (mesh , dim )
306
+ tree = bb_tree (mesh , dim , 0.0 )
307
307
num_entities_local = (
308
308
mesh .topology .index_map (dim ).size_local + mesh .topology .index_map (dim ).num_ghosts
309
309
)
@@ -335,7 +335,7 @@ def test_compute_closest_entity_3d(dim, dtype):
335
335
mesh = create_unit_cube (MPI .COMM_WORLD , 8 , 8 , 8 , dtype = dtype )
336
336
mesh .topology .create_entities (dim )
337
337
338
- tree = bb_tree (mesh , dim )
338
+ tree = bb_tree (mesh , dim , 0.0 )
339
339
num_entities_local = (
340
340
mesh .topology .index_map (dim ).size_local + mesh .topology .index_map (dim ).num_ghosts
341
341
)
@@ -368,7 +368,7 @@ def test_compute_closest_sub_entity(dim, dtype):
368
368
mesh = create_unit_cube (MPI .COMM_WORLD , 8 , 8 , 8 , dtype = dtype )
369
369
mesh .topology .create_entities (dim )
370
370
left_entities = locate_entities (mesh , dim , lambda x : x [0 ] <= xc )
371
- tree = bb_tree (mesh , dim , left_entities )
371
+ tree = bb_tree (mesh , dim , 0.0 , left_entities )
372
372
midpoint_tree = create_midpoint_tree (mesh , dim , left_entities )
373
373
closest_entities = compute_closest_entity (tree , midpoint_tree , mesh , points )
374
374
@@ -396,7 +396,7 @@ def test_surface_bbtree(dtype):
396
396
tdim = mesh .topology .dim
397
397
f_to_c = mesh .topology .connectivity (tdim - 1 , tdim )
398
398
cells = np .array ([f_to_c .links (f )[0 ] for f in sf ], dtype = np .int32 )
399
- bbtree = bb_tree (mesh , tdim , cells )
399
+ bbtree = bb_tree (mesh , tdim , 0.0 , cells )
400
400
401
401
# test collision (should not collide with any)
402
402
p = np .array ([0.5 , 0.5 , 0.5 ])
@@ -413,7 +413,7 @@ def test_sub_bbtree_codim1(dtype):
413
413
top_facets = locate_entities_boundary (mesh , fdim , lambda x : np .isclose (x [2 ], 1 ))
414
414
f_to_c = mesh .topology .connectivity (tdim - 1 , tdim )
415
415
cells = np .array ([f_to_c .links (f )[0 ] for f in top_facets ], dtype = np .int32 )
416
- bbtree = bb_tree (mesh , tdim , cells )
416
+ bbtree = bb_tree (mesh , tdim , 0.0 , cells )
417
417
418
418
# Compute a BBtree for all processes
419
419
process_bbtree = bbtree .create_global_tree (mesh .comm )
@@ -441,7 +441,7 @@ def test_serial_global_bb_tree(dtype, comm):
441
441
# entity tree with a serial mesh
442
442
x = np .array ([[2.0 , 2.0 , 3.0 ], [0.3 , 0.2 , 0.1 ]], dtype = dtype )
443
443
444
- tree = bb_tree (mesh , mesh .topology .dim )
444
+ tree = bb_tree (mesh , mesh .topology .dim , 0.0 )
445
445
global_tree = tree .create_global_tree (mesh .comm )
446
446
447
447
tree_col = compute_collisions_points (tree , x )
@@ -465,12 +465,12 @@ def test_sub_bbtree_box(ct, N, dtype):
465
465
facets = locate_entities_boundary (mesh , fdim , lambda x : np .isclose (x [1 ], 1.0 ))
466
466
f_to_c = mesh .topology .connectivity (fdim , tdim )
467
467
cells = np .int32 (np .unique ([f_to_c .links (f )[0 ] for f in facets ]))
468
- bbtree = bb_tree (mesh , tdim , cells )
468
+ bbtree = bb_tree (mesh , tdim , 0.0 , cells )
469
469
num_boxes = bbtree .num_bboxes
470
470
if num_boxes > 0 :
471
471
bbox = bbtree .get_bbox (num_boxes - 1 )
472
472
assert np .isclose (bbox [0 ][1 ], (N - 1 ) / N )
473
- tree = bb_tree (mesh , tdim )
473
+ tree = bb_tree (mesh , tdim , 0.0 )
474
474
assert num_boxes < tree .num_bboxes
475
475
476
476
@@ -489,13 +489,13 @@ def test_surface_bbtree_collision(dtype):
489
489
490
490
# Compute unique set of cells (some will be counted multiple times)
491
491
cells = np .array (list (set ([f_to_c .links (f )[0 ] for f in sf ])), dtype = np .int32 )
492
- bbtree1 = bb_tree (mesh1 , tdim , cells )
492
+ bbtree1 = bb_tree (mesh1 , tdim , 0.0 , cells )
493
493
494
494
mesh2 .topology .create_connectivity (mesh2 .topology .dim - 1 , mesh2 .topology .dim )
495
495
sf = exterior_facet_indices (mesh2 .topology )
496
496
f_to_c = mesh2 .topology .connectivity (tdim - 1 , tdim )
497
497
cells = np .array (list (set ([f_to_c .links (f )[0 ] for f in sf ])), dtype = np .int32 )
498
- bbtree2 = bb_tree (mesh2 , tdim , cells )
498
+ bbtree2 = bb_tree (mesh2 , tdim , 0.0 , cells )
499
499
500
500
collisions = compute_collisions_trees (bbtree1 , bbtree2 )
501
501
assert len (collisions ) == 1
@@ -528,7 +528,7 @@ def test_determine_point_ownership(dim, affine, dtype):
528
528
)
529
529
cell_map = mesh .topology .index_map (tdim )
530
530
531
- tree = bb_tree (mesh , mesh .topology .dim , np .arange (cell_map .size_local ))
531
+ tree = bb_tree (mesh , mesh .topology .dim , 0.0 , np .arange (cell_map .size_local ))
532
532
num_global_cells = num_cells_side ** tdim
533
533
if affine :
534
534
num_global_cells *= 2 * (3 ** (tdim - 2 ))
0 commit comments