如何"linearize"树结构?

How to "linearize" a tree structure?

本文关键字:结构 linearize 如何      更新时间:2023-10-16

我有这样的树结构:

struct TetrahedronStruct {
  int index;
  int region;
  TriangleFaces Faces[4];
  Vertex Vertices[4];
  struct TetrahedronStruct *adjTetrahedrons[4];
};
typedef struct {
  long double Nx, Ny, Nz;
  long double d;
  Vertex V[3];
} TriangleFaces;
typedef struct {
  long double x, y, z;
} Vertex;

如何将树弄平到线性内存数组以复制到cuda设备内存?

您创建一个四面体结构的数组,root是第一个元素,索引0。

对于索引i,孩子们位于 4 * i + j,j处于[0..4]

范围内