Skip to content

Commit

Permalink
Fixed uvm error with building the sideset coords
Browse files Browse the repository at this point in the history
  • Loading branch information
Matt Bettencourt committed Sep 7, 2021
1 parent ffacb04 commit 632e4aa
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions packages/panzer/disc-fe/src/Panzer_Workset_Builder_impl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -419,14 +419,22 @@ panzer::buildBCWorkset(const WorksetNeeds & needs_a,
impl::subset(local_side_ids_b, idxs, lsi_b);
auto vc_a = mdArrayFactory.buildStaticArray<double,Cell,NODE,Dim>("vc_a", idxs.size(), d1, d2);
auto vc_b = mdArrayFactory.buildStaticArray<double,Cell,NODE,Dim>("vc_b", idxs.size(), d1, d2);
auto vc_a_h = Kokkos::create_mirror_view(vc_a.get_static_view());
auto vc_b_h = Kokkos::create_mirror_view(vc_b.get_static_view());
auto vertex_coordinates_a_h = Kokkos::create_mirror_view(PHX::as_view(vertex_coordinates_a));
auto vertex_coordinates_b_h = Kokkos::create_mirror_view(PHX::as_view(vertex_coordinates_b));
Kokkos::deep_copy(vertex_coordinates_a_h, PHX::as_view(vertex_coordinates_a));
Kokkos::deep_copy(vertex_coordinates_b_h, PHX::as_view(vertex_coordinates_b));
for (std::size_t i = 0; i < idxs.size(); ++i) {
const auto ii = idxs[i];
for (int j = 0; j < d1; ++j)
for (int k = 0; k < d2; ++k) {
vc_a(i, j, k) = vertex_coordinates_a(ii, j, k);
vc_b(i, j, k) = vertex_coordinates_b(ii, j, k);
vc_a_h(i, j, k) = vertex_coordinates_a_h(ii, j, k);
vc_b_h(i, j, k) = vertex_coordinates_b_h(ii, j, k);
}
}
Kokkos::deep_copy(vc_a.get_static_view(), vc_a_h);
Kokkos::deep_copy(vc_b.get_static_view(), vc_b_h);
auto mwa_it = impl::buildBCWorksetForUniqueSideId(needs_a,blockid_a, lci_a, lsi_a, vc_a,
needs_b,blockid_b, lci_b, lsi_b, vc_b,
needs_b);
Expand Down

0 comments on commit 632e4aa

Please sign in to comment.