Internal:PDM ND

From crtc.cs.odu.edu
Jump to navigation Jump to search

Parallel Delaunay Mesher ND

Documentation

Summer 2020

  1. Read Dynamic Parallel 3D Delaunay Triangulation (PDT) ✔
  2. Read PODM3D ✔
  3. Read PODM4D ✔
  4. Read Q-HULL ND Delaunay Triangulator (TODO)

Requirements

Summer 2020

  1. Clean-up of PDT code-base
  2. Usage of modern C++20 (whatever is available for the time being)
  3. Creation of efficient predicates using PCK
  4. Replacement of boost threads with std::threads
    1. Paper: Predicate Construction Kit Paper
    2. Code: Predicate Construction Kit Code
  5. Selection of optimal Cell-location algorithm
  6. Usage of Memory Pools
  7. Replace Master-worker parallelism with speculative parallelism
  8. Implementation of Rupert's Algorithm
  9. Removal of slivers using PODM 3D/4D Heuristic method
  10. Creation of Sizing Function pointer for adaptive mesh generation
  11. Template for 2-3-4 Dimensions
  12. Decoupling of Geometry, Parallelism, and Load-Balancing with the usage of PREMA
  13. Weighted Delaunay
  14. Constrained Delaunay Triangulation
  15. Handle inputs of Points set or Images
  16. Addition of PDR for distributed computations
  17. Conform data-structures and algorithm for [https://www.scorec.rpi.edu/~shephard/FEP19/papers/Dan-Ibanez-Thesis.pdf CONFORMAL MESH ADAPTATION

ON HETEROGENEOUS SUPERCOMPUTERS]

  1. Distinguish basic meshing operations that could be changed/defined based on needs, e.g. Delaunay property could be changed to advancing-front property.
    1. Insert Operations
      1. Insert Point
      2. Insert Constrained Point
      3. Insert Point based on Image
    2. Remove Operations
      1. Remove Point
      2. Remove Constrained Point
      3. Remove Point based on Image
    3. Define rules for Mesh Generation