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

#include <HierarchicalBasisH1Quad.h>

Inheritance diagram for HierarchicalBasisH1Quad:
Collaboration diagram for HierarchicalBasisH1Quad:

Public Member Functions

 HierarchicalBasisH1Quad (int pf1, int pf2, int pe0, int pe1, int pe2, int pe3)
 
 HierarchicalBasisH1Quad (int order)
 
virtual ~HierarchicalBasisH1Quad ()
 
virtual unsigned int getNumberOfOrientations () const
 
virtual void generateBasis (double const &u, double const &v, double const &w, std::vector< double > &vertexBasis, std::vector< double > &edgeBasis, std::vector< double > &faceBasis, std::vector< double > &bubbleBasis)
 
virtual void generateBasis (double const &u, double const &v, double const &w, std::vector< std::vector< double > > &vertexBasis, std::vector< std::vector< double > > &edgeBasis, std::vector< std::vector< double > > &faceBasis, std::vector< std::vector< double > > &bubbleBasis, std::string typeFunction="GradH1Legendre")
 
virtual void orientEdge (int const &flagOrientation, int const &edgeNumber, std::vector< double > &edgeFunctions, const std::vector< double > &eTablePositiveFlag, const std::vector< double > &eTableNegativeFlag)
 
virtual void orientEdge (int const &flagOrientation, int const &edgeNumber, std::vector< std::vector< double > > &edgeBasis, const std::vector< std::vector< double > > &eTablePositiveFlag, const std::vector< std::vector< double > > &eTableNegativeFlag)
 
virtual void orientEdgeFunctionsForNegativeFlag (std::vector< double > &edgeFunctions)
 
virtual void orientEdgeFunctionsForNegativeFlag (std::vector< std::vector< double > > &edgeFunctions)
 
virtual void orientFace (int const &flag1, int const &flag2, int const &flag3, int const &faceNumber, const std::vector< double > &quadFaceFunctionsAllOrientation, const std::vector< double > &triFaceFunctionsAllOrientation, std::vector< double > &fTableCopy)
 
virtual void orientFace (int const &flag1, int const &flag2, int const &flag3, int const &faceNumber, const std::vector< std::vector< double > > &quadFaceFunctionsAllOrientation, const std::vector< std::vector< double > > &triFaceFunctionsAllOrientation, std::vector< std::vector< double > > &fTableCopy)
 
virtual void getKeysInfo (std::vector< int > &functionTypeInfo, std::vector< int > &orderInfo)
 
- Public Member Functions inherited from HierarchicalBasisH1
virtual ~HierarchicalBasisH1 ()=0
 
virtual void addAllOrientedFaceFunctions (double const &u, double const &v, double const &w, const std::vector< double > &faceFunctions, std::vector< double > &quadFaceFunctionsAllOrientations, std::vector< double > &triFaceFunctionsAllOrientations)
 
virtual void addAllOrientedFaceFunctions (double const &u, double const &v, double const &w, const std::vector< std::vector< double > > &faceFunctions, std::vector< std::vector< double > > &quadFaceFunctionsAllOrientations, std::vector< std::vector< double > > &triFaceFunctionsAllOrientations, std::string typeFunction="GradH1Legendre")
 
- Public Member Functions inherited from HierarchicalBasis
virtual ~HierarchicalBasis ()=0
 
int getnVertexFunction () const
 
int getnEdgeFunction () const
 
int getnTriFaceFunction () const
 
int getnQuadFaceFunction () const
 
int getnBubbleFunction () const
 
int getNumTriFace () const
 
int getNumQuadFace () const
 
int getNumEdge () const
 
int numberOrientationQuadFace (int const &flag1, int const &flag2, int const &flag3)
 
int numberOrientationTriFace (int const &flag1, int const &flag2)
 

Private Member Functions

void generateGradientBasis (double const &u, double const &v, double const &w, std::vector< std::vector< double > > &gradientVertex, std::vector< std::vector< double > > &gradientEdge, std::vector< std::vector< double > > &gradientFace, std::vector< std::vector< double > > &gradientBubble)
 
virtual void orientOneFace (double const &u, double const &v, double const &w, int const &flag1, int const &flag2, int const &flag3, int const &faceNumber, std::vector< double > &faceBasis)
 
virtual void orientOneFace (double const &u, double const &v, double const &w, int const &flag1, int const &flag2, int const &flag3, int const &faceNumber, std::vector< std::vector< double > > &faceFunctions, std::string typeFunction="GradH1Legendre")
 

Static Private Member Functions

static double _affineCoordinate (int const &j, double const &u, double const &v)
 

Private Attributes

int _pf1
 
int _pf2
 
int _pOrderEdge [4]
 

Additional Inherited Members

- Protected Attributes inherited from HierarchicalBasis
int _nvertex
 
int _nedge
 
int _nfaceQuad
 
int _nfaceTri
 
int _nVertexFunction
 
int _nEdgeFunction
 
int _nQuadFaceFunction
 
int _nTriFaceFunction
 
int _nBubbleFunction
 

Detailed Description

Definition at line 35 of file HierarchicalBasisH1Quad.h.

Constructor & Destructor Documentation

◆ HierarchicalBasisH1Quad() [1/2]

HierarchicalBasisH1Quad::HierarchicalBasisH1Quad ( int  pf1,
int  pf2,
int  pe0,
int  pe1,
int  pe2,
int  pe3 
)

Definition at line 11 of file HierarchicalBasisH1Quad.cpp.

◆ HierarchicalBasisH1Quad() [2/2]

HierarchicalBasisH1Quad::HierarchicalBasisH1Quad ( int  order)

Definition at line 37 of file HierarchicalBasisH1Quad.cpp.

◆ ~HierarchicalBasisH1Quad()

HierarchicalBasisH1Quad::~HierarchicalBasisH1Quad ( )
virtual

Definition at line 57 of file HierarchicalBasisH1Quad.cpp.

Member Function Documentation

◆ _affineCoordinate()

double HierarchicalBasisH1Quad::_affineCoordinate ( int const &  j,
double const &  u,
double const &  v 
)
staticprivate

Definition at line 64 of file HierarchicalBasisH1Quad.cpp.

Referenced by generateBasis(), and generateGradientBasis().

Here is the caller graph for this function:

◆ generateBasis() [1/2]

void HierarchicalBasisH1Quad::generateBasis ( double const &  u,
double const &  v,
double const &  w,
std::vector< double > &  vertexBasis,
std::vector< double > &  edgeBasis,
std::vector< double > &  faceBasis,
std::vector< double > &  bubbleBasis 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 76 of file HierarchicalBasisH1Quad.cpp.

Here is the call graph for this function:

◆ generateBasis() [2/2]

virtual void HierarchicalBasisH1Quad::generateBasis ( double const &  u,
double const &  v,
double const &  w,
std::vector< std::vector< double > > &  vertexBasis,
std::vector< std::vector< double > > &  edgeBasis,
std::vector< std::vector< double > > &  faceBasis,
std::vector< std::vector< double > > &  bubbleBasis,
std::string  typeFunction = "GradH1Legendre" 
)
inlinevirtual

Implements HierarchicalBasisH1.

Definition at line 50 of file HierarchicalBasisH1Quad.h.

Here is the call graph for this function:

◆ generateGradientBasis()

void HierarchicalBasisH1Quad::generateGradientBasis ( double const &  u,
double const &  v,
double const &  w,
std::vector< std::vector< double > > &  gradientVertex,
std::vector< std::vector< double > > &  gradientEdge,
std::vector< std::vector< double > > &  gradientFace,
std::vector< std::vector< double > > &  gradientBubble 
)
private

Definition at line 209 of file HierarchicalBasisH1Quad.cpp.

Referenced by generateBasis().

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

◆ getKeysInfo()

void HierarchicalBasisH1Quad::getKeysInfo ( std::vector< int > &  functionTypeInfo,
std::vector< int > &  orderInfo 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 606 of file HierarchicalBasisH1Quad.cpp.

◆ getNumberOfOrientations()

unsigned int HierarchicalBasisH1Quad::getNumberOfOrientations ( ) const
virtual

Implements HierarchicalBasis.

Definition at line 59 of file HierarchicalBasisH1Quad.cpp.

◆ orientEdge() [1/2]

void HierarchicalBasisH1Quad::orientEdge ( int const &  flagOrientation,
int const &  edgeNumber,
std::vector< double > &  edgeFunctions,
const std::vector< double > &  eTablePositiveFlag,
const std::vector< double > &  eTableNegativeFlag 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 383 of file HierarchicalBasisH1Quad.cpp.

◆ orientEdge() [2/2]

void HierarchicalBasisH1Quad::orientEdge ( int const &  flagOrientation,
int const &  edgeNumber,
std::vector< std::vector< double > > &  edgeBasis,
const std::vector< std::vector< double > > &  eTablePositiveFlag,
const std::vector< std::vector< double > > &  eTableNegativeFlag 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 411 of file HierarchicalBasisH1Quad.cpp.

◆ orientEdgeFunctionsForNegativeFlag() [1/2]

void HierarchicalBasisH1Quad::orientEdgeFunctionsForNegativeFlag ( std::vector< double > &  edgeFunctions)
virtual

Implements HierarchicalBasisH1.

Definition at line 441 of file HierarchicalBasisH1Quad.cpp.

◆ orientEdgeFunctionsForNegativeFlag() [2/2]

void HierarchicalBasisH1Quad::orientEdgeFunctionsForNegativeFlag ( std::vector< std::vector< double > > &  edgeFunctions)
virtual

Implements HierarchicalBasisH1.

Definition at line 460 of file HierarchicalBasisH1Quad.cpp.

◆ orientFace() [1/2]

void HierarchicalBasisH1Quad::orientFace ( int const &  flag1,
int const &  flag2,
int const &  flag3,
int const &  faceNumber,
const std::vector< double > &  quadFaceFunctionsAllOrientation,
const std::vector< double > &  triFaceFunctionsAllOrientation,
std::vector< double > &  fTableCopy 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 578 of file HierarchicalBasisH1Quad.cpp.

Here is the call graph for this function:

◆ orientFace() [2/2]

void HierarchicalBasisH1Quad::orientFace ( int const &  flag1,
int const &  flag2,
int const &  flag3,
int const &  faceNumber,
const std::vector< std::vector< double > > &  quadFaceFunctionsAllOrientation,
const std::vector< std::vector< double > > &  triFaceFunctionsAllOrientation,
std::vector< std::vector< double > > &  fTableCopy 
)
virtual

Implements HierarchicalBasisH1.

Definition at line 591 of file HierarchicalBasisH1Quad.cpp.

Here is the call graph for this function:

◆ orientOneFace() [1/2]

void HierarchicalBasisH1Quad::orientOneFace ( double const &  u,
double const &  v,
double const &  w,
int const &  flag1,
int const &  flag2,
int const &  flag3,
int const &  faceNumber,
std::vector< double > &  faceBasis 
)
privatevirtual

Implements HierarchicalBasisH1.

Definition at line 480 of file HierarchicalBasisH1Quad.cpp.

Here is the call graph for this function:

◆ orientOneFace() [2/2]

void HierarchicalBasisH1Quad::orientOneFace ( double const &  u,
double const &  v,
double const &  w,
int const &  flag1,
int const &  flag2,
int const &  flag3,
int const &  faceNumber,
std::vector< std::vector< double > > &  faceFunctions,
std::string  typeFunction = "GradH1Legendre" 
)
privatevirtual

Implements HierarchicalBasisH1.

Definition at line 525 of file HierarchicalBasisH1Quad.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _pf1

int HierarchicalBasisH1Quad::_pf1
private

◆ _pf2

int HierarchicalBasisH1Quad::_pf2
private

◆ _pOrderEdge

int HierarchicalBasisH1Quad::_pOrderEdge[4]
private

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