VM2D
1.12
Vortex methods for 2D flows simulation
|
Go to the source code of this file.
Functions | |
std::pair< Point2D, Point2D > | GetGabarit (const std::vector< Vortex2D > &vtx) |
( ) More... | |
unsigned int | ExpandBits (unsigned int v) |
unsigned int | Morton2D (const Point2D &r) |
void | RSort_Parallel (TParticleCode *m, TParticleCode *m_temp, unsigned int n, unsigned int *s) |
More... | |
size_t | BinSearch (const std::vector< std::pair< double, size_t >> ¤tNN, double x, int low, int high) |
void | newSort (std::vector< std::pair< double, size_t >> &mass, std::vector< std::pair< double, size_t >> &dstKeys) |
void | newMerge (std::vector< std::pair< double, size_t >> ¤tNN, const std::vector< std::pair< double, size_t >> &candidateNN, std::vector< size_t > &loc, std::vector< size_t > &counter, std::vector< size_t > &offset, std::vector< size_t > &counterScan, std::vector< std::pair< double, size_t >> &updateNN) |
void | mainCycle (const int k, const std::vector< Vortex2D > &vtx, const std::pair< Point2D, Point2D > &gab, const double scale, const int sdvig, std::vector< TParticleCode > &mortonCodeBoth, std::vector< unsigned int > &s, std::vector< TParticleCode > &mortonCodeBoth_temp, std::vector< TParticleCode > &mcdata, std::vector< TParticleCode > &mcquery, std::vector< unsigned int > &iq, std::vector< size_t > &initneig, std::vector< std::vector< std::pair< double, size_t >>> &initdist, double *time) |
void | WakekNN (const std::vector< Vortex2D > &vtx, const size_t k, std::vector< std::vector< std::pair< double, size_t >>> &initdist) |
Variables | |
const int | codeLength = 15 |
const int | twoPowCodeLength = (1 << codeLength) |
|
inline |
Definition at line 139 of file knnCPU.cpp.
unsigned int ExpandBits | ( | unsigned int | v | ) |
( )
Definition at line 13 of file knnCPU.cpp.
void mainCycle | ( | const int | k, |
const std::vector< Vortex2D > & | vtx, | ||
const std::pair< Point2D, Point2D > & | gab, | ||
const double | scale, | ||
const int | sdvig, | ||
std::vector< TParticleCode > & | mortonCodeBoth, | ||
std::vector< unsigned int > & | s, | ||
std::vector< TParticleCode > & | mortonCodeBoth_temp, | ||
std::vector< TParticleCode > & | mcdata, | ||
std::vector< TParticleCode > & | mcquery, | ||
std::vector< unsigned int > & | iq, | ||
std::vector< size_t > & | initneig, | ||
std::vector< std::vector< std::pair< double, size_t >>> & | initdist, | ||
double * | time | ||
) |
Definition at line 264 of file knnCPU.cpp.
unsigned int Morton2D | ( | const Point2D & | r | ) |
Definition at line 56 of file knnCPU.cpp.
void newMerge | ( | std::vector< std::pair< double, size_t >> & | currentNN, |
const std::vector< std::pair< double, size_t >> & | candidateNN, | ||
std::vector< size_t > & | loc, | ||
std::vector< size_t > & | counter, | ||
std::vector< size_t > & | offset, | ||
std::vector< size_t > & | counterScan, | ||
std::vector< std::pair< double, size_t >> & | updateNN | ||
) |
Definition at line 180 of file knnCPU.cpp.
void newSort | ( | std::vector< std::pair< double, size_t >> & | mass, |
std::vector< std::pair< double, size_t >> & | dstKeys | ||
) |
void RSort_Parallel | ( | TParticleCode * | m, |
TParticleCode * | m_temp, | ||
unsigned int | n, | ||
unsigned int * | s | ||
) |
Definition at line 66 of file knnCPU.cpp.
void WakekNN | ( | const std::vector< Vortex2D > & | vtx, |
const size_t | k, | ||
std::vector< std::vector< std::pair< double, size_t >>> & | initdist | ||
) |
Definition at line 447 of file knnCPU.cpp.
const int codeLength = 15 |
Definition at line 8 of file knnCPU.cpp.
const int twoPowCodeLength = (1 << codeLength) |
Definition at line 9 of file knnCPU.cpp.