Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Graph”

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 1,405 records · Page 78

Self-Supervised T-GCN for Detection of Disturbance and Propagation in Power Grid

Urban power systems increasingly rely on dense sensing to monitor grid reliability, yet disturbance labels are scarce and events are rare. We present a self-supervised spatio-temporal method that detects, localizes, and characterizes grid frequency disturbances across urban areas using only unlabeled data. Our approach trains a tiny Temporal Graph Convolutional Network (T-GCN) to forecast per-site frequency residuals (deviation from 60 Hz). The sensor graph is constructed directly from signals using pre-event Pearson correlation with a cross-correlation lag penalty without geocoding. At inference, node-level anomalies are the model's forecast errors; region-level alarms arise from connected components of high-score nodes. We estimate disturbance propagation by computing per-node arrival times (first persistent exceedance), then fit a planar or time-of-arrival model to obtain direction, speed, and an epicenter proxy. With only three real events collected at decisecond resolution across U.S. cities, we evaluate the T-GCN and report time-to-detect, footprint size, and propagation consistency. We further show that short-window embeddings from the T-GCN's hidden states enable few-shot event-vs-background recognition via a simple prototypical classifier. Despite minimal data and no labels, our system yields fast, spatially coherent detection and interpretable propagation maps, offering a practical, lightweight pathway to city-scale grid resilience analytics.

Niu, Haoran [ORNL] (ORCID:0000000155228297)↗

CORE-BFS: Communication-Optimized REctangular-partitioned BFS Achieving 160.845 TeraTEPS on Frontier Supercomputer

Distributed Breadth-First Search (BFS) is fundamental to many large-scale graph applications, but its performance on parallel systems is often limited by high communication overhead. This paper presents CORE-BFS, an extremely scalable GPU-based BFS implementation that introduces a unique rectangular 2D partitioning-based design for Frontier supercomputer. To further improve performance, we propose four key optimizations: (1) Rectangular 2D-partition specific data formats that use two compressed row and one compressed column status array bitmaps combined with a Double Compressed Sparse Row (DCSR) format per partition, reducing memory footprint and inter-rank traffic; (2) Adaptive frontier & communication strategy that unifies top-down and bottom-up traversal on the rectangular layout, uses lazy synchronization in top-down levels, and switches variants based on frontier size to minimize communication overhead; (3) Frontier-split degree-aware update that maps frontier vertices to thread-centric, wavefront-centric, and block-centric kernels based on their degree to improve GPU utilization and memory coalescing; (4) Row-reduction pipeline that overlaps bottom-up adjacency list processing with row-wise bitmap reduction to hide inter-rank latency. Together, these techniques increase parallelism while reducing memory and communication overhead. On the Graph500 benchmark, CORE - BFS scales up to 9,248 Frontier nodes with scale-42 graphs and reaches 160.845 TTEPS, delivering a 5.42 × speedup over our previous Frontier implementation.

Yang, Haoshen [Rutgers University]↗

Optvis

Optvis is a web application to visualize control flow graphs, call graphs, disassembly code from a binary or executable. The main use case is visualizing the compiler optimizations in binary code.

Aschwanden, PascalD.↗

MeshGraphNets

A PyTorch implementation of "Learning Mesh-based Simulation with Graph Networks" (Pfaff et al., 2021) to build and train graph neural network surrogates for CFD simulation.

Bartoldson, BrianR.↗

PolyID™ (Polymer Inverse Design) [SWR-21-98]

PolyID™ provides a framework for building, training, and predicting polymer properties using graph neural networks. The codes leverages Neural Fingerprint (nfp) (See DOE Code ID 22185) for building tensorflow-based message-passing neural networks, and Monomers to Polymers (m2p) (See DOE Code ID 44795) for building polymer structures. To understand and use the pipeline, the following examples have been provided: Building polymer structures: examples/example_generate_polymer_structures.ipynb Checking domain of validity: examples/example_determine_domain-of-validity.ipynb Training a graph neural network: examples/example_generate_and_train_models.ipynb Predicting with the trained model: examples/example_predict_with_trained_models.ipynb

Wilson, Nolan↗

Learning Planar Ising Models Software

Learning Planar Ising Models is a software package written in Matlab for learning relationships among variable in a dataset using graphical models. The software package implements a generally-applicable algorithm for learning planar Ising models from any multivariate dataset. The code provides an algorithm for learning the best planar Ising model to approximate an arbitrary collection of binary random variables (possibly from sample data). Given the set of all pairwise correlations among variables, we select a planar graph and optimal planar Ising model defined on this graph to best approximate that set of correlations. The software includes demonstrations of the algorithm in simulations and for applications on publicly available datasets. Details of the algorithm, demonstration simulations, and applications are given in Johnson, et al; 2016. Reference: Johnson, J. K., Oyen, D., Chertkov, M., and Netrapalli, P. (2016). Learning planar Ising models. Journal of Machine Learning Research.

Oyen, Diane↗

Tools for analysis of optimization models

The software is code for analyzing, debugging, and solving optimization models. The code implements several algorithms and provides convenient APIs to apply these algorithms to optimization models. The algorithms are primarily based on graph theory. They compute well-known partitions of graphs, and use these partitions to provide the user information about their optimization model, including diagnosing certain types of structural modeling errors. Some algorithms may be used as a subroutine to solve an optimization problem, and may call an optimization solver to facilitate this. Well-known linear algebra routines are called to provide further diagnostics. The software contains no data and no models other than toy models used for testing.

Parker, Robert↗

Fox Trails

1. This software utilizes python pandas to pull data from P6 databases or XER files. The software transforms the datasets into multiple main tables by joining, filtering, iteratively flattening hierarchical structured data, and pivoting datasets to give simple flat output tables. The activity table includes all of the information related to an activity including activity codes, global, EPS, and project codes, UDFs, and WBS information as separate columns. This includes the code id, code value and sequence number for all levels in hierarchical codes. The resource table is similar to the activity table and includes all of the information related to resources on activities including UPFs and resource codes. The resource time phased table takes the resource information and time phases it for the budget, forecast, late, and actual dates/units/costs that closely matches P6's user interface's values as it implements the resource curve and calendars. The wbs table contains the WBS structure broken out by levels and includes UDFs, codes, and notebook topics. The final P6 data table is the relationships table which simply contains the relationships. 2. When a user updates the tool with data (via giving it P6 project names with database username/password information or XER files) the system creates the data in #1, then creates a networkx graph with the activity data imbedded in the node data and the relationships added as edges. Each edge also has it's float calculated (working time distance between the predecessor and successor) and attached to the edge. Activities are also tagged as a potential start of a path based on their constraints, constraint dates, remaining start date, and activity status. When a user enters an activity ID into the UI, it runs a shortest path calculation on the network graph between each node tagged as potential start to the entered activity id based on the float tagged on the edge. Each path returned by the algorithm contains all of the nodes on the path in order, as well as the total float of the edges that make the path. This data is then collected and returned to the user in the form of a gantt chart with groupings for each path that includes the total float for each group. 3. Similar to 2, if the user passes through a reference dataset each activity set in the path is checked to see if it had a path in the reference dataset, if that path was the primary path between the start and end activities, and what has changed regarding logic and durations. These changes are color coded and summarized before sent to the user to be displayed by the UI for simple discovery. 4. Utilizing the data from #1, the user can submit desired grouping code(s) and filters to the system. The system will then pull the activities, resources, and relationships and create a gantt chart based on the groupings sent and filtered based on the filters sent. 5. The system will produce a gantt chart in a similar method to #4, but allows interactivity with the data. As the user interacts with the gantt chart, the software captures the changes and stores it with the user making the change so that project controls and implement those changes in P6.

Fox, Ben↗

pnnl/galas

Codebase for analyzing large atomistic simulation results using graph analytics. Analysis of large molecular simulations is difficult due to size and memory constrains in commonly used analysis software. This code was developed to analyze an ~8 million atom polycrystalline Al system under shear, with a particular emphasis on identifying defect structures. This code applies graph theory to reduce the system to components of interest and applies associated algorithms to characterize these components.

Pope, Jenna (Bilbrey)↗

pnnl/NWGraph

NWGraph aims to fill the role of a reusable library of generic graph algorithms for C++, similar to the algorithms available in the standard template library (STL) in C++. The library draws lessons learned from Boost Graph Library (BGL) and other libraries (PBGL, Galois, Gunrock, GraphX etc.), the evolution of the C++ language, and the evolution of C++ practice over the last 20 years.

Lumsdaine, Andrew↗

pnnl/graph_merge

A novel method for pairwise graph comparison that includes both the graph structure and applicable metadata. The resulting visual component allows a greater and more interpretable understanding of the comparison than current methods

Dennis, Douglas [Pacific Northwest National Labora↗

Collection And Analysis Of Telemetry For The Cyote Heuristic

CATCH CLI focuses on gathering telemetry data, storing it in the Neo4j database, querying for Mitre ATT&CK patterns, and creating STIX 2.1 reports. Key Components: Analysis Modules: Analyze data to detect attack patterns. GoSTOTS Collection Engines: Collect telemetry data. These tools can be used together or individually. Analysis modules rely on data from specific engines to identify attack patterns. Source Code Organization: Engines: CATCH/catch/cmd/collection Modules: CATCH/catch/cmd/analysis CGUI Overview CATCH Graphical User Interface (CGUI) offers a graphical shell to execute CATCH CLI, allowing easy editing of: Analysis Modules Database configurations Profiles (collection and device settings) Neo4j Overview Neo4j is a graph database using the Cypher query language, storing data in JSON. It seamlessly integrates with STIX 2.1 data for: Data Submission: CATCH Collection Engines Data Querying: Analysis Modules CATCH modifies STIX 2.1 data for Neo4j submission and reverts it back during querying. STIG Overview Structured Threat Intelligence Graph (STIG) is a tool for creating, editing, querying, analyzing, and visualizing threat intelligence using STIX 2.1 and storing data in Neo4j. Usage Tools can be run: Manually (CLI): Refer to CATCH documentation User Interface: Run ./cgui/CGUI or go run ./cgui/ Additional Information Logging System: Detailed in the config documentation Further Documentation: Available for CATCH and CGUI

Madsen, MichaelJ. [Idaho National Laboratory (INL)↗

pnnl/glad

The Graph-based Learning of Aerosol Dynamics (GLAD) package implements a Graph Network-based Simulator (GNS), a machine learning framework that has been used to simulate particle-based fluid dynamics models

Smith, Ian [@pnnl]↗

PyTrac

SAND2025-00635O PyTrac is a software tool that analyzes and visualizes PTRAC event files generated by MCNP 6.3. It converts these files into a graph network that makes it easier to interpret individual histories. The software includes command line tools for viewing the graph data structure in both 2D and 3D formats. PyTrac also integrates with MCNP to run simulations and manage data files. This provides a streamlined approach to analyzing and understanding the complex data generated by MCNP simulations. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Nowack, Aaron [Sandia National Lab. (SNL-CA), Live↗

FAIR to WISE (F2W) v1.0.0

FAIR to WISE (F2W) is an iterative, large-language model (LLM) driven pipeline that turns unstructured research PDFs into structured, queryable knowledge graphs (KGs). Core features include schema-driven extraction to a LinkML model; full provenance capture; ontology-grounded enrichment (e.g., chemical validation and ChEBI lookup); graph construction to JSON-LD with stable IDs; and KG-RAG question answering with evidence-aware retrieval. The system is engineered for reproducibility and accessibility (open-source Ollama models, temperature=0, NVTX/Nsight profiling) with robust QA (relation verification, deduplication, and deterministic outputs). Primary uses are literature-to-KG automation, knowledge-grounded Q&A, and experimental steering support. We demonstrate the approach in organic photovoltaics, where the pipeline ingests papers, builds a domain KG, and evaluates answers against expert competency questions to guide experimental planning and interpretation. Compared with off-the-shelf LLMs and ad-hoc NLP tools, F2W addresses ontology gaps and reduces hallucination risk by grounding responses in extracted evidence and enforcing schema constraints; it also offers deterministic, provenance-linked outputs and open, cost-aware deployment. Evidence-aware ranking further improves answer quality over pure vector search.

Abramov, David [Lawrence Berkeley National Laborat↗

powersqueeze

powersqueeze (psqz) is a truncated power iteration library intended for high-performance computing platforms. psqz efficiently produces low-dimensional, linear measurements of graph matrix spectra by combining classical power iteration with sparse Johnson-Lindenstrauss transforms. psqz is intended to produce high-quality, fast, data-oblivious low-dimensional representations of high-dimensional sparse data such as graphs and term-document matrices. psqz is intended to replace similar workflows that depend on directly approximating a truncated eigendecomposition (e.g., the first step of spectral clustering), which is a much more expensive operation.

Priest, BenjaminW [Lawrence Livermore National Lab↗

ORCHA: A performance portability system for extreme heterogeneity

Heterogeneity is the prevalent trend in the rapidly evolving high-performance computing (HPC) landscape in both hardware and application software. The diversity in hardware platforms, currently comprising various accelerators and a future possibility of specializable chiplets, poses a significant challenge for scientific software developers aiming to harness optimal performance across different computing platforms while maintaining the quality of solutions when their applications are simultaneously growing more complex. Code synthesis and code generation can provide mechanisms to mitigate this challenge. We have developed a divide and conquer approach where different aspects of performance are handled by different stand-alone tools that are interfaced with the application through generated code. This portability system, ORCHA, enables users to configure and orchestrate their computations among available resources on a platform by specifying a high-level recipe, thereby permitting a many-to-many paradigm where each recipe results in a different variant of the application. The core design goal is to let users decide the application’s hardware mapping and orchestration by editing only the high-level recipe—without modifying the maintained source code or binding the application to a particular runtime system. Tools in ORCHA distribution are: CG-Kit for translating the recipe into an execution graph; Milhoja to execute the graph by orchestrating data and task movement among hardware resources; and Macroprocessor that enables users to define their own code-shorthand for higher composability and easier management of code variants. Additionally, the design of ORCHA permits tools to work in a plug-and-play mode where the application can build and run without CG-Kit and Milhoja, and either tool can be swapped out for other tools with similar capabilities by modifying the code generation portion of ORCHA. In this paper, we describe the design of ORCHA and the role that code-generation plays in isolating applications from tools. We demonstrate the breadth of configurations ORCHA enables with a case study in which an application configuration is realized on three distinct hardware mappings—a GPU-centric, a CPU/GPU balanced, and a CPU/GPU concurrent layouts by using different recipes.

Lee, Youngjun↗

Nanoparticle self-assemblies with modern complexity

Thanks to decades of tireless efforts, nanoparticle assemblies have reached at an extremely high level of controllability, sophistication, and complexity, with new insights provided by integration with graph theory, cutting-edge characterization, and machine learning (ML)-based computation and modeling, as well as with ever-diversifying applications in energy, catalysis, biomedicine, optics, electronics, magnetics, organic biosynthesis, and quantum technology. Nanoparticle assemblies can be crystalline, known as superlattices or supracrystals. Their assembly entails a transition from disorder—dispersed nanoparticles—to order, which can be achieved through classical nucleation pathways or nonclassical pathways via prenucleation precursors or particle aggregation. Further, the periodic lattices allow facile manipulations of electrons, phonons, photons, and even spins, leading to advanced device components and metamaterials. Meanwhile, aperiodic assemblies out of nanoparticles, such as gels, networks, and amorphous solids, also start to attract attentions. Despite the loss of periodicity, symmetry-lowering or symmetry-breaking three-dimensional (3D) structures emerge with unique properties, such as chiroptical activity, topological mechanical strength, and quantum entanglement. Real-space imaging such as electron microscopy and X-ray based tomography methods are utilized to characterize these complex structures, while mathematical tools such as graph theories are in need to describe such complex structures. This issue aims to provide a timely review of the efforts in this greatly broadened materials design space including experiment, simulation, theory, and applications. Nine top experts (and their teams) from four countries deliver six review papers, summarizing fundamental mechanistic understandings of nanoparticle assemblies, highlighted with the developments of state-of-the-art in situ characterization tools and ML-assisted reverse engineering, and newly emergent applications of nanoarchitectures.

36 MATERIALS SCIENCE↗