NLMech  0.1.0
geometry::BaseInterior Class Reference

An abstraction class to store interior/exterior flags of node. More...

#include <interiorFlags.h>

Inheritance diagram for geometry::BaseInterior:
Inheritance graph
Collaboration diagram for geometry::BaseInterior:
Collaboration graph

Public Member Functions

 BaseInterior (inp::InteriorFlagsDeck *deck, std::pair< std::vector< double >, std::vector< double >> bbox, std::vector< std::pair< std::string, std::vector< double >>> no_fail_regions)
 Constructor. More...
 
virtual bool getInteriorFlag (const size_t &i, const util::Point3 &x)
 Get interior flag of node. More...
 
void print (int nt=0, int lvl=0) const
 Prints the information about the instance of the object. More...
 
std::string printStr (int nt=0, int lvl=0) const
 Returns the string containing information about the instance of the object. More...
 

Private Attributes

std::pair< std::vector< double >, std::vector< double > > d_bbox
 Bounding box.
 
std::vector< uint8_t > d_intFlags
 Interior flags. For given node i the flag is d_intFlags[i%8]. We use 1 bit per node.
 
std::vector< std::pair< std::string, std::vector< double > > > d_noFailRegions
 Specify multiple regions in which we set no-fail flag to true.
 
double d_noFailTol
 Tolerance to check if the point is in interior/exterior.
 

Detailed Description

An abstraction class to store interior/exterior flags of node.

This is a default class and is used when no-fail region is not specified.

Constructor & Destructor Documentation

◆ BaseInterior()

geometry::BaseInterior::BaseInterior ( inp::InteriorFlagsDeck deck,
std::pair< std::vector< double >, std::vector< double >>  bbox,
std::vector< std::pair< std::string, std::vector< double >>>  no_fail_regions 
)

Constructor.

Parameters
deckInput deck which contains user-specified information
bboxBounding box to determine the location of nodes relative to the boundary
no_fail_regionsNo fail regions other than the boundary of domain

Member Function Documentation

◆ getInteriorFlag()

bool geometry::BaseInterior::getInteriorFlag ( const size_t &  i,
const util::Point3 x 
)
virtual

Get interior flag of node.

Returns true for all the nodes.

Parameters
iNodal id
xNodal coordinate
Returns
True Always returns true as this is a default class

Reimplemented in geometry::DataInterior, and geometry::ComputeInterior.

◆ print()

void geometry::BaseInterior::print ( int  nt = 0,
int  lvl = 0 
) const
inline

Prints the information about the instance of the object.

Parameters
ntNumber of tabs to append before each line of string
lvlLevel of information sought (higher level means more information)
Here is the call graph for this function:

◆ printStr()

std::string geometry::BaseInterior::printStr ( int  nt = 0,
int  lvl = 0 
) const

Returns the string containing information about the instance of the object.

Parameters
ntNumber of tabs to append before each line of string
lvlLevel of information sought (higher level means more information)
Returns
string String containing information about this object

Referenced by print().

Here is the call graph for this function:
Here is the caller graph for this function:

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