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

#include <HierarchicalBasisHcurlQuad.h>

Inheritance diagram for HierarchicalBasisHcurlQuad:
Collaboration diagram for HierarchicalBasisHcurlQuad:

Public Member Functions

 HierarchicalBasisHcurlQuad (int order)
 
virtual ~HierarchicalBasisHcurlQuad ()
 
virtual unsigned int getNumberOfOrientations () const
 
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)
 
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< std::vector< double > > &edgeFunctions)
 
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 HierarchicalBasisHcurl
virtual ~HierarchicalBasisHcurl ()=0
 
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 orientFace (int const &flag1, int const &flag2, int const &flag3, int const &faceNumber, const std::vector< double > &quadFaceFunctionsAllOrientations, const std::vector< double > &triFaceFunctionsAllOrientations, std::vector< double > &fTableCopy)
 
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 orientEdgeFunctionsForNegativeFlag (std::vector< double > &edgeFunctions)
 
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)
 
- 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

virtual void generateHcurlBasis (double const &u, double const &v, double const &w, std::vector< std::vector< double > > &edgeBasis, std::vector< std::vector< double > > &faceBasis, std::vector< std::vector< double > > &bubbleBasis)
 
virtual void generateCurlBasis (double const &u, double const &v, double const &w, std::vector< std::vector< double > > &edgeBasis, std::vector< std::vector< double > > &faceBasis, std::vector< std::vector< double > > &bubbleBasis)
 
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)
 

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 Member Functions inherited from HierarchicalBasisHcurl
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 > &faceFunctions)
 
- 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 36 of file HierarchicalBasisHcurlQuad.h.

Constructor & Destructor Documentation

◆ HierarchicalBasisHcurlQuad()

HierarchicalBasisHcurlQuad::HierarchicalBasisHcurlQuad ( int  order)

Definition at line 11 of file HierarchicalBasisHcurlQuad.cpp.

◆ ~HierarchicalBasisHcurlQuad()

HierarchicalBasisHcurlQuad::~HierarchicalBasisHcurlQuad ( )
virtual

Definition at line 31 of file HierarchicalBasisHcurlQuad.cpp.

Member Function Documentation

◆ _affineCoordinate()

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

Definition at line 38 of file HierarchicalBasisHcurlQuad.cpp.

Referenced by generateHcurlBasis().

Here is the caller graph for this function:

◆ generateBasis()

virtual void HierarchicalBasisHcurlQuad::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 
)
inlinevirtual

Implements HierarchicalBasisHcurl.

Definition at line 41 of file HierarchicalBasisHcurlQuad.h.

Here is the call graph for this function:

◆ generateCurlBasis()

void HierarchicalBasisHcurlQuad::generateCurlBasis ( double const &  u,
double const &  v,
double const &  w,
std::vector< std::vector< double > > &  edgeBasis,
std::vector< std::vector< double > > &  faceBasis,
std::vector< std::vector< double > > &  bubbleBasis 
)
privatevirtual

Definition at line 178 of file HierarchicalBasisHcurlQuad.cpp.

Referenced by generateBasis().

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

◆ generateHcurlBasis()

void HierarchicalBasisHcurlQuad::generateHcurlBasis ( double const &  u,
double const &  v,
double const &  w,
std::vector< std::vector< double > > &  edgeBasis,
std::vector< std::vector< double > > &  faceBasis,
std::vector< std::vector< double > > &  bubbleBasis 
)
privatevirtual

Definition at line 51 of file HierarchicalBasisHcurlQuad.cpp.

Referenced by generateBasis().

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

◆ getKeysInfo()

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

Implements HierarchicalBasisHcurl.

Definition at line 391 of file HierarchicalBasisHcurlQuad.cpp.

◆ getNumberOfOrientations()

unsigned int HierarchicalBasisHcurlQuad::getNumberOfOrientations ( ) const
virtual

Implements HierarchicalBasis.

Definition at line 33 of file HierarchicalBasisHcurlQuad.cpp.

◆ orientEdge()

void HierarchicalBasisHcurlQuad::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 HierarchicalBasisHcurl.

Definition at line 126 of file HierarchicalBasisHcurlQuad.cpp.

◆ orientEdgeFunctionsForNegativeFlag()

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

Implements HierarchicalBasisHcurl.

Definition at line 157 of file HierarchicalBasisHcurlQuad.cpp.

◆ orientFace()

void HierarchicalBasisHcurlQuad::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 HierarchicalBasisHcurl.

Definition at line 376 of file HierarchicalBasisHcurlQuad.cpp.

Here is the call graph for this function:

◆ orientOneFace()

void HierarchicalBasisHcurlQuad::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 
)
privatevirtual

Implements HierarchicalBasisHcurl.

Definition at line 249 of file HierarchicalBasisHcurlQuad.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _pf1

int HierarchicalBasisHcurlQuad::_pf1
private

◆ _pf2

int HierarchicalBasisHcurlQuad::_pf2
private

◆ _pOrderEdge

int HierarchicalBasisHcurlQuad::_pOrderEdge[4]
private

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