Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “application programming interfaces”

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 163 records · Page 9

NREL's REopt Lite Tool - Open Source

REopt Lite can be accessed via the web tool, application programming interface (API), or open source code. The open source code allows users to add custom features and capabilities.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗

Livewire Data Platform - A Solution for Energy Efficient Mobility Systems (EEMS) Data Sharing

The Livewire Data Platform is a data storage and exchange platform. It provides: a platform, allowing data sharing and discovery by linking disparate data sources to a single website via application programming interfaces (APIs); a community, building partnerships and collaboration rather than competition; a system, allowing shared data to increase in size and complexity as EEMS evolves.

47 OTHER INSTRUMENTATION↗

DER Planning with Resilience Analysis Using REopt Lite: A Behind-the-Meter Techno-Economic Analysis Tool

REopt Lite is a techno-economic decision support model for behind-the-meter energy systems design and dispatch modeling. REopt Lite is used to optimize energy systems for buildings, campuses, communities, and microgrids. It is based on a Mixed Integer Linear Programming (MILP) optimization model. It is a fully automated and streamlined energy modeling tool that can be used off-the-shelf for a wide variety of distributed generation integration analyses and at the same time is architected to be extensible for user-specific customizations for advanced users and subject matter experts. It is publicly available as a webtool as well as has an Application Programming Interface (API). The API functionality enables programmatic access to the model facilitating smooth integration with other distribution systems modeling tools, and automated multiple scenarios/sensitivity studies.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Studying Performance Portability of LAMMPS across Diverse GPU-based Platforms

The molecular dynamics simulation software, LAMMPS, utilizes the Kokkos acceleration library to port computation to a diverse set of architectures including those based on GPU accelerators. In addition to Kokkos, LAMMPS contains a vast code base that leverages the CUDA application programming interface using library functions such as cuFFT, CUDA’s fast-fourier transform (FFT) library, and, more recently, also support for AMD’s Heterogeneous Interface for Portability (HIP) that is rapidly growing. While preparing LAMMPS tests for the AMD GPU-based test system precursors to Frontier, we investigated several strategies for accelerating LAMMPS on AMD GPUs, using the AMD Instinct MI100 and MI250X. In this work, we integrated the HIP FFT library, hipFFT, into the particle-particle particle-mesh (PPPM) long-range solver, which allowed the porting of PPPM calculations to the GPUs. Kokkos behavior on the MI100 and MI250X was also investigated through the package kokkos command of LAMMPS, targeting com- munication, memory usage, and particle grid decomposition. The Tersoff, Reax, Lennard-Jones (LJ), EAM, Granular, and PPPM potentials were investigated in this effort, and results from these experiments are provided. The selected potentials were run on Spock (AMD Instinct MI100), Crusher (AMD Instinct MI250X), AFW HPC11 (NVIDIA A100) and Summit (NVIDIA V100), for comparison. Operational roofline models were constructed and analyzed for the Tersoff, Reax, and Lennard-Jones potentials on Crusher and Summit.

Hagerty, Nick↗

A Tool Kit for Generating Simulated Radiation Measurements for Advanced Reactor Safeguards and Security

A tool kit was developed to simulate and analyze passive radiation measurements of molten salt reactor (MSR) operations to support development of nuclear safeguards approaches for this emerging reactor technology. A Transient Simulation Framework of Reconfigurable Modules (TRANSFORM) multiphysics simulation of an MSR produces time-dependent isotopic inventories at user-selected locations within the model. The tool kit implements the Gamma Detector Response and Analysis Software (GADRAS) application programming interface to inject the TRANSFORM isotopic inventories extracted/processed by a Python pipeline into GADRAS models of user-defined geometries. The TRANSFORM inventories are the source terms used to obtain synthetic measurements from GADRAS-defined detectors. The speed of TRANSFORM and GADRAS simulations enables surveying the large design space of MSRs (e.g., fuel type, fuel salt composition, number of loops) and the plethora of measurements (e.g., location, detector type, and collimation) within the reactor. This has enabled timely assessment of the various measurement locations and detectors to identify the most effective and efficient safeguards approach for a specific MSR design. Lastly, the tool kit also simulates extracted samples that can be aged to a desired dose, enabling stakeholders to optimize a measurement plan to use sample analysis as an element within a broader material accountancy plan.

Westphal, Greg↗

Simulation of Isotopic Concentrations and Gamma Spectra from Dynamic Fission Sources

A tool was developed to rapidly generate synthetic gamma-ray spectra to evaluate safeguards material control and accounting methods for liquid-fueled molten salt reactors. Molten salt reactor operations pose unique challenges to nuclear safeguards methods and protocols compared to deployed reactors designs (e.g., light water reactors). This research evaluates the use of gamma-ray spectroscopy to monitor fission product isotopic flow through a reactor model to understand expected operations and investigate changes to the spectra with material diversion scenarios. The large design space of molten salt reactors (e.g., liquid-fueled, liquid-cooled, online separations) could potentially lead to many measurement points within the reactor system. The developed analytical tool generates and evaluates synthetic gamma-ray spectra from dynamic reactor simulations by extracting isotopic inventory to generate source terms. An implementation in the Gamma Detector Response and Analysis Software (GADRAS) Application Program Interface (API) uses the source terms, a model of the reactor component, a detector response function, and measurement plan to quickly generate and analyze spectra. Prospective measurements are then evaluated in the more accurate but slower Geant4 simulations. Utilization of the developed modeling tool and analysis of the subsequent spectra enables optimization of collimation, shielding requirements, and expected count rates that are used to determine key measurement points in the modeled reactor design.

O'Brien, Sean↗

Value-based Insights from the Implementation of Hierarchical Control for Energy Savings and Demand Response in Residential Premises

As the adoption of distributed energy resources and electric vehicles at residential customer premises increases exponentially, behind-the-meter assets can be utilized to achieve energy cost reduction and demand response through coordination and control strategies. A hierarchical control architecture from the utility headend to residential premises is implemented to attain these objectives. This paper extracts the values from the development, implementation, and deployment of that control hierarchy. The development of the control philosophy is built upon the existing advanced metering infrastructure, communication protocols, and industry-compatible application programming interfaces. Results are presented visually with analytical insights by utilizing the data from hardware-in-the-loop testing and simulation analysis out of the collected data from the field.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Mantisa

SAND2021-15050 O Mantisa is an application programming interface (API) developed for a robotic hardware platform used to foster open collaboration with university partners. 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.

Dellana, Ryan↗

cclib 2.0: An updated architecture for interoperable computational chemistry

Interoperability in computational chemistry is elusive, impeded by the independent development of software packages and idiosyncratic nature of their output files. The cclib library was introduced in 2006 as an attempt to improve this situation by providing a consistent interface to the results of various quantum chemistry programs. The shared API across programs enabled by cclib has allowed users to focus on results as opposed to output and to combine data from multiple programs or develop generic downstream tools. Initial development, however, did not anticipate the rapid progress of computational capabilities, novel methods, and new programs; nor did it foresee the growing need for customizability. Here, we recount this history and present cclib 2, focused on extensibility and modularity. We also introduce recent design pivots—the formalization of cclib’s intermediate data representation as a tree-based structure, a new combinator-based parser organization, and parsed chemical properties as extensible objects.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

AEcroscopy: A Software–Hardware Framework Empowering Microscopy Toward Automated and Autonomous Experimentation

Microscopy has been pivotal in improving the understanding of structure-function relationships at the nanoscale and is by now ubiquitous in most characterization labs. However, traditional microscopy operations are still limited largely by a human-centric click-and-go paradigm utilizing vendor-provided software, which limits the scope, utility, efficiency, effectiveness, and at times reproducibility of microscopy experiments. Here, in this work, a coupled software–hardware platform is developed that consists of a software package termed AEcroscopy (short for Automated Experiments in Microscopy), along with a field-programmable-gate-array device with LabView-built customized acquisition scripts, which overcome these limitations and provide the necessary abstractions toward full automation of microscopy platforms. The platform works across multiple vendor devices on scanning probe microscopes and electron microscopes. It enables customized scan trajectories, processing functions that can be triggered locally or remotely on processing servers, user-defined excitation waveforms, standardization of data models, and completely seamless operation through simple Python commands to enable a plethora of microscopy experiments to be performed in a reproducible, automated manner. This platform can be readily coupled with existing machine-learning libraries and simulations, to provide automated decision-making and active theory-experiment optimization to turn microscopes from characterization tools to instruments capable of autonomous model refinement and physics discovery.

47 OTHER INSTRUMENTATION↗

Performance on HPC Platforms Is Possible Without C++

Computing at large scales has become extremely challenging due to increasing heterogeneity in both hardware and software. More and more scientific workflows must tackle a range of scales and use machine learning and AI intertwined with more traditional numerical modeling methods, placing more demands on computational platforms. These constraints indicate a need to fundamentally rethink the way computational science is done and the tools that are needed to enable these complex workflows. The current set of C++-based solutions may not suffice, and relying exclusively upon C++ may not be the best option, especially because several newer languages and boutique solutions offer more robust design features to tackle the challenges of heterogeneity. In June 2023, we held a mini symposium that explored the use of newer languages and heterogeneity solutions that are not tied to C++ and that offer options beyond template metaprogramming and Parallel. For for performance and portability. In conclusion, we describe some of the presentations and discussion from the mini symposium in this article.

97 MATHEMATICS AND COMPUTING↗

MontePy: a Python library for reading, editing, and writing MCNP input files.

The Monte Carlo N-Particle (MCNP) radiation transport code is a highly capable and accurate code with a long legacy. MCNP uses the Monte Carlo simulation process to simulate the path of particles (e.g., neutrons, photons, charged particles, etc.), and their interaction with materials. It is widely used in nuclear engineering, high-energy physics, and other fields. Its origins in the mid-twentieth century predate many modern software conventions. MCNP users provide an input file to MCNP, which it then uses to create an internal representation of the simulation problem. These input files originally had to be stored as punchcard decks, and the user manual still uses the terminology of cards and decks, despite moving beyond punchcards. MCNP predates nearly all modern human readable markup or data serialization languages, such as the extensible Markup Language (XML), the Standard Generalized Markup Language (SGML), YAML (YAML Ain’t Markup Language), and Javascript Object Notation (JSON). Due to this, MCNP uses an entirely custom defined syntax language for its input, making off-the-shelf libraries for XML, YAML, and JSON impossible to use for scripting various operations on MCNP input files (Kulesza et al., 2022).

97 - MATHEMATICS AND COMPUTING↗

Preliminary API design to access SG-50 database [Slides]

This presentation details the design and use of a rudimentary example API. The example API reads JSON; eventually it needs to operate with the database. It demonstrates ease in applying powerful, publicly available tools.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Caffeine v0.1.0

Caffeine is the CoArray Fortran Framework of Efficient Interfaces to Network Environments. Caffeine aims to produce a parallel runtime library that will support Fortran compilers with a programming-model-agnostic application binary interface (ABI) to various lower-level communication libraries. The current version of Caffeine uses the GASNet-EX networking middleware, also developed at Berkeley Lab. On many combinations of applications and platforms, GASNet-EX outperforms the widely used Message Passing Interface (MPI). Through GASNet-EX's support for communicating between graphics processing units (GPU), GASNet-EX has features that specifically target the emerging, leading-edge exascale computing platforms.

Rouson, Damian↗

PaRSEC: Scalability, flexibility, and hybrid architecture support for task-based applications in ECP

This paper highlights the most significant enhancements made to PaRSEC, a scalable task-based runtime system designed for hybrid machines, during the Exascale Computing Project (ECP). The enhancements focus on expanding the capabilities of PaRSEC to address the evolving landscape of parallel computing. Notable achievements include the integration of support for three major types of accelerators (NVIDIA, AMD, and Intel GPUs), the refinement and increased flexibility of the communication subsystem, and the introduction of new programming interfaces tailored for irregular applications. Additionally, the project resulted in the development of powerful debugging and performance analysis tools aimed at assisting users in understanding and optimizing their applications. We present a comprehensive demonstration of these advancements through a series of benchmarks and applications within ECP and beyond, thereby showcasing the enhanced capabilities of PaRSEC across the diverse architectures within the ECP, providing valuable insights into the runtime system’s adaptability and performance across varied computing environments.

Bouteiller, Aurelien↗

FLIT: A Generic Fortran Library based on Interfaces and Templates

This Fortran code consists of multiple modules with a focus on simplifying array operations, image processing, and numerical computation especially for computational geophysics applications. We intend to use this code to demonstrate the application and usefulness of Fortran interface and templates for generic programming, especially for computational geophysics and seismology applications. The code has several notable features. Firstly, it is based on a modularized structure, where each module contains multiple functions but with a focus of functionality. Secondly, it heavily uses interfaces and templates for improving the genericness and convenience of the resulting code, where a same function interface can enclose a group of functions that perform the same functionality but with inputs/output variables of different data types. Thirdly, it includes a variety of generic functions with an emphasis on array operations, such as rotation, flipping, cropping, padding, fast Fourier transform, Gaussian blurring, interpolation, and so on. We name this package FLIP – a generic Fortran Library based on Interfaces and Templates.

Gao, Kai↗

FTK: A Simplicial Spacetime Meshing Framework for Robust and Scalable Feature Tracking

In this work, we present the Feature Tracking Kit (FTK), a framework that simplifies, scales, and delivers various feature-tracking algorithms for scientific data. The key of FTK is our simplicial spacetime meshing scheme that generalizes both regular and unstructured spatial meshes to spacetime while tessellating spacetime mesh elements into simplices. The benefits of using simplicial spacetime meshes include (1) reducing ambiguity cases for feature extraction and tracking, (2) simplifying the handling of degeneracies using symbolic perturbations, and (3) enabling scalable and parallel processing. The use of simplicial spacetime meshing simplifies and improves the implementation of several feature-tracking algorithms for critical points, quantum vortices, and isosurfaces. As a software framework, FTK provides end users with VTK/ParaView filters, Python bindings, a command line interface, and programming interfaces for feature-tracking applications. We demonstrate use cases as well as scalability studies through both synthetic data and scientific applications including tokamak, fluid dynamics, and superconductivity simulations. We also conduct end-to-end performance studies on the Summit supercomputer. FTK is open sourced under the MIT license: https://github.com/hguo/ftk.

97 MATHEMATICS AND COMPUTING↗

Understanding the use of message passing interface in exascale proxy applications

The Exascale Computing Project (ECP) focuses on the development of future exascale-capable applications. Most ECP applications use the message passing interface (MPI) as their parallel programming model with mini-apps serving as proxies. This paper explores the explicit usage of MPI in such ECP proxy applications. We empirically analyze 14 proxy applications from the ECP Proxy Apps Suite. We use the MPI profiling interface (PMPI) to collect MPI usage patterns in ECP proxy apps. Our analysis shows that a small subset of features from MPI is commonly used in the proxies of exascale-capable applications, even when they reference third-party libraries. Overall, this study is intended to provide a better understanding of the use of MPI in current exascale applications. The findings can help focus software investments made for exascale systems in the MPI middleware including optimization, fault-tolerance, tuning, and hardware-offload.

97 MATHEMATICS AND COMPUTING↗