Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “geometric search”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 19 records

ArborX: A Performance Portable Geometric Search Library

Searching for geometric objects that are close in space is a fundamental component of many applications. The performance of search algorithms comes to the forefront as the size of a problem increases both in terms of total object count as well as in the total number of search queries performed. Scientific applications requiring modern leadership-class supercomputers also pose an additional requirement of performance portability, i.e., being able to efficiently utilize a variety of hardware architectures. In this article, we introduce a new open-source C++ search library, ArborX, which we have designed for modern supercomputing architectures. Herein, we examine scalable search algorithms with a focus on performance, including a highly efficient parallel bounding volume hierarchy implementation, and propose a flexible interface making it easy to integrate with existing applications. We demonstrate the performance portability of ArborX on multi-core CPUs and GPUs and compare it to the state-of-the-art libraries such as Boost.Geometry.Index and nanoflann.

97 MATHEMATICS AND COMPUTING↗

Prediction of chlorine and fluorine crystal structures at high pressure using symmetry driven structure search with geometric constraints

The high-pressure properties of fluorine and chlorine are not yet well understood because both are highly reactive and volatile elements, which have made conducting diamond anvil cell and x-ray diffraction experiments a challenge. Here, we use ab initio methods to search for stable crystal structures of both elements at megabar pressures. We demonstrate how symmetry and geometric constraints can be combined to efficiently generate crystal structures that are composed of diatomic molecules. Furthermore, our algorithm extends the symmetry driven structure search method by adding constraints for the bond length and the number of atoms in a molecule while still maintaining generality. As a method of validation, we have tested our approach for dense hydrogen and reproduced the known molecular structures of Cmca-12 and Cmca-4. We apply our algorithm to study chlorine and fluorine in the pressure range of 10 GPa–4000 GPa while considering crystal structures with up to 40 atoms per unit cell. We predict chlorine to follow the same series of phase transformations as elemental iodine from Cmca to Immm to Fm3¯m, but at substantially higher pressures. We predict fluorine to transition from a C2/c to Cmca structure at 70 GPa, to a novel orthorhombic and metallic structure with P42/mmc symmetry at 2500 GPa, and finally to its cubic analog form with Pm3¯n symmetry at 3000 GPa.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Advances in ArborX to support exascale applications

ArborX is a performance portable geometric search library developed as part of the Exascale Computing Project (ECP). In this paper, we explore a collaboration between ArborX and a cosmological simulation code HACC. Large cosmological simulations on exascale platforms encounter a bottleneck due to the in-situ analysis requirements of halo finding, a problem of identifying dense clusters of dark matter (halos). This problem is solved by using a density-based DBSCAN clustering algorithm. With each MPI rank handling hundreds of millions of particles, it is imperative for the DBSCAN implementation to be efficient. In addition, the requirement to support exascale supercomputers from different vendors necessitates performance portability of the algorithm. We describe how this challenge problem guided ArborX development, and enhanced the performance and the scope of the library. We explore the improvements in the basic algorithms for the underlying search index to improve the performance, and describe several implementations of DBSCAN in ArborX. Further, we report the history of the changes in ArborX and their effect on the time to solve a representative benchmark problem, as well as demonstrate the real world impact on production end-to-end cosmology simulations.

97 MATHEMATICS AND COMPUTING↗

The ArborX Library: Version 2.0

This article provides an overview of the 2.0 release of the ArborX library, a performance portable geometric search library based on Kokkos. We describe the major changes in ArborX 2.0 including a new interface for the library to support a wider range of user problems, new search data structures (brute force and distributed), support for user functions to be executed on the results (callbacks), and an expanded set of the supported algorithms (ray tracing and clustering).

GPU↗

A single-tree algorithm to compute the Euclidean minimum spanning tree on GPUs

Computing the Euclidean minimum spanning tree (Emst) is a computationally demanding step of many algorithms. While work-efficient serial and multithreaded algorithms for computing Emst are known, designing an efficient GPU algorithm is challenging due to a complex branching structure, data dependencies, and load imbalances. In this paper, we propose a single-tree $Bor\mathring{u}vka$-based algorithm for computing Emst on GPUs. We use an efficient nearest neighbor algorithm and reduce the number of the required distance calculations by avoiding traversing subtrees with leaf nodes in the same component. The developed algorithms are implemented in a performance portable way using ArborX, an open-source geometric search library based on the Kokkos framework. We evaluate the proposed algorithm on various 2D and 3D datasets, show and compare it with the current state-of-the-art open-source CPU implementations. We demonstrate 4-24 × speedup over the fastest multi-threaded implementation. We prove the portability of our implementation by providing results on a variety of hardware: AMD EPYC 7763, Nvidia A100 and AMD MI250X. We show scalability of the implementation, computing Emst for 37 million 3D cosmological dataset in under a 0.5 second on a single A100 Nvidia GPU.

Prokopenko, Andrey↗

ArborX

ArborX library tackles a problem of efficiently finding geometric objects that are close in space. Variations of this problem, such as finding the nearest neighbors of a point, or finding all objects within a certain distance, are inherent components of applications in many fields. The data may be large so that solving the problem efficiently may require significant computational resources, such as multiple processors or accelerators such as general purpose GPUs. ArborX' main advantage in its ability to solve large problems efficiently utilizing a combination of distributed and on-node parallelism. ArborX can be run efficiently on a wide variety of hardware, including GPUs from different vendors, which distinguishes it from other available libraries which typically choose only few of these. The other advantage is that it supports both types of user problems: spatial problems (useful for intersections and finding objects within certain distance), and nearest neighbor problems. ArborX also supports flexible interface in its interaction with a user. Particularly, it allows a user to call user's own function on a positive match, a functionality not rarely available in other libraries. ArborX implements construction and traversal algorithms using efficient tree structures, such as bounding volume hierarchy (BVH). At its core, it uses linear BVH for its low construction cost and sufficient quality. ArborX is written using C++, and is parallelized using the message passing interface (MPI) for the distributed communication, and the Kokkos library for on-node parallelism. This approach allows ArborX to be run on a wide variety of hardware, from common laptops and desktops to supercomputers while using the same codebase. ArborX also implements several advanced algorithms using geometric search, such as density-based clustering algorithm DBSCAN.

ECP↗

Unstructured mesh methods for CFD

Mesh generation methods for Computational Fluid Dynamics (CFD) are outlined. Geometric modeling is discussed. An advancing front method is described. Flow past a two engine Falcon aeroplane is studied. An algorithm and associated data structure called the alternating digital tree, which efficiently solves the geometric searching problem is described. The computation of an initial approximation to the steady state solution of a given poblem is described. Mesh generation for transient flows is described.

Peraire, J.↗

Integrating the Science Opportunity Analyzer with a Reusable Opportunity Search Framework

In our interactions with the Science Opportunity Analyzer (SOA) software, we recognized how its ability to search for geometric events in space is a need for robotic space missions in general. To satisfy this need, we propose the Tychonis framework, which is built upon the principles of: (1) separations of concerns, (2) extensibility, (3) reusability, and (4) independent verification and validation. Tychonis’ separation of concerns results in the availability of different constructs to model geometric events and search for them. These constructs can be extended by users as needed and reused across missions without changes. Given the low coupling between concerns, and the fact Tychonis can be augmented in isolation, its constructs can be validated independently from other pieces of software. This paper elaborates on these topics and presents an integration case study between Tychonis and SOA that relies on the concept of dynamic integration. Dynamic integration entails that augmentations of the framework are reflected automatically in the host application without any changes to the host application’s code. The SOA-Tychonis integration case study can be extrapolated to other tools that need to search for geometric events as the pattern repeats across implementations: (i) the manipulation of a user interface to model opportunities, (ii) the execution of algorithms to search for opportunities, and (iii) the presentation of search results to users. Overall, Tychonis’ is a story about how the application of proven software principles and good design choices can reduce risk and cost to space missions

Soria, Manel↗

WebGeocalc: Web Interface to SPICE

The WebGeocalc tool (WGC) provides a web-based graphical user interface to many of the observation geometry calculations available from the “SPICE” system. WGC is based on client-server architecture. A user selects calculation parameters using GUI widgets in a Web browser. The request is sent to a WGC geometry server that performs the calculation and sends results back to the client. WGC can compute various geometric parameters such as positions, orientations, and surface intercept coordinates for a series of times; perform geometric event searches for time intervals when a geometric condition is met; and perform time conversions. WGC offers many features such as plotting and downloading results. Currently only the NAIF group at JPL operates a WGC server that has access to all data on the NAIF web site but WGC can be deployed on any computer that has Java, Apache Tomcat server, MySQL Community Server, and SPICE data.

Semenov, Boris↗

WebGeocalc: Web Interface to SPICE

The WebGeocalc tool (WGC) provides a web-based graphical user interface to many of the observation geometry calculations available from the “SPICE” system. WGC is based on client-server architecture. A user selects calculation parameters using GUI widgets in a Web browser. The request is sent to a WGC geometry server that performs the calculation and sends results back to the client. WGC can compute various geometric parameters such as positions, orientations, and surface intercept coordinates for a series of times; perform geometric event searches for time intervals when a geometric condition is met; and perform time conversions. WGC offers many features such as plotting and downloading results. Currently only the NAIF group at JPL operates a WGC server that has access to all data on the NAIF web site but WGC can be deployed on any computer that has Java, Apache Tomcat server, MySQL Community Server, and SPICE data.

Semenov, Boris↗

Parallel algorithm for dominant points correspondences in robot binocular stereo vision

This paper presents an algorithm to find the correspondences of points representing dominant feature in robot stereo vision. The algorithm consists of two main steps: dominant point extraction and dominant point matching. In the feature extraction phase, the algorithm utilizes the widely used Moravec Interest Operator and two other operators: the Prewitt Operator and a new operator called Gradient Angle Variance Operator. The Interest Operator in the Moravec algorithm was used to exclude featureless areas and simple edges which are oriented in the vertical, horizontal, and two diagonals. It was incorrectly detecting points on edges which are not on the four main directions (vertical, horizontal, and two diagonals). The new algorithm uses the Prewitt operator to exclude featureless areas, so that the Interest Operator is applied only on the edges to exclude simple edges and to leave interesting points. This modification speeds-up the extraction process by approximately 5 times. The Gradient Angle Variance (GAV), an operator which calculates the variance of the gradient angle in a window around the point under concern, is then applied on the interesting points to exclude the redundant ones and leave the actual dominant ones. The matching phase is performed after the extraction of the dominant points in both stereo images. The matching starts with dominant points in the left image and does a local search, looking for corresponding dominant points in the right image. The search is geometrically constrained the epipolar line of the parallel-axes stereo geometry and the maximum disparity of the application environment. If one dominant point in the right image lies in the search areas, then it is the corresponding point of the reference dominant point in the left image. A parameter provided by the GAV is thresholded and used as a rough similarity measure to select the corresponding dominant point if there is more than one point the search area. The correlation is used as a final decision tool when there is still more than one point in the search area. If there is no dominant point in the search area of if the points in the search area are below a correlation threshold, then the dominant point in the reference image is occluded and can not be corresponded. The algorithm has been modeled, implemented and shown to be fast, robust and parallel. The parallelism is created from three main features: locality of the operators; a memory optimization scheme; and the ability to fully parallelize the extraction phase which is the most computational intensive task in the algorithm. The last feature is achieved by performing the extraction phase on the two images simultaneously.

Al-Tammami, A.↗

Sandia Toolkit Manual (V.5.21.1)

This report provides documentation for the Sandia Toolkit (STK) modules. STK modules are intended to provide infrastructure that assists the development of computational engineering software such as finite-element analysis applications. STK includes modules for unstructured-mesh data structures, reading/writing mesh files, geometric proximity search, transfers, MPMD coupling support, and various other utilities. This document contains a chapter for each module, and each chapter contains overview descriptions and usage examples. Usage examples are primarily code listings which are generated from working test programs that are included in the STK code-base. A goal of this approach is to ensure that the usage examples will not fall out of date.

97 MATHEMATICS AND COMPUTING↗

Sandia Toolkit Manual Version 5.15.6

This report provides documentation for the Sandia Toolkit (STK) modules. STK modules are intended to provide infrastructure that assists the development of computational engineering software such as finite-element analysis applications. STK includes modules for unstructured-mesh data structures, reading/writing mesh files, geometric proximity search, and various utilities. This document contains a chapter for each module, and each chapter contains overview descriptions and usage examples. Usage examples are primarily code listings which are generated from working test programs that are included in the STK code-base. A goal of this approach is to ensure that the usage examples will not fall out of date.

97 MATHEMATICS AND COMPUTING↗

Conjugate point determination for multitemporal data overlay

The machine processing is discussed of spatially variant multitemporal data such as imagery obtained at different times which requires that these data be in geometrical registration so that the analysis processor may obtain the datum for a specified ground resolution element in each of the sets of imagery being utilized for analysis. Misregistration between corresponding subsets of imagery contains both a displacement and a geometrical distortion component. Search techniques utilizing the moduli of the Fourier Transforms are developed for estimating the coefficients of geometrical distortion components of this model. Following the correction of these distortion components, the displacement is located by the crosscorrelation of a template obtained from one set of data, termed the reference, with the second, or background data. This template, derived for the optimum discrimination of the reference data embedded in the background, is determined by the solution of a system of equations involving the reference data and the covariance matrix of these data.

Emmert, R. A.↗

A Search Model for Imperfectly Detected Targets

Under the assumptions that 1) the search region can be divided up into N non-overlapping sub-regions that are searched sequentially, 2) the probability of detection is unity if a sub-region is selected, and 3) no information is available to guide the search, there are two extreme case models. The search can be done perfectly, leading to a uniform distribution over the number of searches required, or the search can be done with no memory, leading to a geometric distribution for the number of searches required with a success probability of 1/N. If the probability of detection P is less than unity, but the search is done otherwise perfectly, the searcher will have to search the N regions repeatedly until detection occurs. The number of searches is thus the sum two random variables. One is N times the number of full searches (a geometric distribution with success probability P) and the other is the uniform distribution over the integers 1 to N. The first three moments of this distribution were computed, giving the mean, standard deviation, and the kurtosis of the distribution as a function of the two parameters. The model was fit to the data presented last year (Ahumada, Billington, & Kaiwi, 2 required to find a single pixel target on a simulated horizon. The model gave a good fit to the three moments for all three observers.

Ahumada, Albert↗

Optimization of contoured hypersonic scramjet inlets with a least-squares parabolized Navier-Stokes procedure

A new optimization procedure, in which a parabolized Navier-Stokes solver is coupled with a non-linear least-squares optimization algorithm, is applied to the design of a Mach 14, laminar two-dimensional hypersonic subscale flight inlet with an internal contraction ratio of 15:1 and a length-to-throat half-height ratio of 150:1. An automated numerical search of multiple geometric wall contours, which are defined by polynomical splines, results in an optimal geometry that yields the maximum total-pressure recovery for the compression process. Optimal inlet geometry is obtained for both inviscid and viscous flows, with the assumption that the gas is either calorically or thermally perfect. The analysis with a calorically perfect gas results in an optimized inviscid inlet design that is defined by two cubic splines and yields a mass-weighted total-pressure recovery of 0.787, which is a 23% improvement compared with the optimized shock-canceled two-ramp inlet design. Similarly, the design procedure obtains the optimized contour for a viscous calorically perfect gas to yield a mass-weighted total-pressure recovery value of 0.749. Additionally, an optimized contour for a viscous thermally perfect gas is obtained to yield a mass-weighted total-pressure recovery value of 0.768. The design methodology incorporates both complex fluid dynamic physics and optimal search techniques without an excessive compromise of computational speed; hence, this methodology is a practical technique that is applicable to optimal inlet design procedures.

Korte, J. J.↗

Search for Outer Satellites of Saturn to V=22.5

A wide-field, prime-focus photographic search of most of the dynamically permitted satellite space of Saturn and Uranus to limiting magnitude 22.5 revealed no new outer satellites. This search is approximately 2.5 mag deeper than previous surveys. For bodies of geometric albedo 0.04, the search would have revealed outer satellites of Saturn with diameter 20 km and greater, and outer satellites of Uranus with diameter 70 km and greater. This work was carried out with the Canada-France-Hawaii 3.6-m telescope on Mauna Kea.

Cruikshank, Dale P.↗