Skip to content

WIP: Build trees without particles

Xiaoyu Wei requested to merge xywei/boxtree:master into master

The main goal of this merge request is to add a BoxTree data type that, as the name suggests, models tree of boxes.

Currently, boxtree takes a set of particles and then builds the FMM tree based on it. When solving PDEs, however, one needs to first discretize the space with an FMM tree, then generate the "particles" as the quadrature nodes withing each leaf box.

BoxTree is designed in the same way as the Tree class, except that it does not contain particle information. After tree generation, QuadratureOnBoxTree can be used to generates particles for leaf boxes.

Some caveats:

  • Currently there is no adaptive tree generation, and
  • my implementation of generate_uniform_boxtree so miserably slow that it is only useful for 2D problems.
  • BoxTree and Tree classes currently share much of the data structure, so theoretically it is possible that they share the same base class. But I would like to defer that refactoring for the moment, since the current state works reasonably well with volumential and does not seem to break any existing functionality of boxtree.
Edited by Xiaoyu Wei

Merge request reports