PresentationPDF Available

2D & 3D Voronoi Meshes Generation with ShaPo

Authors:

Abstract and Figures

SHAPO • Cross-platform library developed in C++ - based on VTK to build Voronoi meshes from a set of generators/seeds in a closed domain • Developed at Kitware (France) for LANL since 2013 • Binding layers to use the tool in C, Fortran and Python • Works in serial or in parallel (MPI) • Use Shewchuck’s robust predicates • Self-diagnostic (of I/O) & error managemen
Content may be subject to copyright.
2D & 3D Voronoi Meshes Generation with ShaPo
J. Pouderoux, M. Charest, M. Kenamond, M. Shashkov
Kitware SAS, Lyon - France (joachim.pouderoux@kitware.com)
Los Alamos National Laboratory, Los Alamos, NM - USA
(charest@lanl.gov, kenamond@lanl.gov, shashkov@lanl.gov)
Keywords: Voronoi; Delaunay; Tessellation; Meshing; Parallelisation.
ABSTRACT
Voronoi meshes have interesting properties that are appreciated in numerous applications like geo-
physics and computational fluid dynamics.
In the context of the implementation of Reconnection-Based ALE family of methods introduced in [1] in
the FLAG code, we developed a new cross platform C++ software library called ShaPo to produce those
meshes from a domain defined by a set of non-convex multi-connected boundaries and user defined set
of generators. This tool is now used for different purposes at LANL.
Thanks to different API levels, ShaPo is accessible from different programming languages (C, Fortran
and Python). ShaPo integrates different algorithms to generate, in serial or in parallel, 2D and 3D
Voronoi meshes and it provides a complete API to retrieve the full connectivity of the generated meshes.
In this talk, we summarize the recent advances in ShaPo and present some mesh smoothing techniques
that were added recently. Description of the techniques we use to generate Voronoi tessellation in 2D
and 3D using the dual Delaunay triangulation computation are presented - see Figure 1. We also explain
the algorithm we are using to compute the tessellation in a MPI parallel context based on [2] and
establish the global mesh connectivity.
Figure 1: Left: Predicted density contours for sample ALE computation. Right: Exploded view of a 3D Clipped
Voronoi tessellation performed in parallel on 12 processors.
References
[1] R. Loub`
ere, P.-H. Maire, M. Shashkov, J. Breil and S. Galera, “ReALE: A reconnection–based arbitrary–Lagrangian-Eulerian method”,
Journal of Computational Physics, 229(12), pp. 4724–4761, 2010.
[2] D.P. Starinshak, J.M. Owen and J.N. Johnson, “A new parallel algorithm for constructing Voronoi tessellations from distributed input
data”, Computer Physics Communications, 185(12), pp. 3204–3214, 2014.
The work was carried out under the auspices of the National Nuclear Security Administration of the U.S. De-
partment of Energy at Los Alamos National Laboratory under Contract No. DE-AC52-06NA25396. The authors
gratefully acknowledge the support of the US Department of Energy National Nuclear Security Administration
Advanced Simulation and Computing (ASC) Program.
... A data structure to hold the information for this will necessarily be "ragged" since the amount of information required to be stored for each cell varies. There are few tools for building these meshes [32] because of the complexity in their construction, but they show great promise for meshing complex geometry. ...
Article
There is a need for simple, fast, and memory-efficient multi-dimensional data structures for dense and sparse storage that arise with numerical methods and in software applications. The data structures must perform equally well across multiple computer architectures, including CPUs and GPUs. For this purpose, we developed MATAR, a C++ software library that allows for simple creation and use of intricate data structures that is also portable across disparate architectures using Kokkos. The performance aspect is achieved by forcing contiguous memory layout (or as close to contiguous as possible) for multi-dimensional and multi-size dense or sparse MATrix and ARray (hence, MATAR) types. Our results show that MATAR has the capability to improve memory utilization, performance, and programmer productivity in scientific computing. This is achieved by fitting more work into the available memory, minimizing memory loads required, and by loading memory in the most efficient order. This document describes the purpose of the work, the implementation of each of the data types, and the resulting performance both in some simple baseline test cases and in an application code.
... To this effect, a robust mesh generator named PolyMesher, able to discretize arbitary 2D domains with polygonal elements, has been developed (Talischi et al. 2012b). Other efforts in developing polygonal and polyhedral meshers include the works by Abdelkader et al. (2018) and Pouderoux et al. (2017). In addition, the geometrical flexibility of polygonal finite elements also makes them attractive for mesh adaptation in topology optimization (see, e.g., Nguyen-Xuan (2017) and Hoshina et al. (2018)). ...
Article
Full-text available
We present a virtual element method (VEM)-based topology optimization framework using polyhedral elements, which allows for convenient handling of non-Cartesian design domains in three dimensions. We take full advantage of the VEM properties by creating a unified approach in which the VEM is employed in both the structural and the optimization phases. In the structural problem, the VEM is adopted to solve the three-dimensional elasticity equation. Compared to the finite element method, the VEM does not require numerical integration (when linear elements are used) and is less sensitive to degenerated elements (e.g., ones with skinny faces or small edges). In the optimization problem, we introduce a continuous approximation of material densities using the VEM basis functions. When compared to the standard element-wise constant approximation, the continuous approximation enriches the geometrical representation of structural topologies. Through two numerical examples with exact solutions, we verify the convergence and accuracy of both the VEM approximations of the displacement and material density fields. We also present several design examples involving non-Cartesian domains, demonstrating the main features of the proposed VEM-based topology optimization framework. The source code for a MATLAB implementation of the proposed work, named PolyTop3D, is available in the (electronic) Supplementary Material accompanying this publication.
... Linear field ρ(x, y , z) = x + y − 3z + 10 Cubic to unstructured mesh [2] Conservative & exact ...
Article
We present a new parallel algorithm for generating consistent Voronoi diagrams from distributed input data for the purposes of simulation and visualization. The algorithm functions by building upon any serial Voronoi tessellation algorithm. The output of such a serial tessellator is used to determine the connectivity of the distributed domains without any assumptions about how points are distributed across those domains, and then in turn to build the portion of the global tessellation local to each domain using information from that domains neighbors. The result is a generalized methodology for adding distributed capabilities to serial tessellation packages. Results from several two-dimensional tests are presented, including strong and weak scaling of its current implementation.
Article
We present a new reconnection-based arbitrary-Lagrangian–Eulerian (ALE) method. The main elements in a standard ALE simulation are an explicit Lagrangian phase in which the solution and grid are updated, a rezoning phase in which a new grid is defined, and a remapping phase in which the Lagrangian solution is transferred (conservatively interpolated) onto the new grid. In standard ALE methods the new mesh from the rezone phase is obtained by moving grid nodes without changing connectivity of the mesh. Such rezone strategy has its limitation due to the fixed topology of the mesh. In our new method we allow connectivity of the mesh to change in rezone phase, which leads to general polygonal mesh and allows to follow Lagrangian features of the mesh much better than for standard ALE methods. Rezone strategy with reconnection is based on using Voronoi tessellation. We demonstrate performance of our new method on series of numerical examples and show it superiority in comparison with standard ALE methods without reconnection.
The work was carried out under the auspices of the National Nuclear Security Administration of the U.S. Department of Energy at Los Alamos National Laboratory under Contract No. DE-AC52-06NA25396. The authors gratefully acknowledge the support of the
  • D P Starinshak
  • J M Owen
  • J N Johnson
D.P. Starinshak, J.M. Owen and J.N. Johnson, "A new parallel algorithm for constructing Voronoi tessellations from distributed input data", Computer Physics Communications, 185(12), pp. 3204-3214, 2014. The work was carried out under the auspices of the National Nuclear Security Administration of the U.S. Department of Energy at Los Alamos National Laboratory under Contract No. DE-AC52-06NA25396. The authors gratefully acknowledge the support of the US Department of Energy National Nuclear Security Administration Advanced Simulation and Computing (ASC) Program.