Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “software library”

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 541 records · Page 30

Dynamic Decarbonization through Autonomous Physics-Centric Deep Learning and Optimization of Building Operations (Abstract only)

This project directly addresses the primary goal of Area of Interest 2 in the CRADA call: to advance optimization-based integrated energy management systems in commercial and residential buildings. Pacific Northwest National Laboratory (PNNL) and its industry partner PassiveLogic aim to accomplish this by reaching three key objectives. First, to ensure a broad impact in the building controls industry, PNNL will extend its open-source library for predictive control synthesis by augmenting its capabilities with data-driven self-learning of building models and auto-calibration of predictive controllers. The effort will focus on building use cases selected in collaboration with PassiveLogic. The team will specifically address the development of methods for data-driven adaptation of building models, investigation of model architectures that best address specific building types, and automated synthesis of differentiable predictive controllers that optimize diverse objectives. Second, PNNL will collaborate with PassiveLogic to integrate the aforementioned methods with PasiveLogic’s advanced controls platform. The collaborative integration effort will inform the developments under the first objective by providing specific data on the attainable performance of model learning on resource-constrained edge computing platforms. This software integration effort will increase the technical maturity of the developed libraries by exploring the use of software integration tools and methods. Third, PNNL and PassiveLogic will work to improve the technology readiness of the developed predictive controllers by testing their performance in relevant test environments, such as high-fidelity simulation, hardware in the loop, and actual test buildings.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

Towards Use of Mixed Precision in ECP Math Libraries [Exascale Computing Project]

The use of multiple types of precision in mathematical software has the potential to increase its performance on new heterogeneous architectures. The xSDK project focuses both on the investigation and development of multiprecision algorithms as well as their inclusion into xSDK member libraries. This report summarizes current efforts on including and/or using mixed precision capabilities in the math libraries Ginkgo, heFFTe, hypre, MAGMA, PETSc/TAO, SLATE, SuperLU, and Trilinos, including KokkosKernels. It contains both numerical results from libraries that already provide mixed precision capabilities, as well as descriptions of the strategies to incorporate multiprecision into established libraries.

97 MATHEMATICS AND COMPUTING↗

NESSi : The N on- E quilibrium S ystems S imulation package

The nonequilibrium dynamics of correlated many-particle systems is of interest in connection with pump–probe experiments on molecular systems and solids, as well as theoretical investigations of transport properties and relaxation processes. Nonequilibrium Green’s functions are a powerful tool to study interaction effects in quantum many-particle systems out of equilibrium, and to extract physically relevant information for the interpretation of experiments. Here, we present the open-source software package NESSi (The Non-Equilibrium Systems Simulation package) which allows to perform many-body dynamics simulations based on Green’s functions on the L-shaped Kadanoff–Baym contour. NESSi contains the library libcntr which implements tools for basic operations on these nonequilibrium Green’s functions, for constructing Feynman diagrams, and for the solution of integral and integro-differential equations involving contour Green’s functions. The library employs a discretization of the Kadanoff–Baym contour into time points and a high-order implementation of integration routines. The total integrated error scales up to $\mathcal{O}(N^{-7})$, which is important since the numerical effort increases at least cubically with the simulation time. A distributed-memory parallelization over reciprocal space allows large-scale simulations of lattice systems. We provide a collection of example programs ranging from dynamics in simple two-level systems to problems relevant in contemporary condensed matter physics, including Hubbard clusters and Hubbard or Holstein lattice models. The libcntr library is the basis of a follow-up software package for nonequilibrium dynamical mean-field theory calculations based on strong-coupling perturbative impurity solvers.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

PymePix : a python library for SPIDR readout of Timepix3

PymePix is a new Python 3 library that provides control and acquisition for the Timepix3-SPIDR hardware. The rich set of data-structures and intuitive routines reduces time and coding effort to quickly configure, acquire, and visualize data from Timepix3. The highly extensible high-performance data-pipeline allows for alteration of the Timepix3 datastream into a form that is convinient for the user. This library is intended to be easily inserted into a standard scientific software stack as well as to allow for more direct interaction of Timepix3 with interactive flavors of Python. Included with the library are two example programs using PymePix: pymepix-acq is a command line control and acquisition program that can capture UDP packets and decode them into pixels and triggers. The second is pymepixviewer, an online control and data-acquisition program for general use, but with features geared toward mass-spectroscopy and ion imaging.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

Medical Database Accomplishments and Lessons Learned - 2021

The Medical Database (MD) is a virtual repository consisting of two software components: the Medical Item Database (MedID) and the Evidence Library (EL). MedID consists of engineering data and associated information for specific medical resource items (e.g., pharmaceutical, medical devices, and supporting components), while the EL is a tool which provides all of the medical evidence necessary. The Medical Database will serve as the single “source of truth” for the Informing Mission Planning via Analysis of Complex Tradespaces (IMPACT) tool suite for both medical evidence and medical resource engineering data. It will be used in conjunction with the IMPACT tool suite to inform research prioritizations and perform systematic trade study evaluations using probabilistic risk assessment and simulated human spaceflight missions to aid stakeholders in making informed decisions during Pre-Phase-A planning of human spaceflight missions. The IMPACT project is conducted under the Exploration Medical Capability (ExMC) element of the Human Research Program (HRP), within NASA’s Human Exploration and Operations Mission Directorate. Over the past year, the MedID software has been successfully merged with the Evidence Library into one cohesive Medical Database with two independent user interface experiences for modifying either clinical evidence or resource engineering data. As MD has evolved substantially over the past year, a number of challenges have been encountered and overcome along the way. A number of ‘lessons learned’ and practical/logistical realizations have emerged which will be detailed in the forthcoming Medical Database presentation.

Exploration Medical Capability↗

NWGraph: A Library of Generic Graph Algorithms and Data Structures in C++20

The C++ Standard Library is a valuable collection of generic algorithms and data structures that improves the usability and reliability of C++ software. Graph algorithms and data structures are notably absent from the standard library, and previous attempts to fill this gap have not gained widespread adoption. With the new addition of ranges and concepts in C++20, the language has the mechanisms to cleanly support generic graph algorithms as operations on a range of ranges. This report presents NWGraph, a generic C++ graph library for expressing graph algorithms in a modern, composable, and extensible, aka generic, fashion.

97 MATHEMATICS AND COMPUTING↗

NWGraph: A Library of Generic Graph Algorithms and Data Structures in C++20

The C++ Standard Library is a valuable collection of generic algorithms and data structures that improves the usability and reliability of C++ software. Graph algorithms and data structures are notably absent from the standard library, and previous attempts to fill this gap have not gained widespread adoption. In this paper we show that the richness of graph algorithms and data structures can in fact be captured by straightforward composition of existing C++ mechanisms. Generic programming is algorithm-oriented. Accordingly, we apply a systematic approach to analyzing a broad set of graph algorithms, “lift” unnecessary constraints from them, and organize the resulting set of minimal common type requirements, i.e., concepts, for defining their interfaces. By using the newly available ranges and concepts in C++20, the type requirements for generic graph algorithms can be succinctly expressed. The generic algorithms and data structures resulting from our analysis are realized in NWGraph, in a modern, composable, and extensible C++ library.

graphs and networks, programming language, C++20↗

PAPI software-defined events for in-depth performance analysis

The methodology and standardization layer provided by the Performance Application Programming Interface (PAPI) has played a vital role in application profiling for almost two decades. It has enabled sophisticated performance analysis tool designers and performance-conscious scientists to gain insights into their applications by simply instrumenting their code using a handful of PAPI functions that “just work” across different hardware components. In the past, PAPI development had focused primarily on hardware-specific performance metrics. However, the rapidly increasing complexity of software infrastructure poses new measurement and analysis challenges for the developers of large-scale applications. In particular, acquiring information regarding the behavior of libraries and runtimes—used by scientific applications—requires low-level binary instrumentation, or APIs specific to each library and runtime. No uniform API for monitoring events that originate from inside the software stack has emerged. In this article, we present our efforts to extend PAPI’s role so that it becomes the de facto standard for exposing performance-critical events, which we refer to as software-defined events (SDEs), from different software layers. Upgrading PAPI with SDEs enables monitoring of both types of performance events—hardware- and software-related events—in a uniform way, through the same consistent PAPI. The goal of this article is threefold. First, we motivate the need for SDEs and describe our design decisions regarding the functionality we offer through PAPI’s new SDE interface. Second, we illustrate how SDEs can be utilized by different software packages, specifically, by showcasing their use in the numerical linear algebra library MAGMA-Sparse, the tensor algebra library TAMM that is part of the NWChem suite, and the compiler-based performance analysis tool Byfl. Third, we provide a performance analysis of the overhead that results from monitoring SDEs and discuss the trade-offs between overhead and functionality.

Jagode, Heike↗

Analyzing Spacecraft Telecommunication Systems

Multi-Mission Telecom Analysis Tool (MMTAT) is a C-language computer program for analyzing proposed spacecraft telecommunication systems. MMTAT utilizes parameterized input and computational models that can be run on standard desktop computers to perform fast and accurate analyses of telecommunication links. MMTAT is easy to use and can easily be integrated with other software applications and run as part of almost any computational simulation. It is distributed as either a stand-alone application program with a graphical user interface or a linkable library with a well-defined set of application programming interface (API) calls. As a stand-alone program, MMTAT provides both textual and graphical output. The graphs make it possible to understand, quickly and easily, how telecommunication performance varies with variations in input parameters. A delimited text file that can be read by any spreadsheet program is generated at the end of each run. The API in the linkable-library form of MMTAT enables the user to control simulation software and to change parameters during a simulation run. Results can be retrieved either at the end of a run or by use of a function call at any time step.

Kordon, Mark↗

Expanded serial communication capability for the transport systems research vehicle laptop computers

A recent upgrade of the Transport Systems Research Vehicle (TSRV) operated by the Advanced Transport Operating Systems Program Office at the NASA Langley Research Center included installation of a number of Grid 1500 series laptop computers. Each unit is a 80386-based IBM PC clone. RS-232 data busses are needed for TSRV flight research programs, and it has been advantageous to extend the application of the Grids in this area. Use was made of the expansion features of the Grid internal bus to add a user programmable serial communication channel. Software to allow use of the Grid bus expansion has been written and placed in a Turbo C library for incorporation into applications programs in a transparent manner via function calls. Port setup; interrupt-driven, two-way data transfer; and software flow control are built into the library functions.

Easley, Wesley C.↗

Rapid generation of optimal generalized Monkhorst-Pack grids

In this report computational modeling of the properties of crystalline materials has become an increasingly important aspect of materials research, consuming hundreds of millions of CPU-hours at scientific computing centers around the world each year, if not more. A routine operation in such calculations is the evaluation of integrals over the Brillouin zone. We have previously demonstrated that performing such integrals using generalized Monkhorst-Pack k-point grids can roughly double the speed of these calculations relative to the widely-used traditional Monkhorst-Pack grids. However the generation of optimal generalized Monkhorst-Pack grids is not implemented in most software packages due to the computational cost and difficulty of identifying the best grids. To address this problem, we present new algorithms that allow rapid generation of optimal generalized Monkhorst-Pack grids on the fly. We demonstrate that the grids generated by these algorithms are on average significantly more efficient than those generated using existing algorithms across a range of grid densities. For grids that correspond to a real-space supercell with at least 50 Å between lattice points, which is sufficient to converge density functional theory calculations within 1 meV/atom for nearly all materials, our algorithm finds optimized grids in an average of 0.19 s on a single processing core. To facilitate the widespread adoption of this approach, we present new open-source tools including a library designed for integration with third-party software packages.

36 MATERIALS SCIENCE↗

On a Simplified Approach to Achieve Parallel Performance and Portability Across CPU and GPU Architectures

This paper presents software advances to easily exploit computer architectures consisting of a multi-core CPU and CPU+GPU to accelerate diverse types of high-performance computing (HPC) applications using a single code implementation. The paper describes and demonstrates the performance of the open-source C++ matrix and array (MATAR) library that uniquely offers: (1) a straightforward syntax for programming productivity, (2) usable data structures for data-oriented programming (DOP) for performance, and (3) a simple interface to the open-source C++ Kokkos library for portability and memory management across CPUs and GPUs. The portability across architectures with a single code implementation is achieved by automatically switching between diverse fine-grained parallelism backends (e.g., CUDA, HIP, OpenMP, pthreads, etc.) at compile time. The MATAR library solves many longstanding challenges associated with easily writing software that can run in parallel on any computer architecture. This work benefits projects seeking to write new C++ codes while also addressing the challenges of quickly making existing Fortran codes performant and portable over modern computer architectures with minimal syntactical changes from Fortran to C++. We demonstrate the feasibility of readily writing new C++ codes and modernizing existing codes with MATAR to be performant, parallel, and portable across diverse computer architectures.

97 MATHEMATICS AND COMPUTING↗

Using Big Data Technologies with Earth Science Data in HDF5: HDF5 Scalable Solutions

HDF5 (Hierarchical Data Format 5) is open-source, high-performance software that consists of an abstract data model, library, and fileformat used for storing and managing extremely large and/or complex data collections. NASA Earth Observing System (EOS) Data and Information Systems use HDF5 as an archival format to store remote sensing data from EOS satellites. HDF5 is also used to store other types of Geoscience and Strophysical data, e.g., seismic data and data from Low-Frequency Array (LOFAR) radio telescopes. Data stored in HDF5 has reached tens of petabytes and is growing at an accelerated rate.With the growing amout of HDF5 Earth Science data to analyze and process, scientists need to adopt big data technologies including new storage paradigms such as cloud and object storage. To run models and perform data analysis they also need to utilizied efficient and diverse ways to access data, from high-performance computing's (HPC) Message Passing Interface (MPI) I/O and deep memory hierarchies (DMH) to non-HPC frameworks such as Apache Hadoop, Spark, and Drill. The HDF Group continually works to enable usage of big data technologies in HDF software.

Knox, Larry↗

Framework for Analysis and Visualization of Simulation Data (VizAly)

As supercomputing resources increase, cosmological scientists are able to run more detailed and larger simulations generating massive amounts of data. Analyzing these simulations with an available open-source toolkit is important for collaborative Department of Energy scientific discovery across labs, universities, and other partners. Developed software as a part of this collection include: comparing data with other existing simulations, verifying and validating results with observation databases, new halo finder algorithms, and using analytical tools to get insights into the physics of the cosmological universe. The goal of this software project is to provide a set of open-source libraries, tools, and packages for large-scale cosmology that allows scientists to visualize, analyze, and compare large-scale simulation and observational data sets. Developed software will provide a variety of methods for processing, visualization, and analysis of astronomical observation and cosmological simulation data. These tools are intended for deployment on multiple scientific computing platforms, including but not limited to personal computers, cloud computing, experimental sites (telescopes) and high performance supercomputers.

Wendelberger, Joanne↗

Task Parallelism to Optimize Performance of Environmental Modeling Software

Climate modeling is an integral part of environmental research, from studying rare phenomena to predicting future climate trends. The need for more accurate models is only growing, but as climate modeling capabilities advance, existing workflows require optimization to recoup performance. A solution comes in the form of task parallelism, a novel programming capability that provides an opportunity for optimization at execution time by allowing tasks to be executed in parallel, reducing runtime significantly. Using Parsl, an intuitive and scalable parallel scripting library for Python, we implement task parallelism within support software to aid in the continuous advancement of climate modeling technology.

54 ENVIRONMENTAL SCIENCES↗

Building Multi-Discipline, Multi-Format Digital Libraries Using Clusters and Buckets

Our objective was to study the feasibility of extending the Dienst protocol to enable a multi-discipline, multi-format digital library. We implemented two new technologies: cluster functionality and publishing buckets. We have designed a possible implementation of clusters and buckets, and have prototyped some aspects of the resultant digital library. Currently, digital libraries are segregated by the disciplines they serve (computer science, aeronautics, etc.), and by the format of their holdings (reports, software, datasets, etc.). NCSTRL+ is a multi-discipline, multi-format digital library (DL) prototype created to explore the feasibility of the design and implementation issues involved with created a unified, canonical scientific and technical information (STI) DL. NCSTRL+ is based on the Networked Computer Science Technical Report Library (NCSTRL), a World Wide Web (WWW) accessible DL that provides access to over 80 university departments and laboratories. We have extended the Dienst protocol (version 4.1.8), the protocol underlying NCSTRL, to provide the ability to cluster independent collections into a logically centralized DL based upon subject category classification, type of organization, and genre of material. The concept of buckets provides a mechanism for publishing and managing logically linked entities with multiple data formats.

Nelson, Michael L.↗

NASA Tech Briefs, February 2005

Topics discussed include: Instrumentation for Sensitive Gas Measurements; Apparatus for Testing Flat Specimens of Thermal Insulation; Quadrupole Ion Mass Spectrometer for Masses of 2 to 50 Da; Miniature Laser Doppler Velocimeter for Measuring Wall Shear; Coherent Laser Instrument Would Measure Range and Velocity; Printed Microinductors for Flexible Substrates; Digital Receiver for Microwave Radiometry; Printed Antennas Made Reconfigurable by Use of MEMS Switches; Traffic-Light-Preemption Vehicle-Transponder Software Module; Intersection-Controller Software Module; Central-Monitor Software Module; Estimating Effects of Multipath Propagation on GPS Signals; Parallel Adaptive Mesh Refinement Library; Predicting Noise From Aircraft Turbine-Engine Combustors; Generating Animated Displays of Spacecraft Orbits; Diagnosis and Prognosis of Weapon Systems; Training Software in Artificial-Intelligence Computing Techniques; APGEN Version 5.0; Single-Command Approach and Instrument Placement by a Robot on a Target; Three-Dimensional Audio Client Library; Isogrid Membranes for Precise, Singly Curved Reflectors; Nickel-Tin Electrode Materials for Nonaqueous Li-Ion Cells; Photocatalytic Coats in Glass Drinking-Water Bottles; Fast Laser Shutters With Low Vibratory Disturbances; Series-Connected Buck Boost Regulators; Space Physics Data Facility Web Services; Split-Resonator, Integrated-Post Vibratory Microgyroscope; Blended Buffet-Load-Alleviation System for Fighter Airplane; Gifford-McMahon/Joule-Thomson Refrigerator Cools to 2.5 K; High-Temperature, High-Load-Capacity Radial Magnetic Bearing; Fabrication of Spherical Reflectors in Outer Space; Automated Rapid Prototyping of 3D Ceramic Parts; Tissue Engineering Using Transfected Growth-Factor Genes; Automation of Vapor-Diffusion Growth of Protein Crystals; Atom Skimmers and Atom Lasers Utilizing Them; Gears Based on Carbon Nanotubes; Patched Off-Axis Bending/Twisting Actuators for Thin Mirrors; and Improving Control in a Joule-Thomson Refrigerator.

Source record↗