preCICE
Loading...
Searching...
No Matches
precice::impl::ReceivedMeshContext Struct Reference

Context for a mesh received from another participant. More...

#include <ReceivedMeshContext.hpp>

Inheritance diagram for precice::impl::ReceivedMeshContext:
[legend]
Collaboration diagram for precice::impl::ReceivedMeshContext:
[legend]

Public Member Functions

void checkVerticesInsideAccessRegion (precice::span< const double > coordinates, int meshDim, std::string_view functionName) const
std::vector< std::reference_wrapper< const mesh::Vertex > > filterVerticesToLocalAccessRegion (bool requiresBB) const
 Filters vertices to those within the local access region.
Public Member Functions inherited from precice::impl::MeshContext
void require (mapping::Mapping::MeshRequirement requirement)
void clearMappings ()

Public Attributes

bool allowDirectAccess = false
 Members that only exist for received meshes (moved from MeshContext)
std::shared_ptr< mesh::BoundingBoxuserDefinedAccessRegion
std::string receiveMeshFrom
 Name of participant that provides the mesh.
double safetyFactor = -1
 bounding box to speed up decomposition of received mesh is increased by this safety factor
std::shared_ptr< precice::partition::ReceivedPartitionpartition
partition::ReceivedPartition::GeometricFilter geoFilter = partition::ReceivedPartition::GeometricFilter::UNDEFINED
 type of geometric filter
logging::Logger _log {"impl::ReceivedMeshContext"}
Public Attributes inherited from precice::impl::MeshContext
mesh::PtrMesh mesh
 Mesh holding the geometry data structure.
mapping::Mapping::MeshRequirement meshRequirement = mapping::Mapping::MeshRequirement::UNDEFINED
 Determines which mesh type has to be provided by the accessor.
std::vector< MappingContextfromMappingContexts
 Mappings used when mapping data from the mesh. Can be empty.
std::vector< MappingContexttoMappingContexts
 Mappings used when mapping data to the mesh. Can be empty.

Detailed Description

Context for a mesh received from another participant.

Definition at line 19 of file ReceivedMeshContext.hpp.

Member Function Documentation

◆ checkVerticesInsideAccessRegion()

void precice::impl::ReceivedMeshContext::checkVerticesInsideAccessRegion ( precice::span< const double > coordinates,
int meshDim,
std::string_view functionName ) const

Checks, that all vertices are within the user-defined access region and throws an error if vertices are not. The function does not return the result to be able to log the actual outliers

Definition at line 11 of file ReceivedMeshContext.cpp.

Here is the call graph for this function:

◆ filterVerticesToLocalAccessRegion()

std::vector< std::reference_wrapper< const mesh::Vertex > > precice::impl::ReceivedMeshContext::filterVerticesToLocalAccessRegion ( bool requiresBB) const

Filters vertices to those within the local access region.

Definition at line 29 of file ReceivedMeshContext.cpp.

Member Data Documentation

◆ _log

logging::Logger precice::impl::ReceivedMeshContext::_log {"impl::ReceivedMeshContext"}
mutable

Definition at line 52 of file ReceivedMeshContext.hpp.

◆ allowDirectAccess

bool precice::impl::ReceivedMeshContext::allowDirectAccess = false

Members that only exist for received meshes (moved from MeshContext)

In case a mapping done by the solver is favored over a preCICE mapping, apply user-defined bounding-boxes.

Definition at line 24 of file ReceivedMeshContext.hpp.

◆ geoFilter

type of geometric filter

Definition at line 42 of file ReceivedMeshContext.hpp.

◆ partition

std::shared_ptr<precice::partition::ReceivedPartition> precice::impl::ReceivedMeshContext::partition

Definition at line 39 of file ReceivedMeshContext.hpp.

◆ receiveMeshFrom

std::string precice::impl::ReceivedMeshContext::receiveMeshFrom

Name of participant that provides the mesh.

Definition at line 34 of file ReceivedMeshContext.hpp.

◆ safetyFactor

double precice::impl::ReceivedMeshContext::safetyFactor = -1

bounding box to speed up decomposition of received mesh is increased by this safety factor

Definition at line 37 of file ReceivedMeshContext.hpp.

◆ userDefinedAccessRegion

std::shared_ptr<mesh::BoundingBox> precice::impl::ReceivedMeshContext::userDefinedAccessRegion

setMeshAccessRegion may only be called once per mesh(context). putting this into the mesh context means that we can only call this once, regardless of combinations with just-in-time mappings or multiple such mappings. If multiples are desired, we would need to shift this into the MappingContext

Definition at line 31 of file ReceivedMeshContext.hpp.


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