mirror of
https://github.com/paboyle/Grid.git
synced 2025-08-03 13:17:06 +01:00
FOrmatting
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/*************************************************************************************
|
||||
/*************************************************************************************
|
||||
|
||||
Grid physics library, www.github.com/paboyle/Grid
|
||||
|
||||
@@ -24,8 +24,8 @@ Author: paboyle <paboyle@ph.ed.ac.uk>
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
See the full license in the file "LICENSE" in the top level distribution directory
|
||||
*************************************************************************************/
|
||||
/* END LEGAL */
|
||||
*************************************************************************************/
|
||||
/* END LEGAL */
|
||||
#ifndef GRID_LEBESGUE_H
|
||||
#define GRID_LEBESGUE_H
|
||||
|
||||
@@ -34,48 +34,48 @@ Author: paboyle <paboyle@ph.ed.ac.uk>
|
||||
// Lebesgue, Morton, Z-graph ordering assistance
|
||||
NAMESPACE_BEGIN(Grid);
|
||||
|
||||
class LebesgueOrder {
|
||||
public:
|
||||
class LebesgueOrder {
|
||||
public:
|
||||
|
||||
typedef int32_t IndexInteger;
|
||||
typedef int32_t IndexInteger;
|
||||
|
||||
static int UseLebesgueOrder;
|
||||
GridBase *grid;
|
||||
static int UseLebesgueOrder;
|
||||
GridBase *grid;
|
||||
|
||||
public:
|
||||
LebesgueOrder(GridBase *_grid);
|
||||
public:
|
||||
LebesgueOrder(GridBase *_grid);
|
||||
|
||||
inline IndexInteger Reorder(IndexInteger ss) {
|
||||
return _LebesgueReorder[ss] ;
|
||||
};
|
||||
inline IndexInteger Reorder(IndexInteger ss) {
|
||||
return _LebesgueReorder[ss] ;
|
||||
};
|
||||
|
||||
////////////////////////////
|
||||
// Space filling fractal for cache oblivious
|
||||
////////////////////////////
|
||||
void ZGraph(void);
|
||||
IndexInteger alignup(IndexInteger n);
|
||||
////////////////////////////
|
||||
// Space filling fractal for cache oblivious
|
||||
////////////////////////////
|
||||
void ZGraph(void);
|
||||
IndexInteger alignup(IndexInteger n);
|
||||
|
||||
/////////////////////////////////
|
||||
// Cartesian stencil blocking strategy
|
||||
/////////////////////////////////
|
||||
static std::vector<int> Block;
|
||||
void NoBlocking(void);
|
||||
void CartesianBlocking(void);
|
||||
void IterateO(int ND,int dim,
|
||||
std::vector<IndexInteger> & xo,
|
||||
std::vector<IndexInteger> & xi,
|
||||
std::vector<IndexInteger> &dims);
|
||||
void IterateI(int ND,int dim,
|
||||
std::vector<IndexInteger> & xo,
|
||||
std::vector<IndexInteger> & xi,
|
||||
std::vector<IndexInteger> &dims);
|
||||
/////////////////////////////////
|
||||
// Cartesian stencil blocking strategy
|
||||
/////////////////////////////////
|
||||
static std::vector<int> Block;
|
||||
void NoBlocking(void);
|
||||
void CartesianBlocking(void);
|
||||
void IterateO(int ND,int dim,
|
||||
std::vector<IndexInteger> & xo,
|
||||
std::vector<IndexInteger> & xi,
|
||||
std::vector<IndexInteger> &dims);
|
||||
void IterateI(int ND,int dim,
|
||||
std::vector<IndexInteger> & xo,
|
||||
std::vector<IndexInteger> & xi,
|
||||
std::vector<IndexInteger> &dims);
|
||||
|
||||
void ThreadInterleave(void);
|
||||
void ThreadInterleave(void);
|
||||
|
||||
private:
|
||||
std::vector<IndexInteger> _LebesgueReorder;
|
||||
private:
|
||||
std::vector<IndexInteger> _LebesgueReorder;
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
NAMESPACE_END(Grid);
|
||||
|
||||
|
Reference in New Issue
Block a user