MCPcopy Create free account
hub / github.com/FEniCS/dolfinx / local_to_global

Method local_to_global

cpp/dolfinx/refinement/utils.cpp:28–45  ·  view source on GitHub ↗

-----------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

26
27//-----------------------------------------------------------------------------
28std::int64_t refinement::impl::local_to_global(std::int32_t local_index,
29 const common::IndexMap& map)
30{
31 assert(local_index >= 0);
32 const std::array local_range = map.local_range();
33 const std::int32_t local_size = local_range[1] - local_range[0];
34 if (local_index < local_size)
35 {
36 const std::int64_t global_offset = local_range[0];
37 return global_offset + local_index;
38 }
39 else
40 {
41 std::span ghosts = map.ghosts();
42 assert((local_index - local_size) < (int)ghosts.size());
43 return ghosts[local_index - local_size];
44 }
45}
46//---------------------------------------------------------------------------------
47void refinement::update_logical_edgefunction(
48 MPI_Comm comm,

Callers

nothing calls this directly

Calls 3

ghostsMethod · 0.80
local_rangeMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected