Search NASA⌕ Search

SEARCH · Search NASA

Results for “data structures”

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 145 records · Page 8

Biolink Model: A universal schema for knowledge graphs in clinical, biomedical, and translational science

Abstract Within clinical, biomedical, and translational science, an increasing number of projects are adopting graphs for knowledge representation. Graph‐based data models elucidate the interconnectedness among core biomedical concepts, enable data structures to be easily updated, and support intuitive queries, visualizations, and inference algorithms. However, knowledge discovery across these “knowledge graphs” (KGs) has remained difficult. Data set heterogeneity and complexity; the proliferation of ad hoc data formats; poor compliance with guidelines on findability, accessibility, interoperability, and reusability; and, in particular, the lack of a universally accepted, open‐access model for standardization across biomedical KGs has left the task of reconciling data sources to downstream consumers. Biolink Model is an open‐source data model that can be used to formalize the relationships between data structures in translational science. It incorporates object‐oriented classification and graph‐oriented features. The core of the model is a set of hierarchical, interconnected classes (or categories) and relationships between them (or predicates) representing biomedical entities such as gene, disease, chemical, anatomic structure, and phenotype. The model provides class and edge attributes and associations that guide how entities should relate to one another. Here, we highlight the need for a standardized data model for KGs, describe Biolink Model, and compare it with other models. We demonstrate the utility of Biolink Model in various initiatives, including the Biomedical Data Translator Consortium and the Monarch Initiative, and show how it has supported easier integration and interoperability of biomedical KGs, bringing together knowledge from multiple sources and helping to realize the goals of translational science.

60 APPLIED LIFE SCIENCES↗

RCSB Protein Data bank: Tools for visualizing and understanding biological macromolecules in 3D

Abstract Now in its 52nd year of continuous operations, the Protein Data Bank (PDB) is the premiere open‐access global archive housing three‐dimensional (3D) biomolecular structure data. It is jointly managed by the Worldwide Protein Data Bank (wwPDB) partnership. The Research Collaboratory for Structural Bioinformatics Protein Data Bank (RCSB PDB) is funded by the National Science Foundation, National Institutes of Health, and US Department of Energy and serves as the US data center for the wwPDB. RCSB PDB is also responsible for the security of PDB data in its role as wwPDB‐designated Archive Keeper. Every year, RCSB PDB serves tens of thousands of depositors of 3D macromolecular structure data (coming from macromolecular crystallography, nuclear magnetic resonance spectroscopy, electron microscopy, and micro‐electron diffraction). The RCSB PDB research‐focused web portal ( RCSB.org ) makes PDB data available at no charge and without usage restrictions to many millions of PDB data consumers around the world. The RCSB PDB training, outreach, and education web portal ( PDB101.RCSB.org ) serves nearly 700 K educators, students, and members of the public worldwide. This invited Tools Issue contribution describes how RCSB PDB (i) is organized; (ii) works with wwPDB partners to process new depositions; (iii) serves as the wwPDB‐designated Archive Keeper; (iv) enables exploration and 3D visualization of PDB data via RCSB.org ; and (v) supports training, outreach, and education via PDB101.RCSB.org . New tools and features at RCSB.org are presented using examples drawn from high‐resolution structural studies of proteins relevant to treatment of human cancers by targeting immune checkpoints.

59 BASIC BIOLOGICAL SCIENCES↗

Retrieval Augmented Generation for Robust Cyber Defense

In cybersecurity, the ability to efficiently analyze and respond to vulnerabilities, weaknesses, attack patterns, and threat tactics is critical for effective defense strategies. With the increasing complexity and volume of cybersecurity data, traditional methods of querying and retrieving information are often inadequate. To address this challenge, we implemented Retrieval-Augmented Generation (RAG) systems—CyRAG and GraphCyRAG—that integrate large language models (LLMs) with both structured data from relational databases and knowledge graphs such as Neo4j. CyRAG is designed to handle structured data, focusing on CVE (Common Vulnerabilities and Exposures) and CWE (Common Weakness Enumeration) entities to generate accurate and context-rich responses. In contrast, GraphCyRAG leverages Neo4j knowledge graphs to retrieve interconnected information from CVE, CWE, CAPEC (Common Attack Pattern Enumeration and Classification), and ATT&CK (Adversarial Tactics, Techniques, and Common Knowledge) datasets. By utilizing Neo4j’s graph-based framework, GraphCyRAG enables deeper traversal of relationships between vulnerabilities and attack patterns, providing cybersecurity analysts with more comprehensive insights into potential attack vectors and mitigation strategies. Our preliminary results demonstrate that integrating knowledge graphs with RAG significantly enhances both the accuracy and depth of threat analysis, allowing for the retrieval of dynamic, real-time data and the generation of contextually aware responses. This approach helps analysts uncover hidden relationships between cyber entities, predict exploit paths, and prioritize mitigation efforts effectively. The integration of RAG with cybersecurity knowledge graphs represents a significant advancement in cybersecurity threat intelligence, enabling more informed decision-making and stronger defense strategies.

97 MATHEMATICS AND COMPUTING↗

Cabana

Physics simulations that use particles in their algorithms are ubiquitous on modern high performance computers. Cabana is a C++ library for developing particle-based simulations on heterogeneous high performance computing platforms. Cabana provides general data structures and algorithms for common particle operations in a way that is both performant and portable on HPC systems. This includes particle data structure allocatable and configurable on GPU and CPU architectures, and threaded and distributed algorithms for sorting particles, halo exchanges, neighbor list generation, and other basic particle operations.

Slattery, StuartR↗

PaKman: Scalable Assembly of Large Genomes on Distributed Memory Machines

De novo genome assembly is a fundamental problem in the field of bioinformatics, that aims to assemble the DNA sequence of an unknown genome from numerous short DNA fragments (aka reads) obtained from it. With the advent of high-throughput sequencing technologies, billions of reads can be generated in a matter of hours, necessitating efficient parallelization of the assembly process. While multiple parallel solutions have been proposed in the past, conducting a large- scale assembly at scale remains a challenging problem because of the inherent complexities associated with data movement, and irregular access footprints of memory and I/O operations. In this paper, we present a novel algorithm, called PaKman, to address the problem of performing large-scale genome assemblies on a distributed memory parallel computer. Our approach focuses on improving performance through a combination of novel data structures and algorithmic strategies for reducing the communication and I/O footprint during the assembly process. A key aspect of our algorithm is its graph data structure, which comprises fat nodes (or what we call "macro-nodes") that reduce the communication burden during contig generation. We present an extensive performance and qualitative evaluation of our algorithm, including comparisons to other state-of-the-art parallel assemblers. Our results demonstrate the ability to achieve near-linear speedups on up to 8K cores (tested); outperform state-of-the-art distributed memory and shared memory tools in performance while delivering comparable (if not better) quality; and reduce time to solution significantly. For instance, PaKman is able to complete an assembly of the full human genome in just over a minute on 8K cores.

Ghosh, Priyanka↗

Persistent Octrees for Parallel Mesh Refinement Through Non-Volatile Byte-Addressable Memory

We report that octree-based mesh adaptation has enabled simulations of complex physical phenomena. Existing meshing algorithms were proposed with the assumption that computer memory is volatile. Consequently, for failure recovery, the in-core algorithms need to save memory states as snapshots with slow file I/Os. The out-of-core algorithms store octants on disks for persistence. However, neither of them was designed to leverage unique characteristics of non-volatile byte-addressable memory (NVBM). In this paper, we propose a novel data structure Distributed Persistent Merged octree (DPM-octree) for both meshing and in-memory storage of persistent octrees using NVBM. It is a multi-version data structure and can recover from failures using its earlier persistent version stored in NVBM. In addition, we design a feature-directed sampling approach to help dynamically transform the DPM-octree layout for reducing NVBM-induced memory write latency. DPM-octree uses parity trees which are created using erasure coding and stored in NVBM to support low-latency in-memory octant recovery after data loss. DPM-octree has been successfully integrated with Gerris software for simulation of fluid dynamics. Finally, our experimental results with real-world scientific workloads show that DPM-octree scales up to 1.1 billion mesh elements with 1000 processors on the Titan supercomputer.

97 MATHEMATICS AND COMPUTING↗

Nonconforming Mesh Refinement for High-Order Finite Elements

In this study, we propose a general algorithm for nonconforming adaptive mesh refinement (AMR) of unstructured meshes in high-order finite element codes. Our focus is on $h$-refinement with a fixed polynomial order. The algorithm handles triangular, quadrilateral, hexahedral, and prismatic meshes of arbitrarily high-order curvature, for any order finite element space in the de Rham sequence. We present a flexible data structure for meshes with hanging nodes and a general procedure to construct the conforming interpolation operator, both in serial and in parallel. The algorithm and data structure allow anisotropic refinement of tensor product elements in two and three dimensions and support unlimited refinement ratios of adjacent elements. We report numerical experiments verifying the correctness of the algorithms and perform a parallel scaling study to show that we can adapt meshes containing billions of elements and run efficiently on 393,000 parallel tasks. Finally, we illustrate the integration of dynamic AMR into a high-order Lagrangian hydrodynamics solver.

97 MATHEMATICS AND COMPUTING↗

A massively parallel and scalable multi-CPU material point method

Harnessing the power of modern multi-GPU architectures, we present a massively parallel simulation system based on the Material Point Method (MPM) for simulating physical behaviors of materials undergoing complex topological changes, self-collision, and large deformations. Our system makes three critical contributions. First, we introduce a new particle data structure that promotes coalesced memory access patterns on the GPU and eliminates the need for complex atomic operations on the memory hierarchy when writing particle data to the grid. Second, we propose a kernel fusion approach using a new Grid-to-Particles-to-Grid (G2P2G) scheme, which efficiently reduces GPU kernel launches, improves latency, and significantly reduces the amount of global memory needed to store particle data. Finally, we introduce optimized algorithmic designs that allow for efficient sparse grids in a shared memory context, enabling us to best utilize modern multi-GPU computational platforms for hybrid Lagrangian-Eulerian computational patterns. We demonstrate the effectiveness of our method with extensive benchmarks, evaluations, and dynamic simulations with elastoplasticity, granular media, and fluid dynamics. In comparisons against an open-source and heavily optimized CPU-based MPM codebase [Fang et al. 2019] on an elastic sphere colliding scene with particle counts ranging from 5 to 40 million, our GPU MPM achieves over 100x per-time-step speedup on a workstation with an Intel 8086K CPU and a single Quadro P6000 GPU, exposing exciting possibilities for future MPM simulations in computer graphics and computational science. Moreover, compared to the state-of-the-art GPU MPM method [Hu et al. 2019a], we not only achieve 2x acceleration on a single GPU but our kernel fusion strategy and Array-of-Structs-of-Array (AoSoA) data structure design also generalizes to multi-GPU systems. Our multi-GPU MPM exhibits near-perfect weak and strong scaling with 4 GPUs, enabling performant and large-scale simulations on a 10243 grid with close to 100 million particles with less than 4 minutes per frame on a single 4-GPU workstation and 134 million particles with less than 1 minute per frame on an 8-GPU workstation.

Wang, Xinlei↗

Serial-femtosecond crystallography reveals how a phytochrome variant couples chromophore and protein structural changes

The photoreaction and commensurate structural changes of a chromophore within biological photoreceptors elicit conformational transitions of the protein promoting the switch between deactivated and activated states. We investigated how this coupling is achieved in a bacterial phytochrome variant, Agp2-PAiRFP2. Contrary to classical protein crystallography, which only allows probing (cryo-trapped) stable states, we have used time-resolved serial femtosecond x-ray crystallography (tr-SFX) and pump-probe techniques with various illumination and delay times with respect to photoexcitation of the parent Pfr state. Thus, structural data for seven time frames were sorted into groups of molecular events along the reaction coordinate. They range from chromophore isomerization to the formation of Meta-F, the intermediate that precedes the functional relevant secondary structure transition of the tongue. Structural data for the early events were used to calculate the photoisomerization pathway to complement the experimental data. Late events allow identifying the molecular switch that is linked to the intramolecular proton transfer as a prerequisite for the following structural transitions.

59 BASIC BIOLOGICAL SCIENCES↗

Pressio

Reduced-order Models (ROMs). ROMs are "compressed" approximations of high-fidelity computational models. Implementing ROM methods in production codes is typically intrusive, i.e. the native codes must be adapted and modified, with individual ROM methods reimplemented in every application code. This clearly constitutes an obstacle to users who want to use ROMs. To address this, we have developed Pressio, which is a C++ header-only ROM library that can be used by an application code in a non-intrusive fashion. The main objectives behind the design of Pressio are: (a) support for general computational models (data structures, PDE types); (b) heterogeneous hardware (CPU, GPU); (c) performance; and (d) extensibility. Using metaprogramming techniques, Pressio detects and leverages the application?s native linear algebra data structures (e.g. vector and matrix) to run the ROM methods. The application only needs to expose the velocity vector and Jacobian matrix via an adapter class. Pressio checks at compile time that the target application meets the correct API. The library is structured in several modular packages including (a) non-linear least-square solvers (e.g. Gauss-Newton with and without line-search); (b) singular value decomposition (for the computation of the ROM generalized coordinates) and (c) algebraic hyper-reduction.SAND2019-5878 M

Blonigan, Patrick↗

Pressio v.1.0

Reduced-order Models (ROMs). ROMs are "compressed" approximations of high-fidelity computational models. Implementing ROM methods in production codes is typically intrusive, i.e. the native codes must be adapted and modified, with individual ROM methods reimplemented in every application code. This clearly constitutes an obstacle to users who want to use ROMs. To address this, we have developed Pressio, which is a C++ header-only ROM library that can be used by an application code in a non-intrusive fashion. The main objectives behind the design of Pressio are: (a) support for general computational models (data structures, PDE types); (b) heterogeneous hardware (CPU, GPU); (c) performance; and (d) extensibility. Using metaprogramming techniques, Pressio detects and leverages the application?s native linear algebra data structures (e.g. vector and matrix) to run the ROM methods. The application only needs to expose the velocity vector and Jacobian matrix via an adapter class. Pressio checks at compile time that the target application meets the correct API. The library is structured in several modular packages including (a) non-linear least-square solvers (e.g. Gauss-Newton with and without line-search); (b) singular value decomposition (for the computation of the ROM generalized coordinates) and (c) algebraic hyper-reduction.SAND2019-5878 M

Blonigan, Patrick↗

Bloom filter de-identifier

A bloom filter is a binary data structure that is designed to be memory efficient and able to determine whether an element is present in a set. The bloom filter is a probabilistic data structure. It can tell you whether an element, or set of elements, is likely to exist within a set. It can also tell you whether an element, or set of elements, does not exist within a set. So false positives are probable, but false negatives are not. Our novel approach utilizes the bloom filter to determine how many bigrams (two letter sequence) each value has in common. The resulting metric approximates the relative similarity of two text values.

Bleeker, Amelia↗

Control of matrix converters using machine learning

A method of controlling a matrix converter system is provided. The method includes receiving an operating condition and consulting a trained Q-data structure for reward values associated with respective switching states of the switching matrix for an operating state that corresponds to the operating condition. The Q-data structure is trained using Q-learning to map a reward value predicted for respective switching states to respective discrete operating states. The method further includes sorting the reward values predicted for the respective switching states mapped to the operating state that corresponds to the operating condition, selecting a subset of the set of the mappings as a function of a result of sorting the reward values associated with the switching states of the operating state, evaluating each switching state included in the subset, and selecting an optimal switching state for the operating condition based on a result of evaluating the switching states of the subset.

Chamie, Mahmoud El↗

pyEGAF: An open-source Python library for the Evaluated Gamma-ray Activation File

The Evaluated Gamma-ray Activation File (EGAF) is one of the most comprehensive resources for thermal neutron-capture data. This database contains data from prompt gamma activation analysis measurements carried out in a consistent manner using the same experimental configuration at the Budapest Research Reactor for 245 isotopes. Although these valuable datasets have been freely available for many years, one of the drawbacks is the outdated and cryptic Evaluated Nuclear Structure Data File (ENSDF) format that is currently adopted for dissemination, making it difficult for users unfamiliar with the format to access and utilize the data contained therein. Furthermore, the ENSDF format does not readily lend itself to modern computational technologies and a parser is required to interpret the complicated mixed-record format. To help overcome these challenges, we have developed a translator to convert the ENSDF-formatted datasets into an open standard JavaScript Object Notation (JSON) format enabling accessibility to applications using different programming languages running in different environments. To compliment this effort, we have also developed an open-source software package implemented in Python, pyEGAF, that is designed to interact with the JSON data structures for general purpose access, manipulation, and analysis of the neutron-capture $\gamma$-ray data in EGAF. The new format, together with the pyEGAF library, greatly enhances access to the wider applications community where EGAF data may be useful or is required.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

RadSim: Math, Utility & RTK

This package includes three parts, (1) gov.llnl.math, (2)gov.llnl.utility and (3)gov.llnl.rtk, which are utilized in the development of Radiation Detector Simulator (RadSim) project. RadSim is being developed to provide the capability to: (1) simulate radiation source emissions, (2) interpolate results from radiation transport tools into a common format to prepare incident flux, and (3) model radiation detector response to rapidly produce synthetic radiation measurement templates. RadSim is targeted for open-source release, which will enable researchers and industry partners to model gamma-ray detectors response to simulated flux from the transport tool of their choice. The techniques and implementation will be entirely transparent, which will allow for improvements and boutique modifications by future researchers beyond the lifespan of this specific project. The first tool of the package, gov.llnl.math, includes classes and functions to define and perform basic math operations. Some of the example features available in the package include defining statistical distributions and performing algebra and matrix operations, all of which are already accessible on publicly available software packages such as MATLAB and ROOT. The second package gov.llnl.utility includes tools commonly used to enable optimization and readability of various data structures such as Java lists and external xml files. Lastly, the gov.llnl.rtk package includes classes and functions to implement methods commonly used in radiation physics, such as data structures to represent and characterize photon spectra and tools to apply well-defined and published methods to calibrate a given spectra.

Cheung, Hoi Sing↗

Feeling the Strain: Quantifying Ligand Deformation in Photosynthesis

Structural distortion of protein-bound ligands can play a critical role in enzyme function by tuning the electronic and chemical properties of the ligand molecule. However, quantifying these effects is difficult due to the limited resolution of protein structures and the difficulty of generating accurate structural restrains for non-protein ligands. Here, we seek to quantify these effects through a statistical analysis of ligand distortion in Chlorophyll (Chl) proteins (CP), where ring deformation is thought to play a role in energy and electron transfer. To assess the accuracy of ring-deformation estimates from available structural data, we take advantage of the C 2 symmetry of Photosystem II (PSII), comparing ring-deformation estimates for equivalent sites both within and between 113 distinct X-ray and Cryogenic electron microscopy (CryoEM) PSII structures. Significantly, we find that several deformation modes exhibit considerable variability in predictions, even for equivalent monomers, down to 2 Å resolution, to an extent that probably prevents their utilization in optical calculations. We further find that refinement restrains play a critical role in determining deformation values to resolution as low as 2 Å. However, for those modes that are well-resolved in the structural data, ring deformation in PSII is strongly conserved across all species tested, from cyanobacteria to algae. Furthermore, these results highlight both the opportunities and limitations inherent in the structure-based analysis of the bioenergetic and optical properties of CPs and other protein-ligand complexes.

14 SOLAR ENERGY↗

Enabling New Flexibility in the SUNDIALS Suite of Nonlinear and Differential/Algebraic Equation Solvers

In recent years, the SUite of Nonlinear and DIfferential/ALgebraic equation Solvers (SUNDIALS) has been redesigned to better enable the use of application-specific and third-party algebraic solvers and data structures. Throughout this work, we have adhered to specific guiding principles that minimized the impact to current users while providing maximum flexibility for later evolution of solvers and data structures. The redesign was done through the addition of new linear and nonlinear solvers classes, enhancements to the vector class, and the creation of modern Fortran interfaces. The vast majority of this work has been performed “behind-the-scenes,” with minimal changes to the user interface and no reduction in solver capabilities or performance. These changes allow SUNDIALS users to more easily utilize external solver libraries and create highly customized solvers, enabling greater flexibility on extreme-scale, heterogeneous computational architectures.

97 MATHEMATICS AND COMPUTING↗

Computing water flow through complex landscapes – Part 3: Fill–Spill–Merge: flow routing in depression hierarchies

Abstract. Depressions – inwardly draining regions – are common to many landscapes. When there is sufficient moisture, depressions take the form of lakes and wetlands; otherwise, they may be dry. Hydrological flow models used in geomorphology, hydrology, planetary science, soil and water conservation, and other fields often eliminate depressions through filling or breaching; however, this can produce unrealistic results. Models that retain depressions, on the other hand, are often undesirably expensive to run. In previous work we began to address this by developing a depression hierarchy data structure to capture the full topographic complexity of depressions in a region. Here, we extend this work by presenting the Fill–Spill–Merge algorithm that utilizes our depression hierarchy data structure to rapidly process and distribute runoff. Runoff fills depressions, which then overflow and spill into their neighbors. If both a depression and its neighbor fill, they merge. We provide a detailed explanation of the algorithm and results from two sample study areas. In these case studies, the algorithm runs 90–2600 times faster (with a reduction in compute time of 2000–63 000 times) than the commonly used Jacobi iteration and produces a more accurate output. Complete, well-commented, open-source code with 97 % test coverage is available on GitHub and Zenodo.

58 GEOSCIENCES↗