palsbos为了节省内存,通过BlockXD(Block2D和Block3D)存储着2D或者3D的数组(或矩阵)数据。
BlockXD结构是在不同应用下专门出现的,比如说专门在格子里存储一种特定的数据。为了存储LB模拟的粒子团或者其他变量比如外力,你可以用BlockLattice来替换Block。
BlockXD分别有以下几种作用,
1规定数据在block中的储存类型
1.1用于储存碰撞粒子团体的变量或者一些粒子团体的外力变量,通常用BlockLattice
1.2为了储存一些空间场变量,使用ScalarFieldXD
1.3为了储存一些张量场和向量场,使用TensorFieldXD
2用于规定数据数据结构
2.1 AtomicBlockXD数据结构本质上代表一个常规的数据数组
2.2 MultiBlockXD 是一个复杂的数据结构,被更小的AtomicBlockXD部分或者完全代替
2.3 MultiBlockXD和AtomicBlockXD实际上具有相同的用户界面,建议您在最终用户应用程序中系统地使用更通用的MultiBlockXD。它和AtomicBlockXD在用于规则问题时效率一致,但是在不规则时容易并行