Reference documentation for deal.II version GIT 3a483e2de5 2022-11-28 08:40:02+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Attributes | List of all members
GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim > Struct Template Reference

#include <deal.II/grid/grid_tools.h>

Public Attributes

std::vector< std::tuple< std::pair< int, int >, unsigned int, unsigned int, Point< dim >, Point< spacedim >, unsigned int > > send_components
 
std::vector< unsigned int > send_ranks
 
std::vector< unsigned int > send_ptrs
 
std::vector< std::tuple< unsigned int, unsigned int, unsigned int > > recv_components
 
std::vector< unsigned int > recv_ranks
 
std::vector< unsigned int > recv_ptrs
 

Detailed Description

template<int dim, int spacedim>
struct GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >

Data structure returned by GridTools::internal::distributed_compute_point_locations(). It provides information to perform GridTools::distributed_compute_point_locations() and to set up the communication pattern within Utilities::MPI::RemotePointEvaluation::reinit().

Note
The name of the fields are chosen with Utilities::MPI::RemotePointEvaluation in mind. Here, quantities are computed at specified arbitrary positioned points (and even on remote processes in the MPI universe) cell by cell and these values are sent to requesting processes, which receive the result and resort the result according to the points.

Definition at line 1154 of file grid_tools.h.

Member Data Documentation

◆ send_components

template<int dim, int spacedim>
std::vector<std::tuple<std::pair<int, int>, unsigned int, unsigned int, Point<dim>, Point<spacedim>, unsigned int> > GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::send_components

Information of each point on sending/evaluation side. The elements of the tuple are as follows: 0) cell level and index, 1) rank of the owning process, 2) local index of the owning process, 3) reference position, 4) real position, 5) permutation index within a send buffer.

Definition at line 1168 of file grid_tools.h.

◆ send_ranks

template<int dim, int spacedim>
std::vector<unsigned int> GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::send_ranks

Ranks to send to.

Definition at line 1173 of file grid_tools.h.

◆ send_ptrs

template<int dim, int spacedim>
std::vector<unsigned int> GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::send_ptrs

Pointers of ranges within a send buffer to be sent to the ranks specified by send_ranks. The size of the send buffer is given by send_ptrs.back().

Definition at line 1180 of file grid_tools.h.

◆ recv_components

template<int dim, int spacedim>
std::vector<std::tuple<unsigned int, unsigned int, unsigned int> > GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::recv_components

Information of each received data value. The elements of the tuple are as follows: 0) rank of sender, 1) local index, 2) enumeration index.

Note
The vector is sorted according to 1), 0), 2).
To each point multiple data values might be associated to. This might be the case if a point coincides with a geometric entity (e.g., vertex) that is shared by multiple cells.

Definition at line 1193 of file grid_tools.h.

◆ recv_ranks

template<int dim, int spacedim>
std::vector<unsigned int> GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::recv_ranks

Ranks from where data is received.

Definition at line 1198 of file grid_tools.h.

◆ recv_ptrs

template<int dim, int spacedim>
std::vector<unsigned int> GridTools::internal::DistributedComputePointLocationsInternal< dim, spacedim >::recv_ptrs

Pointers of ranges within a receive buffer that are filled by ranks specified by recv_ranks. The size of the receive buffer is given by recv_ptrs.back().

Definition at line 1205 of file grid_tools.h.


The documentation for this struct was generated from the following file: