gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
BoundaryLayerField Class Reference

#include <Field.h>

Inheritance diagram for BoundaryLayerField:
Collaboration diagram for BoundaryLayerField:

Public Member Functions

virtual bool isotropic () const
 
virtual const char * getName ()
 
virtual std::string getDescription ()
 
 BoundaryLayerField ()
 
 ~BoundaryLayerField ()
 
virtual double operator() (double x, double y, double z, GEntity *ge=nullptr)
 
virtual void operator() (double x, double y, double z, SMetric3 &metr, GEntity *ge=nullptr)
 
bool isEdgeBL (int iE) const
 
bool isEdgeBLSaved (int iE) const
 
bool isFanNode (int iV) const
 
int fanSize (int iV)
 
bool isEndNode (int iV) const
 
double hWall (int iV)
 
void computeFor1dMesh (double x, double y, double z, SMetric3 &metr)
 
void setupFor1d (int iE)
 
bool setupFor2d (int iF)
 
void removeAttractors ()
 
- Public Member Functions inherited from Field
 Field ()
 
virtual ~Field ()
 
bool isDeprecated ()
 
virtual void update ()
 
virtual int numComponents () const
 
virtual void operator() (double x, double y, double z, SVector3 &, GEntity *ge=0)
 
void putOnNewView (int viewTag=-1)
 
FieldOptiongetOption (const std::string &optionName)
 

Public Attributes

double hWallN
 
double ratio
 
double hFar
 
double thickness
 
double currentDistance
 
double tgtAnisoRatio
 
double beta
 
int iRecombine
 
int iIntersect
 
int betaLaw
 
int nb_divisions
 
DistanceFieldcurrentClosest
 
- Public Attributes inherited from Field
int id
 
std::map< std::string, FieldOption * > options
 
std::map< std::string, FieldCallback * > callbacks
 
bool updateNeeded
 

Private Member Functions

void operator() (DistanceField *cc, double dist, double x, double y, double z, SMetric3 &metr, GEntity *ge)
 

Private Attributes

std::list< DistanceField * > _attFields
 
std::list< double > _hWallNNodes
 
std::list< int > _pointTags
 
std::list< int > _curveTags
 
std::list< int > _pointTagsSaved
 
std::list< int > _curveTagsSaved
 
std::list< int > _fanPointTags
 
std::list< int > _excludedSurfaceTags
 
std::list< int > _fanSizes
 
SPoint3 _closestPoint
 

Additional Inherited Members

- Protected Attributes inherited from Field
bool _deprecated
 

Detailed Description

Definition at line 191 of file Field.h.

Constructor & Destructor Documentation

◆ BoundaryLayerField()

BoundaryLayerField::BoundaryLayerField ( )

Definition at line 2766 of file Field.cpp.

◆ ~BoundaryLayerField()

BoundaryLayerField::~BoundaryLayerField ( )
inline

Definition at line 212 of file Field.h.

Here is the call graph for this function:

Member Function Documentation

◆ computeFor1dMesh()

void BoundaryLayerField::computeFor1dMesh ( double  x,
double  y,
double  z,
SMetric3 metr 
)

Definition at line 2997 of file Field.cpp.

Referenced by F_Lc_aniso::operator()().

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

◆ fanSize()

int BoundaryLayerField::fanSize ( int  iV)
inline

Definition at line 232 of file Field.h.

Here is the call graph for this function:

◆ getDescription()

std::string BoundaryLayerField::getDescription ( )
virtual

Reimplemented from Field.

Definition at line 2761 of file Field.cpp.

◆ getName()

const char * BoundaryLayerField::getName ( )
virtual

Implements Field.

Definition at line 2759 of file Field.cpp.

◆ hWall()

double BoundaryLayerField::hWall ( int  iV)
inline

Definition at line 249 of file Field.h.

Referenced by createPoints().

Here is the caller graph for this function:

◆ isEdgeBL()

bool BoundaryLayerField::isEdgeBL ( int  iE) const
inline

Definition at line 217 of file Field.h.

Referenced by addBoundaryLayerPoints(), and F_Lc_aniso::operator()().

Here is the caller graph for this function:

◆ isEdgeBLSaved()

bool BoundaryLayerField::isEdgeBLSaved ( int  iE) const
inline

Definition at line 222 of file Field.h.

◆ isEndNode()

bool BoundaryLayerField::isEndNode ( int  iV) const
inline

Definition at line 244 of file Field.h.

Referenced by addBoundaryLayerPoints().

Here is the caller graph for this function:

◆ isFanNode()

bool BoundaryLayerField::isFanNode ( int  iV) const
inline

Definition at line 227 of file Field.h.

◆ isotropic()

virtual bool BoundaryLayerField::isotropic ( ) const
inlinevirtual

Reimplemented from Field.

Definition at line 208 of file Field.h.

◆ operator()() [1/3]

void BoundaryLayerField::operator() ( DistanceField cc,
double  dist,
double  x,
double  y,
double  z,
SMetric3 metr,
GEntity ge 
)
private

Definition at line 3033 of file Field.cpp.

Here is the call graph for this function:

◆ operator()() [2/3]

double BoundaryLayerField::operator() ( double  x,
double  y,
double  z,
GEntity ge = nullptr 
)
virtual

Implements Field.

Definition at line 2967 of file Field.cpp.

◆ operator()() [3/3]

void BoundaryLayerField::operator() ( double  x,
double  y,
double  z,
SMetric3 metr,
GEntity ge = nullptr 
)
virtual

Reimplemented from Field.

Definition at line 3130 of file Field.cpp.

Here is the call graph for this function:

◆ removeAttractors()

void BoundaryLayerField::removeAttractors ( )

Definition at line 2850 of file Field.cpp.

Referenced by setupFor1d(), setupFor2d(), and ~BoundaryLayerField().

Here is the caller graph for this function:

◆ setupFor1d()

void BoundaryLayerField::setupFor1d ( int  iE)

Definition at line 2857 of file Field.cpp.

Referenced by addBoundaryLayerPoints().

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

◆ setupFor2d()

bool BoundaryLayerField::setupFor2d ( int  iF)

Definition at line 2893 of file Field.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _attFields

std::list<DistanceField *> BoundaryLayerField::_attFields
private

Definition at line 193 of file Field.h.

Referenced by operator()(), and removeAttractors().

◆ _closestPoint

SPoint3 BoundaryLayerField::_closestPoint
private

Definition at line 199 of file Field.h.

Referenced by operator()().

◆ _curveTags

std::list<int> BoundaryLayerField::_curveTags
private

Definition at line 195 of file Field.h.

Referenced by BoundaryLayerField(), isEdgeBL(), operator()(), setupFor1d(), and setupFor2d().

◆ _curveTagsSaved

std::list<int> BoundaryLayerField::_curveTagsSaved
private

Definition at line 196 of file Field.h.

Referenced by isEdgeBLSaved(), setupFor1d(), and setupFor2d().

◆ _excludedSurfaceTags

std::list<int> BoundaryLayerField::_excludedSurfaceTags
private

Definition at line 197 of file Field.h.

Referenced by BoundaryLayerField(), and setupFor2d().

◆ _fanPointTags

std::list<int> BoundaryLayerField::_fanPointTags
private

Definition at line 196 of file Field.h.

Referenced by BoundaryLayerField(), fanSize(), and isFanNode().

◆ _fanSizes

std::list<int> BoundaryLayerField::_fanSizes
private

Definition at line 198 of file Field.h.

Referenced by BoundaryLayerField(), and fanSize().

◆ _hWallNNodes

std::list<double> BoundaryLayerField::_hWallNNodes
private

Definition at line 194 of file Field.h.

Referenced by BoundaryLayerField(), and hWall().

◆ _pointTags

std::list<int> BoundaryLayerField::_pointTags
private

◆ _pointTagsSaved

std::list<int> BoundaryLayerField::_pointTagsSaved
private

Definition at line 196 of file Field.h.

Referenced by setupFor1d(), and setupFor2d().

◆ beta

double BoundaryLayerField::beta

Definition at line 205 of file Field.h.

Referenced by BoundaryLayerField(), createPoints(), and operator()().

◆ betaLaw

int BoundaryLayerField::betaLaw

Definition at line 206 of file Field.h.

Referenced by BoundaryLayerField(), and createPoints().

◆ currentClosest

DistanceField* BoundaryLayerField::currentClosest

Definition at line 207 of file Field.h.

Referenced by operator()().

◆ currentDistance

double BoundaryLayerField::currentDistance

Definition at line 205 of file Field.h.

Referenced by operator()().

◆ hFar

double BoundaryLayerField::hFar

Definition at line 204 of file Field.h.

Referenced by BoundaryLayerField(), computeFor1dMesh(), createPoints(), and operator()().

◆ hWallN

double BoundaryLayerField::hWallN

Definition at line 204 of file Field.h.

Referenced by BoundaryLayerField(), computeFor1dMesh(), hWall(), and operator()().

◆ iIntersect

int BoundaryLayerField::iIntersect

Definition at line 206 of file Field.h.

Referenced by BoundaryLayerField(), and operator()().

◆ iRecombine

int BoundaryLayerField::iRecombine

Definition at line 206 of file Field.h.

Referenced by BoundaryLayerField(), and splitElementsInBoundaryLayerIfNeeded().

◆ nb_divisions

int BoundaryLayerField::nb_divisions

Definition at line 206 of file Field.h.

Referenced by BoundaryLayerField(), and createPoints().

◆ ratio

double BoundaryLayerField::ratio

Definition at line 204 of file Field.h.

Referenced by BoundaryLayerField(), computeFor1dMesh(), createPoints(), and operator()().

◆ tgtAnisoRatio

double BoundaryLayerField::tgtAnisoRatio

Definition at line 205 of file Field.h.

Referenced by BoundaryLayerField(), and operator()().

◆ thickness

double BoundaryLayerField::thickness

Definition at line 204 of file Field.h.

Referenced by BoundaryLayerField(), computeFor1dMesh(), createPoints(), and operator()().


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