gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
Go to the documentation of this file.
72 _data(
double vv,
int ii,
int jj = -1,
int kk = -1)
73 :
i(ii),
j(jj),
k(kk),
val(vv)
161 static void usePools(std::size_t size0, std::size_t size1);
195 void subdivide(std::vector<bezierCoeff *> &subCoeff)
const;
219 std::vector<bezierCoeff *> &subCoeff);
221 std::vector<bezierCoeff *> &vSubCoeff);
223 std::vector<bezierCoeff *> &subCoeff);
225 std::vector<bezierCoeff *> &subCoeff);
227 std::vector<bezierCoeff *> &subCoeff);
229 std::vector<bezierCoeff *> &subCoeff);
239 int starti,
int startj,
int startk,
bezierCoeff &sub);
242 return i + j * n - j * (j - 1) / 2;
247 return (n + 2) * (n + 1) * n / 6 - (n - k + 2) * (n - k + 1) * (n - k) / 6 +
248 j * (n - k) - j * (j - 1) / 2 + i;
int getDimSimplex() const
static void usePools(std::size_t size0, std::size_t size1)
int getNumColumns() const
_data(double vv, int ii, int jj=-1, int kk=-1)
void setAsProxy(const fullVector< scalar > &original, int r_start, int r)
void releaseBlock(double *block, bezierCoeff *bez)
fullVector< double > _ordered1dBezPoints
int getNumCornerCoeff() const
double getCornerCoeff(int k, int j) const
static void _copyPyr(const fullMatrix< double > &allSub, int nij, int nk, int starti, int startj, int startk, bezierCoeff &sub)
fullMatrix< double > _exponents
static void _subdivideTriangle(const bezierCoeff &coeff, int start, std::vector< bezierCoeff * > &subCoeff)
const bezierBasis * getBezierBasis() const
const fullMatrix< double > & getSamplingPointsToComputeBezierCoeff() const
double & operator()(int i)
static int _ij2Index(int i, int j, int n)
std::vector< std::vector< _data > > _raiser2
static fullMatrix< double > _sub
std::size_t _numUsedBlocks
void computeCoeff(const fullVector< double > &coeffA, const fullVector< double > &coeffB, fullVector< double > &coeffSquare) const
double & operator()(int i, int j)
static void _copyQuad(const fullMatrix< double > &allSub, int n, int starti, int startj, bezierCoeff &sub)
const bezierBasis * _basis
static void _copyHex(const fullMatrix< double > &allSub, int n, int starti, int startj, int startk, bezierCoeff &sub)
static void _subdividePyramid(const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff)
FuncSpaceData _funcSpaceData
static void _subdividePrism(const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff)
void _computeCoefficients(const double *lagCoeffData)
void subdivide(std::vector< bezierCoeff * > &subCoeff) const
static void _subdivideTet(SubdivisionTet which, int n, bezierCoeff &coeff)
static bezierCoeffMemoryPool * _pool0
static void _subdivideTetrahedron(const bezierCoeff &coeff, std::vector< bezierCoeff * > &vSubCoeff)
const FuncSpaceData _funcSpaceData
static void _subdivide(fullMatrix< double > &coeff, int npts, int start)
int getPolynomialOrder() const
void swap(double &a, double &b)
int getNumLagCoeff() const
std::vector< std::vector< _data > > _raiser3
int getIdxCornerCoeff(int i) const
void updateDataPtr(long diff)
static void _copyLine(const fullMatrix< double > &allSub, int n, int starti, bezierCoeff &sub)
void getCornerCoeffs(fullVector< double > &) const
static void _subdivideQuadrangle(const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff)
fullMatrix< double > _samplingPntsLagDomain
fullMatrix< double > _matrixLag2Bez
static bezierCoeffMemoryPool * _pool1
static int _ijk2Index(int i, int j, int k, int n)
static void _copy(const bezierCoeff &from, int start, int num, bezierCoeff &to)
std::vector< bezierCoeff * > _bezierCoeff
void setAsProxy(const fullMatrix< scalar > &original)
FuncSpaceData getFuncSpaceData() const
double * giveBlock(bezierCoeff *bez)
void _checkEnoughMemory()
double operator()(int i) const
static void releasePools()
double getCornerCoeff(int k) const
int getSpaceOrder() const
static void _subdivideHexahedron(const bezierCoeff &coeff, std::vector< bezierCoeff * > &subCoeff)
const bezierBasisRaiser * getRaiser() const
bezierBasisRaiser * _raiser
double operator()(int i, int j) const
void setMatrixAsProxy(fullMatrix< double > &m) const
bezierBasis(FuncSpaceData data)
void setVectorAsProxy(fullVector< double > &v) const
void _fillRaiserDataPyr()
std::size_t _currentIndexOfSearch
std::vector< double > _memory
bezierBasisRaiser(const bezierBasis *bezier)
void setSizeBlocks(std::size_t size)