Skip to content

Target association and refinement design

I am not happy with the current design for the target association and refinement. Both of these have a single class responsible for:

  • managing kernels
  • calling kernels
  • actual algorithmic logic.

Contrast with the FMM, where there is a splitting of these responsibilities:

  • code container manages kernels
  • wrangler calls kernels
  • logic is in drive_fmm.

I think it might be cleaner to adopt this way of doing things. This is also related to #30, because the kernels that the refiner and target associator use should have their own container.