Internal:PDM ND: Difference between revisions

From crtc.cs.odu.edu
Jump to navigation Jump to search
Spyridon97 (talk | contribs)
Spyridon97 (talk | contribs)
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
__TOC__
__TOC__


Parallel Delaunay Mesher N-D
Parallel Delaunay Mesher ND


=Documentation=
=Documentation=
Line 13: Line 13:
==Summer 2020==
==Summer 2020==
# Clean-up of PDT code-base
# Clean-up of PDT code-base
# Usage of modern C++20
# Use modern C++20 (whatever is available for the time being)
# Creation of efficient predicates using PCK
# Replace boost:threads with std::thread / std::jthread
# Replace CGAL with PCK predicates
## Paper: [https://hal.inria.fr/hal-01225202 Predicate Construction Kit Paper]
## Paper: [https://hal.inria.fr/hal-01225202 Predicate Construction Kit Paper]
## Code:  [https://gforge.inria.fr/frs/?group_id=5833 Predicate Construction Kit Code]
## Code:  [https://gforge.inria.fr/frs/?group_id=5833 Predicate Construction Kit Code]
# Template for N-Dimensions
# Select an optimal Cell-location algorithm
# Selection of optimal Cell-location algorithm
# Use of Memory Pools
# Add Memory Limit
# Replace Master-worker parallelism with speculative parallelism
# Replace Master-worker parallelism with speculative parallelism
# Implementation of Rupert's Algorithm
# Implement Rupert's Algorithm
# Removal of slivers  
# Remove slivers using PODM 3D/4D Heuristic method
## using PODM 3D/4D Heuristic method
# Create Sizing Function pointer for adaptive mesh generation
# Creation of Sizing Function for adaptive mesh generation
# Template for 2-3-4 Dimensions using PODM4D Triangulation
# Implement Weighted Delaunay
# Decoupling of Geometry, Parallelism, and Load-Balancing with the usage of PREMA
# Decoupling of Geometry, Parallelism, and Load-Balancing with the usage of PREMA
# Constrained Delaunay Triangulation
# Addition of PDR for distributed computations
# Handle inputs of Points set or Images
# Add Constrained Delaunay Triangulation
# Addition of PDR for a distributed computations
# Handle inputs of Images
# Distinguish basic meshing operations that could be changed based on needs, e.g. Delaunay property could be changed to advancing-front property.
# Conform data-structures and algorithm for [https://www.scorec.rpi.edu/~shephard/FEP19/papers/Dan-Ibanez-Thesis.pdf CONFORMAL MESH ADAPTATION ON HETEROGENEOUS SUPERCOMPUTERS]
# Distinguish basic meshing operations that could be changed/defined based on needs, e.g. Delaunay property could be changed to advancing-front property.
## Insert Operations
### Insert Point
### Insert Constrained Point
### Insert Point based on Image
## Remove Operations
### Remove Point
### Remove Constrained Point
### Remove Point based on Image
## Define rules for Mesh Generation

Latest revision as of 14:24, 25 June 2020

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. Use modern C++20 (whatever is available for the time being)
  3. Replace boost:threads with std::thread / std::jthread
  4. Replace CGAL with PCK predicates
    1. Paper: Predicate Construction Kit Paper
    2. Code: Predicate Construction Kit Code
  5. Select an optimal Cell-location algorithm
  6. Use of Memory Pools
  7. Add Memory Limit
  8. Replace Master-worker parallelism with speculative parallelism
  9. Implement Rupert's Algorithm
  10. Remove slivers using PODM 3D/4D Heuristic method
  11. Create Sizing Function pointer for adaptive mesh generation
  12. Template for 2-3-4 Dimensions using PODM4D Triangulation
  13. Implement Weighted Delaunay
  14. Decoupling of Geometry, Parallelism, and Load-Balancing with the usage of PREMA
  15. Addition of PDR for distributed computations
  16. Add Constrained Delaunay Triangulation
  17. Handle inputs of Images
  18. Conform data-structures and algorithm for CONFORMAL MESH ADAPTATION ON HETEROGENEOUS SUPERCOMPUTERS
  19. 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