Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::search::ExcludeSymmetricDuplicates Class Reference

Builder-prepared excluder that suppresses one orientation of symmetric target/source pairs. More...

#include <Excluder.hpp>

Public Member Functions

Constructors
 ExcludeSymmetricDuplicates ()=default
Setup
void setup (const stk::mesh::BulkData &bulk_data, const stk::mesh::Selector &target_selector, const stk::mesh::Selector &source_selector)
 Prepare selector-overlap state for the selected source and target chunks.
Filtering
template<typename Candidate>
bool operator() (const Candidate &candidate) const
 Return whether a candidate pair should be excluded as the suppressed orientation.

Detailed Description

Handles all three selector-relationship cases (identical, disjoint, overlapping) with one type.

Constructor & Destructor Documentation

◆ ExcludeSymmetricDuplicates()

mundy::search::ExcludeSymmetricDuplicates::ExcludeSymmetricDuplicates ( )
default

Member Function Documentation

◆ setup()

void mundy::search::ExcludeSymmetricDuplicates::setup ( const stk::mesh::BulkData & bulk_data,
const stk::mesh::Selector & target_selector,
const stk::mesh::Selector & source_selector )
inline
Parameters
bulk_data[in] STK bulk data used to walk buckets and compute the intersection mask.
target_selector[in] Target-side selector.
source_selector[in] Source-side selector.

◆ operator()()

template<typename Candidate>
bool mundy::search::ExcludeSymmetricDuplicates::operator() ( const Candidate & candidate) const
inline
Parameters
candidate[in] Candidate pair produced by a search backend.