Panzer Version of the Day
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
panzer_stk::QuarterPlaneMatcher Class Reference

#include <Panzer_STK_PeriodicBC_MatchConditions.hpp>

Public Member Functions

 QuarterPlaneMatcher (int index0a, int index0b, int index1)
 index0a/index0b are the coordinate directions compared across the two quarter-symmetry planes; index1 is the direction shared by both planes.
 
 QuarterPlaneMatcher (int index0a, int index0b, int index1, double error)
 Construct with an explicit absolute tolerance.
 
 QuarterPlaneMatcher (int index0a, int index0b, int index1, const std::vector< std::string > &params)
 Construct with tolerance parsed from strings, as accepted by parseParams().
 
 QuarterPlaneMatcher (const QuarterPlaneMatcher &cm)
 Copy constructor.
 
bool operator() (const Teuchos::Tuple< double, 3 > &a, const Teuchos::Tuple< double, 3 > &b) const
 Returns true if points a and b match across the quarter-symmetry planes, within tolerance.
 
std::string getString () const
 Returns a human-readable description of this matcher's compared coordinates and tolerance.
 
double getAbsoluteTolerance () const
 Returns the absolute matching tolerance.
 
void transform (double *ptB, const std::vector< double > &centroidA) const
 Shifts ptB in place to reflect it into plane A's quarter-symmetry orientation, given plane A's centroid.
 

Private Member Functions

void buildLabels ()
 
void parseParams (const std::vector< std::string > &params)
 

Private Attributes

double error_
 
int index0a_
 
int index0b_
 
int index1_
 
char labels_ [3]
 

Detailed Description

Match coordinates at the same point in two planes. This handles quarter symmetry.

Definition at line 235 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

Constructor & Destructor Documentation

◆ QuarterPlaneMatcher() [1/4]

panzer_stk::QuarterPlaneMatcher::QuarterPlaneMatcher ( int  index0a,
int  index0b,
int  index1 
)
inline

index0a/index0b are the coordinate directions compared across the two quarter-symmetry planes; index1 is the direction shared by both planes.

Definition at line 260 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ QuarterPlaneMatcher() [2/4]

panzer_stk::QuarterPlaneMatcher::QuarterPlaneMatcher ( int  index0a,
int  index0b,
int  index1,
double  error 
)
inline

Construct with an explicit absolute tolerance.

Definition at line 265 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ QuarterPlaneMatcher() [3/4]

panzer_stk::QuarterPlaneMatcher::QuarterPlaneMatcher ( int  index0a,
int  index0b,
int  index1,
const std::vector< std::string > &  params 
)
inline

Construct with tolerance parsed from strings, as accepted by parseParams().

Definition at line 270 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ QuarterPlaneMatcher() [4/4]

panzer_stk::QuarterPlaneMatcher::QuarterPlaneMatcher ( const QuarterPlaneMatcher cm)
inline

Copy constructor.

Definition at line 275 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

Member Function Documentation

◆ buildLabels()

void panzer_stk::QuarterPlaneMatcher::buildLabels ( )
inlineprivate

Definition at line 240 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ parseParams()

void panzer_stk::QuarterPlaneMatcher::parseParams ( const std::vector< std::string > &  params)
inlineprivate

Definition at line 243 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ operator()()

bool panzer_stk::QuarterPlaneMatcher::operator() ( const Teuchos::Tuple< double, 3 > &  a,
const Teuchos::Tuple< double, 3 > &  b 
) const
inline

Returns true if points a and b match across the quarter-symmetry planes, within tolerance.

Definition at line 280 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ getString()

std::string panzer_stk::QuarterPlaneMatcher::getString ( ) const
inline

Returns a human-readable description of this matcher's compared coordinates and tolerance.

Definition at line 286 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ getAbsoluteTolerance()

double panzer_stk::QuarterPlaneMatcher::getAbsoluteTolerance ( ) const
inline

Returns the absolute matching tolerance.

Definition at line 294 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ transform()

void panzer_stk::QuarterPlaneMatcher::transform ( double *  ptB,
const std::vector< double > &  centroidA 
) const
inline

Shifts ptB in place to reflect it into plane A's quarter-symmetry orientation, given plane A's centroid.

Definition at line 297 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

Member Data Documentation

◆ error_

double panzer_stk::QuarterPlaneMatcher::error_
private

Definition at line 236 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ index0a_

int panzer_stk::QuarterPlaneMatcher::index0a_
private

Definition at line 237 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ index0b_

int panzer_stk::QuarterPlaneMatcher::index0b_
private

Definition at line 237 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ index1_

int panzer_stk::QuarterPlaneMatcher::index1_
private

Definition at line 237 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.

◆ labels_

char panzer_stk::QuarterPlaneMatcher::labels_[3]
private

Definition at line 238 of file Panzer_STK_PeriodicBC_MatchConditions.hpp.


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