|
gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
#include <bezierBasis.h>

Public Member Functions | |
| bezierCoeff () | |
| bezierCoeff (const bezierCoeff &other, bool swap=false) | |
| bezierCoeff (const FuncSpaceData fsData, const fullVector< double > &orderedLagCoeff, int numOfPool=-1) | |
| bezierCoeff (const FuncSpaceData fsData, const fullMatrix< double > &orderedLagCoeff, int numOfPool=-1) | |
| ~bezierCoeff () | |
| void | updateDataPtr (long diff) |
| int | getPolynomialOrder () const |
| int | getNumCoeff () const |
| int | getNumColumns () const |
| int | getNumCornerCoeff () const |
| int | getIdxCornerCoeff (int i) const |
| double | getCornerCoeff (int k) const |
| double | getCornerCoeff (int k, int j) const |
| void | getCornerCoeffs (fullVector< double > &) const |
| void | getCornerCoeffs (fullMatrix< double > &) const |
| double * | getDataPtr () |
| const bezierBasis * | getBezierBasis () const |
| void | setMatrixAsProxy (fullMatrix< double > &m) const |
| void | setVectorAsProxy (fullVector< double > &v) const |
| void | subdivide (std::vector< bezierCoeff * > &subCoeff) const |
| double | operator() (int i) const |
| double | operator() (int i, int j) const |
| double & | operator() (int i) |
| double & | operator() (int i, int j) |
Static Public Member Functions | |
| static void | usePools (std::size_t size0, std::size_t size1) |
| static void | releasePools () |
Private Types | |
| enum | SubdivisionTet { subdivU, subdivV, subdivW, node0CrossEdge12, node3CrossEdge12, node1CrossEdge03, node2CrossEdge03 } |
Private Member Functions | |
| void | _computeCoefficients (const double *lagCoeffData) |
Static Private Member Functions | |
| static void | _subdivideTet (SubdivisionTet which, int n, bezierCoeff &coeff) |
| static void | _subdivide (fullMatrix< double > &coeff, int npts, int start) |
| static void | _subdivide (fullMatrix< double > &coeff, int npts, int start, int inc) |
| static void | _subdivideTriangle (const bezierCoeff &coeff, int start, std::vector< bezierCoeff * > &subCoeff) |
| static void | _subdivideTetrahedron (const bezierCoeff &coeff, std::vector< bezierCoeff * > &vSubCoeff) |
| static void | _subdivideQuadrangle (const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff) |
| static void | _subdivideHexahedron (const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff) |
| static void | _subdividePrism (const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff) |
| static void | _subdividePyramid (const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff) |
| static void | _copy (const bezierCoeff &from, int start, int num, bezierCoeff &to) |
| static void | _copyLine (const fullMatrix< double > &allSub, int n, int starti, bezierCoeff &sub) |
| static void | _copyQuad (const fullMatrix< double > &allSub, int n, int starti, int startj, bezierCoeff &sub) |
| static void | _copyHex (const fullMatrix< double > &allSub, int n, int starti, int startj, int startk, bezierCoeff &sub) |
| static void | _copyPyr (const fullMatrix< double > &allSub, int nij, int nk, int starti, int startj, int startk, bezierCoeff &sub) |
| static int | _ij2Index (int i, int j, int n) |
| static int | _ijk2Index (int i, int j, int k, int n) |
Private Attributes | |
| int | _numPool |
| FuncSpaceData | _funcSpaceData |
| const bezierBasis * | _basis |
| int | _r |
| int | _c |
| double * | _data |
| bool | _ownData |
Static Private Attributes | |
| static bezierCoeffMemoryPool * | _pool0 = nullptr |
| static bezierCoeffMemoryPool * | _pool1 = nullptr |
| static fullMatrix< double > | _sub = fullMatrix<double>() |
Definition at line 127 of file bezierBasis.h.
|
private |
| Enumerator | |
|---|---|
| subdivU | |
| subdivV | |
| subdivW | |
| node0CrossEdge12 | |
| node3CrossEdge12 | |
| node1CrossEdge03 | |
| node2CrossEdge03 | |
Definition at line 204 of file bezierBasis.h.
|
inline |
Definition at line 145 of file bezierBasis.h.
| bezierCoeff::bezierCoeff | ( | const bezierCoeff & | other, |
| bool | swap = false |
||
| ) |
| bezierCoeff::bezierCoeff | ( | const FuncSpaceData | fsData, |
| const fullVector< double > & | orderedLagCoeff, | ||
| int | numOfPool = -1 |
||
| ) |
| bezierCoeff::bezierCoeff | ( | const FuncSpaceData | fsData, |
| const fullMatrix< double > & | orderedLagCoeff, | ||
| int | numOfPool = -1 |
||
| ) |
| bezierCoeff::~bezierCoeff | ( | ) |
|
private |
Definition at line 738 of file bezierBasis.cpp.
Referenced by bezierCoeff().


|
staticprivate |
Definition at line 1389 of file bezierBasis.cpp.
Referenced by _subdivideTetrahedron(), and _subdivideTriangle().

|
staticprivate |
Definition at line 1421 of file bezierBasis.cpp.
Referenced by _subdivideHexahedron().


|
staticprivate |
Definition at line 1398 of file bezierBasis.cpp.
Referenced by _subdividePrism().


|
staticprivate |
Definition at line 1437 of file bezierBasis.cpp.
Referenced by _subdividePyramid().


|
staticprivate |
Definition at line 1407 of file bezierBasis.cpp.
Referenced by _subdivideQuadrangle().


|
inlinestaticprivate |
Definition at line 240 of file bezierBasis.h.
Referenced by _subdivideTriangle().

|
inlinestaticprivate |
Definition at line 244 of file bezierBasis.h.
Referenced by _subdivideTet().

|
staticprivate |
Definition at line 973 of file bezierBasis.cpp.
Referenced by _subdivideHexahedron(), _subdividePrism(), _subdividePyramid(), and _subdivideQuadrangle().


|
staticprivate |
|
staticprivate |
Definition at line 1272 of file bezierBasis.cpp.
Referenced by subdivide().


|
staticprivate |
Definition at line 1308 of file bezierBasis.cpp.
Referenced by subdivide().


|
staticprivate |
Definition at line 1344 of file bezierBasis.cpp.
Referenced by subdivide().


|
staticprivate |
Definition at line 1249 of file bezierBasis.cpp.
Referenced by subdivide().


|
staticprivate |
Definition at line 1086 of file bezierBasis.cpp.
Referenced by _subdivideTetrahedron().


|
staticprivate |
Definition at line 1206 of file bezierBasis.cpp.
Referenced by subdivide().


|
staticprivate |
Definition at line 1001 of file bezierBasis.cpp.
Referenced by _subdividePrism(), and subdivide().


|
inline |
Definition at line 184 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataIGE::_computeLowerBound(), and jacobianBasedQuality::_coeffDataICN::_computeLowerBound().

|
inline |
Definition at line 173 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataJac::_coeffDataJac(), and getCornerCoeffs().


|
inline |
| void bezierCoeff::getCornerCoeffs | ( | fullMatrix< double > & | m | ) | const |
| void bezierCoeff::getCornerCoeffs | ( | fullVector< double > & | v | ) | const |
Definition at line 921 of file bezierBasis.cpp.
Referenced by jacobianBasedQuality::_coeffDataIGE::_computeAtCorner(), and jacobianBasedQuality::_coeffDataICN::_computeAtCorner().


|
inline |
Definition at line 183 of file bezierBasis.h.
Referenced by MElement::idealJacRange(), and MElement::scaledJacRange().

| int bezierCoeff::getIdxCornerCoeff | ( | int | i | ) | const |
Definition at line 846 of file bezierBasis.cpp.
Referenced by getCornerCoeff(), and getCornerCoeffs().


|
inline |
Definition at line 169 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataJac::_coeffDataJac(), MElement::idealJacRange(), MElementBB(), and MElement::scaledJacRange().

|
inline |
Definition at line 170 of file bezierBasis.h.
Referenced by _subdivideTet().

|
inline |
Definition at line 171 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataJac::_coeffDataJac(), and getCornerCoeffs().


|
inline |
Definition at line 165 of file bezierBasis.h.
Referenced by _subdivideHexahedron(), _subdividePrism(), _subdivideQuadrangle(), _subdivideTetrahedron(), and _subdivideTriangle().


|
inline |
Definition at line 200 of file bezierBasis.h.
|
inline |
Definition at line 197 of file bezierBasis.h.
|
inline |
Definition at line 201 of file bezierBasis.h.
|
inline |
Definition at line 198 of file bezierBasis.h.
|
static |
Definition at line 830 of file bezierBasis.cpp.
|
inline |
Definition at line 186 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataIGE::_computeLowerBound(), and jacobianBasedQuality::_coeffDataICN::_computeLowerBound().


|
inline |
Definition at line 190 of file bezierBasis.h.
Referenced by jacobianBasedQuality::_coeffDataIGE::_computeLowerBound(), and jacobianBasedQuality::_coeffDataICN::_computeLowerBound().


| void bezierCoeff::subdivide | ( | std::vector< bezierCoeff * > & | subCoeff | ) | const |
Definition at line 938 of file bezierBasis.cpp.
Referenced by jacobianBasedQuality::_coeffDataJac::getSubCoeff(), jacobianBasedQuality::_coeffDataIGE::getSubCoeff(), and jacobianBasedQuality::_coeffDataICN::getSubCoeff().


| void bezierCoeff::updateDataPtr | ( | long | diff | ) |
|
static |
Definition at line 818 of file bezierBasis.cpp.
Referenced by jacobianBasedQuality::minICNMeasure(), jacobianBasedQuality::minIGEMeasure(), and jacobianBasedQuality::minMaxJacobianDeterminant().


|
private |
Definition at line 131 of file bezierBasis.h.
Referenced by _computeCoefficients(), bezierCoeff(), getBezierBasis(), and getNumCornerCoeff().
|
private |
Definition at line 132 of file bezierBasis.h.
Referenced by _computeCoefficients(), _copy(), _subdivideHexahedron(), _subdividePrism(), _subdividePyramid(), _subdivideQuadrangle(), _subdivideTriangle(), bezierCoeff(), getCornerCoeffs(), getNumColumns(), and setMatrixAsProxy().
|
private |
Definition at line 133 of file bezierBasis.h.
Referenced by _computeCoefficients(), bezierCoeff(), getCornerCoeff(), getCornerCoeffs(), getDataPtr(), operator()(), setMatrixAsProxy(), setVectorAsProxy(), updateDataPtr(), and ~bezierCoeff().
|
private |
Definition at line 130 of file bezierBasis.h.
Referenced by _computeCoefficients(), _subdividePyramid(), bezierCoeff(), getIdxCornerCoeff(), getPolynomialOrder(), and subdivide().
|
private |
Definition at line 129 of file bezierBasis.h.
Referenced by bezierCoeff(), and ~bezierCoeff().
|
private |
Definition at line 134 of file bezierBasis.h.
Referenced by bezierCoeff(), updateDataPtr(), and ~bezierCoeff().
|
staticprivate |
Definition at line 136 of file bezierBasis.h.
Referenced by bezierCoeff(), releasePools(), usePools(), and ~bezierCoeff().
|
staticprivate |
Definition at line 137 of file bezierBasis.h.
Referenced by bezierCoeff(), releasePools(), usePools(), and ~bezierCoeff().
|
private |
Definition at line 132 of file bezierBasis.h.
Referenced by _computeCoefficients(), bezierCoeff(), getCornerCoeff(), getCornerCoeffs(), getIdxCornerCoeff(), getNumCoeff(), operator()(), setMatrixAsProxy(), and setVectorAsProxy().
|
staticprivate |
Definition at line 138 of file bezierBasis.h.
Referenced by _subdivideHexahedron(), _subdividePrism(), _subdividePyramid(), and _subdivideQuadrangle().