66 research outputs found

    A FAST ITERATIVE METHOD FOR SOLVING THE EIKONAL EQUATION ON TRIANGULATED SURFACES

    Get PDF
    This paper presents an efficient, fine-grained parallel algorithm for solving the Eikonal equation on triangular meshes. The Eikonal equation, and the broader class of Hamilton-Jacobi equations to which it belongs, have a wide range of applications from geometric optics and seismology to biological modeling and analysis of geometry and images. The ability to solve such equations accurately and efficiently provides new capabilities for exploring and visualizing parameter spaces and for solving inverse problems that rely on such equations in the forward model. Efficient solvers on state-of-the-art, parallel architectures require new algorithms that are not, in many cases, optimal, but are better suited to synchronous updates of the solution. In previous work [W. K. Jeong and R. T. Whitaker, SIAM J. Sci. Comput., 30 (2008), pp. 2512-2534], the authors proposed the fast iterative method (FIM) to efficiently solve the Eikonal equation on regular grids. In this paper we extend the fast iterative method to solve Eikonal equations efficiently on triangulated domains on the CPU and on parallel architectures, including graphics processors. We propose a new local update scheme that provides solutions of first-order accuracy for both architectures. We also propose a novel triangle-based update scheme and its corresponding data structure for efficient irregular data mapping to parallel single-instruction multiple-data (SIMD) processors. We provide detailed descriptions of the implementations on a single CPU, a multicore CPU with shared memory, and SIMD architectures with comparative results against state-of-the-art Eikonal solvers.open4

    Doctor of Philosophy

    Get PDF
    dissertationPartial differential equations (PDEs) are widely used in science and engineering to model phenomena such as sound, heat, and electrostatics. In many practical science and engineering applications, the solutions of PDEs require the tessellation of computational domains into unstructured meshes and entail computationally expensive and time-consuming processes. Therefore, efficient and fast PDE solving techniques on unstructured meshes are important in these applications. Relative to CPUs, the faster growth curves in the speed and greater power efficiency of the SIMD streaming processors, such as GPUs, have gained them an increasingly important role in the high-performance computing area. Combining suitable parallel algorithms and these streaming processors, we can develop very efficient numerical solvers of PDEs. The contributions of this dissertation are twofold: proposal of two general strategies to design efficient PDE solvers on GPUs and the specific applications of these strategies to solve different types of PDEs. Specifically, this dissertation consists of four parts. First, we describe the general strategies, the domain decomposition strategy and the hybrid gathering strategy. Next, we introduce a parallel algorithm for solving the eikonal equation on fully unstructured meshes efficiently. Third, we present the algorithms and data structures necessary to move the entire FEM pipeline to the GPU. Fourth, we propose a parallel algorithm for solving the levelset equation on fully unstructured 2D or 3D meshes or manifolds. This algorithm combines a narrowband scheme with domain decomposition for efficient levelset equation solving

    A triangulation-invariant method for anisotropic geodesic map computation on surface meshes

    Get PDF
    pre-printThis paper addresses the problem of computing the geodesic distance map from a given set of source vertices to all other vertices on a surface mesh using an anisotropic distance metric. Formulating this problem as an equivalent control theoretic problem with Hamilton-Jacobi-Bellman partial differential equations, we present a framework for computing an anisotropic geodesic map using a curvature-based speed function. An ordered upwind method (OUM)-based solver for these equations is available for unstructured planar meshes. We adopt this OUM-based solver for surface meshes and present a triangulation-invariant method for the solver. Our basic idea is to explore proximity among the vertices on a surface while locally following the characteristic direction at each vertex. We also propose two speed functions based on classical curvature tensors and show that the resulting anisotropic geodesic maps reflect surface geometry well through several experiments, including isocontour generation, offset curve computation, medial axis extraction, and ridge/valley curve extraction. Our approach facilitates surface analysis and processing by defining speed functions in an application-dependent manner

    Wall Distance Evaluation Via Eikonal Solver for RANS Applications

    Get PDF
    RÉSUMÉ Les logiciels de mécanique des fluides assistée par ordinateur (CFD) sont de plus en plus utilisés pour la conception d’aéronefs. L’utilisation de grappes informatiques haute performance permet d’augmenter la puissance de calcul, aux prix de modifier la structure du code. Dans les codes CFD, les équations de Navier-Stokes moyennées (plus connues sous le nom des équations RANS) sont souvent résolues. Par conséquent, les modèles de turbulence sont utilisés pour approximer les effets de la turbulence. Dans l’industrie aéronautique, le modèle Spalart-Allmaras est bien accepté. La distance à la paroi dans ce modèle, par exemple, joue un rôle clé dans l’évaluation des forces aérodynamiques. L’évaluation de ce paramètre géométrique doit alors être précis et son calcul efficace. Avec les nouveaux développement des hardwares, un besoin se crée dans la communauté afin d’adapter les codes CFD à ceux-ci. Les algorithmes de recherche comme les distances euclidienne et projetée sont des méthodes souvent utilisées pour le calcul de la distance à la paroi et ont tendance à présenter une mauvaise scalabilité. Pour cette raison, un nouveau solveur pour la distance à la paroi doit être développé. Pour utiliser les solveurs et techniques d’accélération déjà existantes au sein du code CFD, l’équation Eikonal, une équation aux différentielles partielles non-linéaires, a été choisie. Dans la première partie du projet, le solveur d’équation Eikonal est développé en 2D et est résolue dans sa forme advective au centre de cellule. Les méthodes des différences finies et des volumes finis sont testées. L’équation est résolue à l’aide d’une discrétisation spatiale de premier ordre en amont. Les solveurs ont été vérifiés sur des cas canoniques, tels une plaque plane et un cylindre. Les deux méthodes de discrétisation réussissent à corriger les effets de maillages obliques et courbes. La méthode des différences finies possède un taux de convergence en maillage de deuxième ordre tandis que la méthode des volumes finis a un taux de convergence de premier ordre. L’addition d’une reconstruction linéaire de la solution à la face permet d’étendre la méthode des volumes finis à une méthode de deuxième ordre. De plus, les méthodes de différence finie et de volume fini de deuxième ordre permettent de bien représenter la distance à la paroi dans les zones de fort élargissement des cellules. L’équation Eikonal est ensuite vérifié sur plusieurs cas dont un profil NACA0012 en utilisant trois modèles de turbulence : Spalart-Allmaras, Menter SST et Mener-Langtry SST transitionnel.----------ABSTRACT Computational fluid dynamics (CFD) software is being used more often nowadays in aircraft design. The use of high performance computing clusters can increase computing power, but requires change in the structure of the software. In the aeronautical industry, CFD codes are often used to solve the Reynolds-Averaged Navier-Stokes (RANS) equations, and turbulence models are frequently used to approximate turbulent effects on flow. The Spalart-Allmaras turbulence model is widely accepted in the industry. In this model, wall distance plays a key role in the evaluation of aerodynamic forces. Therefore calculation of this geometric parameter needs to be accurate and efficient. With new developments in computing hardware, there is a need to adapt CFD codes. Search algorithms such as Euclidean and projected distance are often the methods used for computation of wall distance but tend to exhibit poor scalability. For this reason, a new wall distance solver is developed here using the Eikonal equation, a non-linear partial differential equation, chosen to make use of existing solvers and acceleration techniques in RANS solvers. In the first part of the project, the Eikonal equation solver was developed in 2D and solved in its advective form at the cell center. Both finite difference and finite volume methods were tested. The Eikonal equation was also solved using a first-order upwind spatial discretization. The solvers were verified through canonical cases like a flat plate and a cylinder. Both methods were able to correct the effects of skewed and curved meshes. The finite difference method converged at a second-order rate in space while the finite volume method converged at a first-order rate. The addition of a linear reconstruction of the solution at the face extended the finite volume method to a second-order method. Moreover, both finite difference and second-order finite volume methods were well represented by wall distance in zones of strong cell growth. The finite difference method was chosen, as it required less computing time. The Eikonal equation was then verified for several cases including a NACA0012 using three turbulence models: Spalart-Allmaras, Menter’s SST and Menter-Langtry transitional SST. For the first model, the Eikonal equation was able to correct grid skewness on the turbulent viscosity as well as on the aerodynamic coefficients, while for the other two yielded results similar to Euclidean and projected distance. To verify the implementation and convergence of the multi-grid scheme, the new wall distance solver was tested on an ice-accreted airfoil. In addition, the overset grid capabilities of the wall distance solver were verified on the McDonnell Douglas airfoil. Finally, the DLR-F6, a 3D case, was solved to show that the Eikonal equation can be extended to 3D meshes

    Wall Distance Evaluation Via Eikonal Solver for RANS Applications

    Get PDF
    RÉSUMÉ Les logiciels de mécanique des fluides assistée par ordinateur (CFD) sont de plus en plus utilisés pour la conception d’aéronefs. L’utilisation de grappes informatiques haute performance permet d’augmenter la puissance de calcul, aux prix de modifier la structure du code. Dans les codes CFD, les équations de Navier-Stokes moyennées (plus connues sous le nom des équations RANS) sont souvent résolues. Par conséquent, les modèles de turbulence sont utilisés pour approximer les effets de la turbulence. Dans l’industrie aéronautique, le modèle Spalart-Allmaras est bien accepté. La distance à la paroi dans ce modèle, par exemple, joue un rôle clé dans l’évaluation des forces aérodynamiques. L’évaluation de ce paramètre géométrique doit alors être précis et son calcul efficace. Avec les nouveaux développement des hardwares, un besoin se crée dans la communauté afin d’adapter les codes CFD à ceux-ci. Les algorithmes de recherche comme les distances euclidienne et projetée sont des méthodes souvent utilisées pour le calcul de la distance à la paroi et ont tendance à présenter une mauvaise scalabilité. Pour cette raison, un nouveau solveur pour la distance à la paroi doit être développé. Pour utiliser les solveurs et techniques d’accélération déjà existantes au sein du code CFD, l’équation Eikonal, une équation aux différentielles partielles non-linéaires, a été choisie. Dans la première partie du projet, le solveur d’équation Eikonal est développé en 2D et est résolue dans sa forme advective au centre de cellule. Les méthodes des différences finies et des volumes finis sont testées. L’équation est résolue à l’aide d’une discrétisation spatiale de premier ordre en amont. Les solveurs ont été vérifiés sur des cas canoniques, tels une plaque plane et un cylindre. Les deux méthodes de discrétisation réussissent à corriger les effets de maillages obliques et courbes. La méthode des différences finies possède un taux de convergence en maillage de deuxième ordre tandis que la méthode des volumes finis a un taux de convergence de premier ordre. L’addition d’une reconstruction linéaire de la solution à la face permet d’étendre la méthode des volumes finis à une méthode de deuxième ordre. De plus, les méthodes de différence finie et de volume fini de deuxième ordre permettent de bien représenter la distance à la paroi dans les zones de fort élargissement des cellules. L’équation Eikonal est ensuite vérifié sur plusieurs cas dont un profil NACA0012 en utilisant trois modèles de turbulence : Spalart-Allmaras, Menter SST et Mener-Langtry SST transitionnel.----------ABSTRACT Computational fluid dynamics (CFD) software is being used more often nowadays in aircraft design. The use of high performance computing clusters can increase computing power, but requires change in the structure of the software. In the aeronautical industry, CFD codes are often used to solve the Reynolds-Averaged Navier-Stokes (RANS) equations, and turbulence models are frequently used to approximate turbulent effects on flow. The Spalart-Allmaras turbulence model is widely accepted in the industry. In this model, wall distance plays a key role in the evaluation of aerodynamic forces. Therefore calculation of this geometric parameter needs to be accurate and efficient. With new developments in computing hardware, there is a need to adapt CFD codes. Search algorithms such as Euclidean and projected distance are often the methods used for computation of wall distance but tend to exhibit poor scalability. For this reason, a new wall distance solver is developed here using the Eikonal equation, a non-linear partial differential equation, chosen to make use of existing solvers and acceleration techniques in RANS solvers. In the first part of the project, the Eikonal equation solver was developed in 2D and solved in its advective form at the cell center. Both finite difference and finite volume methods were tested. The Eikonal equation was also solved using a first-order upwind spatial discretization. The solvers were verified through canonical cases like a flat plate and a cylinder. Both methods were able to correct the effects of skewed and curved meshes. The finite difference method converged at a second-order rate in space while the finite volume method converged at a first-order rate. The addition of a linear reconstruction of the solution at the face extended the finite volume method to a second-order method. Moreover, both finite difference and second-order finite volume methods were well represented by wall distance in zones of strong cell growth. The finite difference method was chosen, as it required less computing time. The Eikonal equation was then verified for several cases including a NACA0012 using three turbulence models: Spalart-Allmaras, Menter’s SST and Menter-Langtry transitional SST. For the first model, the Eikonal equation was able to correct grid skewness on the turbulent viscosity as well as on the aerodynamic coefficients, while for the other two yielded results similar to Euclidean and projected distance. To verify the implementation and convergence of the multi-grid scheme, the new wall distance solver was tested on an ice-accreted airfoil. In addition, the overset grid capabilities of the wall distance solver were verified on the McDonnell Douglas airfoil. Finally, the DLR-F6, a 3D case, was solved to show that the Eikonal equation can be extended to 3D meshes

    PDE-Based Multidimensional Extrapolation of Scalar Fields over Interfaces with Kinks and High Curvatures

    Full text link
    We present a PDE-based approach for the multidimensional extrapolation of smooth scalar quantities across interfaces with kinks and regions of high curvature. Unlike the commonly used method of [2] in which normal derivatives are extrapolated, the proposed approach is based on the extrapolation and weighting of Cartesian derivatives. As a result, second- and third-order accurate extensions in the LL^\infty norm are obtained with linear and quadratic extrapolations, respectively, even in the presence of sharp geometric features. The accuracy of the method is demonstrated on a number of examples in two and three spatial dimensions and compared to the approach of [2]. The importance of accurate extrapolation near sharp geometric features is highlighted on an example of solving the diffusion equation on evolving domains.Comment: 17 pages, 13 figures, submitted to SIAM Journal of Scientific Computin

    High-Performance Fast Iterative Methods for Eikonal Equations

    Get PDF
    Department of Computer Science and EngineeringThe eikonal equation has a wide range of applications related to distances or travel time in space, such as geoscience, computer vision, image processing, path planning, and computer graphics. Recently, the research on eikonal equation solvers has focused more on developing efficient parallel algorithms to leverage the computing power of parallel systems, such as multi-core CPUs and graphics processing units (GPUs). However, only a little research literature exists for the massively parallel eikonal equation solver because of its complications related to data and work management. In this dissertation research, I introduce several-fold novel contributions to leverage the high-performance and massive computing platform for a parallel eikonal equation solver. First, I introduce a novel adaptive domain decomposition method for an efficient multi-GPU implementation of the block-based fast iterative method (FIM). The proposed method expands the sub-domain which is to be processed for each GPU by considering the fair load balancing as the iterative algorithm proceeds. It also provides a locality-aware clustering algorithm to minimize the communication overhead. With this, I solved the parallel performance problems that are often encountered in naive multi-GPU extensions that depend on regular domain decomposition, such as task load imbalance and high communication cost. In addition, it includes several optimization techniques, such as hiding the CPU cost using the CUDA multi-streams and hiding the data transfer costs between multiple GPUs. Second, I propose an efficient parallel implementation of FIM for a multi-core shared-memory system by using a lock-free local queue approach and provide an in-depth analysis of the parallel performance of the method. In addition, I propose a new parallel algorithm, Group-Ordered Fast Iterative Method (GO-FIM), that exploits the causality of grid blocks to reduce redundant computations, which was the main drawback of the original FIM. The proposed GO-FIM method uses the clustering of blocks based on the updating order where each cluster can be updated in parallel by using multi-core parallel architectures. Third, I propose a novel algorithm called Causality-Ordered Fast Iterative Method (CO-FIM), that exploits the causality dependency at a node level to reduce redundant computations. Moreover, I propose a new parallel algorithm, Causality and Group-Ordered Fast Iterative Method (CGOFIM), that integrates GO-FIM and CO-FIM. The proposed CGO-FIM determines the updating order at the block level while minimizing the redundancy calculation in the inner block by a node-level causality dependency. The CGO-FIM method has a condition for using both COFIM and FIM interchangeably in the inner block, and it is fully compatible with the lock-free local queue approach, so it can be efficiently implemented for multi-core parallel architectures.clos
    corecore