55 const int num_faces_per_cell = partition.
cell_to_faces.extent(1);
56 const int num_cells_per_face = 2;
59 _subcell_to_cells = PHX::View<int*>(
"subcell_to_cells", num_faces*num_cells_per_face);
62 _cell_to_subcells = PHX::View<int*>(
"cell_to_subcells", num_cells*num_faces_per_cell);
66 _subcell_to_cells_host = PHX::View<int*>::HostMirror(
"subcell_to_cells_host", num_faces*num_cells_per_face);
69 _cell_to_subcells_host = PHX::View<int*>::HostMirror(
"cell_to_subcells_host", num_cells*num_faces_per_cell);
80 Kokkos::parallel_for(
"subcell connectivity 0",num_faces,KOKKOS_LAMBDA (
const int face) {
81 subcell_to_cells_adj(face+1) = (face * num_cells_per_face) + num_cells_per_face;
82 subcell_to_cells(num_cells_per_face*face + 0) = face_to_cells(face,0);
83 subcell_to_cells(num_cells_per_face*face + 1) = face_to_cells(face,1);
84 subcell_to_local_subcells(num_cells_per_face*face + 0) = face_to_lidx(face,0);
85 subcell_to_local_subcells(num_cells_per_face*face + 1) = face_to_lidx(face,1);
87 PHX::Device::execution_space().fence();
97 Kokkos::parallel_for(
"subcell connectivity 1",num_cells,KOKKOS_LAMBDA (
const int cell) {
98 cell_to_subcells_adj(cell+1) = (cell * num_faces_per_cell) + num_faces_per_cell;
99 for(
int local_face=0;local_face<num_faces_per_cell;++local_face){
100 cell_to_subcells(num_faces_per_cell*cell+local_face) = cell_to_faces(cell,local_face);
103 PHX::Device::execution_space().fence();