Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Computer Programming and software”

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 469 records · Page 26

VERAView User's Guide

VERAView has been developed as an interactive graphical interface for the visualization and engineering analyses of output data from VERA. The python-based software is easy to install and intuitive to use, and provides instantaneous 2D and 3D images, 1D plots, and alpha-numeric data from VERA multi-physics simulations. This document provides a brief overview of the software and some description of the major features of the application, including examples of each of the encapsulated ‘widgets’ that have been implemented thus far. VERAView is still under major development and large changes in the software and this document are still anticipated.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Characterization of Morphology using MAMA Software

The MAMA (Morphological Analysis for Material Attribution) software was developed at the Los Alamos National Laboratory funded through the National Technical Nuclear Forensics Center in the Department of Homeland Security. The software allows images to be analysed and quantified. The largest project I worked on was to quantify images of plutonium oxides and ammonium diuranates prepared by the group with the software and provide analyses on the particles of each sample. Images were quantified through MAMA, with a color analysis, a lexicon description and powder x-ray diffraction. Through this we were able to visually see a difference between some of the syntheses. An additional project was to revise the manual for MAMA to help streamline training and provide useful tips to users to more quickly become acclimated to using the software. The third project investigated expanding the scope of MAMA and finding a statistically relevant baseline for the particulates through the analysis of maps in the software and using known measurements to compare the error associated with the software. During this internship, I worked on several different projects dealing with the MAMA software. The revision of the usermanual for the MAMA software was the first project I was able to work and collaborate on. I first learned how to use the software by getting instruction from a skilled user at the laboratory, Dan Schwartz, and by using the existing user manual and examples. After becoming accustomed to the program, I started to go over the manual to correct and change items that were not as useful or descriptive as they could have been. I also added in tips that I learned as I explored the software. The updated manual was also worked on by several others who have been developing the program. The goal of these revisions was to ensure the most concise and simple directions to the software were available to future users. By incorporating tricks and shortcuts that I discovered and picked up from watching other users into the user guide, I believe that anyone who utilizes the software will be able to quickly understand the best way to analyze their image and use the tools the program offers to achieve useful results.

97 MATHEMATICS AND COMPUTING↗

Water Network Tool for Resilience Version 0.1

Water utilities are vulnerable to a wide variety of human-caused and natural disasters. These disruptive events can result in loss of water service, contaminated water, pipe breaks, and failed equipment. Furthermore, long term changes in water supply and customer demand can have a large impact on the operating conditions of the network. The ability to maintain drinking water service during and following these types of events is critical. Simulation and analysis tools can help water utilities explore how their network will respond to disruptive events and plan effective mitigation strategies. The U.S. Environmental Protection Agency and Sandia National Laboratories are developing new software tools to meet this need. The Water Network Tool for Resilience (WNTR, pronounced winter) is a Python package designed to help water utilities investigate resilience of water distribution systems over a wide range of hazardous scenarios and to evaluate resilience-enhancing actions. The following documentation includes installation instructions and examples, description of software features, and software license. It is assumed that the reader is familiar with the Python Programming Language.

42 ENGINEERING↗

Using Likwid and Byfl to Benchmark Hardware Performance [Poster]

Benchmark Study conducted focusing on CPU and program performance analysis. Performance data gathered using 2 different programs and comparisons made based on performance. After comparisons are made, conclusions can be drawn and improvements are made upon hardware and software.

97 MATHEMATICS AND COMPUTING↗

Interactive statistical decision tools (GiSdT): An open source software integration of decision analysis and stakeholder judgment for sustainable waste management, disposal and remediation - 15650

The vast majority of remediation and waste management decisions are made without quantitative consideration of economic and socio-political factors. They are made instead based on quantitative metrics of human health risk. Sustainable decisions need to be made based on all three 'pillars of sustainability' (economics, environment and social), and require understanding and characterization of the costs and values associated with each pillar. In addition, such decisions need to conform to regulatory or other legal requirements, which often constrains the decision space of interest. Although efforts are often made to include factors across all three pillars (for example, for decisions made under CERCLA), these efforts are usually qualitative, and hence difficult to defend. They lack technical defensibility, transparency and traceability. The purpose of GiSdT (Guided Interactive Statistical Decision Tools) is to provide a quantitative framework whereby all aspects of a decision problem, such as remediation and waste management decisions, can be addressed quantitatively, and hence, defensibly, transparently and traceably. Most decision-makers do not currently have access to useful or usable methods and approaches when are presented with choices that have significant impacts across all three pillars of sustainability. The goal of GiSdT is to provide that access by identifying or developing effective and user-friendly decision methods and approaches that empower decision-makers to explicitly and routinely incorporate all aspects of sustainability into their decision-making. To identify and develop these methods and approaches, GiSdT provides the tools needed for decision-makers and stakeholders to understand and characterize their knowledge of their current decision-making processes, and what methods and approaches they need to pro-actively and quantitatively address all aspects of sustainability in their decisions. GiSdT is an open source interactive framework program that provides the tools needed to address the relevant components of a sustainability-based decision problem, including describing the decision landscape, translating that landscape into goals and objectives, valuing the measurable attributes that describe each objective, identifying decision options and addressing the uncertainty in the attributes (e.g., human health risk, institutional controls) through appropriate probabilistic models. In addition to addressing these quantitative technical components, the GiSdT program is aimed at facilitating stakeholder involvement so that the perspectives, values and objectives are all relevant stakeholders are addressed explicitly in the decision making process. The technical underpinnings of our software program, called Guided Interactive Statistical Decision Tools (GiSdT), are described. (authors)

12 MANAGEMENT OF RADIOACTIVE AND NON-RADIOACTIVE W↗

A Visual Comparison of Silent Error Propagation

High-performance computing (HPC) systems play a critical role in facilitating scientific discoveries. Their scale and complexity (e.g., the number of computational units and software stack) continue to grow as new systems are expected to process increasingly more data and reduce computing time. However, with more processing elements, the probability that these systems will experience a random bit-flip error that corrupts a program's output also increases, which is often recognized as silent data corruption. Analyzing the resiliency of HPC applications in extreme-scale computing to silent data corruption is crucial but difficult. An HPC application often contains a large number of computation units that need to be tested, and error propagation caused by error corruption is complex and difficult to interpret. Here, to accommodate this challenge, we propose an interactive visualization system that helps HPC researchers understand the resiliency of HPC applications and compare their error propagation. Our system models an application's error propagation to study a program's resiliency by constructing and visualizing its fault tolerance boundary. Coordinating with multiple interactive designs, our system enables domain experts to efficiently explore the complicated spatial and temporal correlation between error propagations. At the end, the system integrated a nonmonotonic error propagation analysis with an adjustable graph propagation visualization to help domain experts examine the details of error propagation and answer such questions as why an error is mitigated or amplified by program execution.

97 MATHEMATICS AND COMPUTING↗

CyPhyTown

A series of software programs that enables students to progress from completely unsecured control of devices to control that protects network commands with authentication, integrity and confidentiality. The working example provided is for turning LED lights on and off on a Raspberry Pi computer.

Source record↗

Web Based Beamline Control System (Bluesky Web) v0.1.0

Bluesky Web is a web based interface that provides beam line controls to the end user. It allows users to issue commands to various physical devices at a beam line end station like motors and cameras. It utilizes an open source Python library (Bluesky) as the controller. It uses Bluesky to also allow for running "plans" or a sequence of device operations that can be used when running an experiment. This program is different from other controls technologies because it is intended to be open source and can be accessed from a web browser, as opposed to other paid software that is run as a stand-alone application on a computer.

De Leon, Seij↗

CyPhyTown

A series of software programs that enables students to progress from completely unsecured control of devices to control that protects network commands with authentication, integrity and confidentiality. The working example provided is for turning LED lights on and off on a Raspberry Pi computer.

Source record↗

SEAS Communication Engine: An Extensible, Flexible Wrapper for Co-Simulation Agents

When modeling and analyzing the power grid and other large scale systems, researchers often express scenarios as optimization problems and feed them into advanced software solvers. In order to allow multiple solvers to communicate with each other and share data from different domains, the National Renewable Energy Laboratory (NREL) and associated Department of Energy (DOE) labs have developed a software framework called the Hierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS). HELICS allows cosimulation via a collection of client libraries for different languages that can be called from the appropriate optimization software. However, these client libraries do not provide a higher level of abstraction beyond reading and writing data off of the shared HELICS bus. In this paper, we describe a new software library called the SEAS Communication Engine that exposes a higher-level API for running cosimulation problems. The SEAS Engine provides a class-based abstraction on top of the Python HELICS client, in order to allow users to implement their domain-specific cosimulations without needing to interact with core HELICS primitives. This will make adoption of HELICS and cosimulation in general easier, by exposing a simpler API. In the second part of the paper, we validate our library on a collection of different simulation examples, including the canonical IEEE 13 Bus Feeder. Lastly, we demonstrate using the SEAS Engine to directly call domain-specific code written in the Julia programming language. Our hope is that this will serve as a template for easily calling software in different programming languages via the SEAS Engine, thereby avoiding code duplication and complexity.

co-simulation↗

Simulation-based Testing of Control Software

It is impossible to adequately test complex software by examining its operation in a physical prototype of the system monitored. Adequate test coverage can require millions of test cases, and the cost of equipment prototypes combined with the real-time constraints of testing with them makes it infeasible to sample more than a small number of these tests. Model based testing seeks to avoid this problem by allowing for large numbers of relatively inexpensive virtual prototypes that operate in simulation time at a speed limited only by the available computing resources. In this report, we describe how a computer system emulator can be used as part of a model based testing environment; specifically, we show that a complete software stack including operating system and application software - can be deployed within a simulated environment, and that these simulations can proceed as fast as possible. To illustrate this approach to model based testing, we describe how it is being used to test several building control systems that act to coordinate air conditioning loads for the purpose of reducing peak demand. These tests involve the use of ADEVS (A Discrete Event System Simulator) and QEMU (Quick Emulator) to host the operational software within the simulation, and a building model developed with the MODELICA programming language using Buildings Library and packaged as an FMU (Functional Mock-up Unit) that serves as the virtual test environment.

97 MATHEMATICS AND COMPUTING↗

Detecting Data-Races in High-Performance Computing

High-performance computing is susceptible to data-race bugs. Data races occur when sequences of computed events do not happen in the intended order, a significant barrier to the integrity of parallel programs using shared-memory architectures. Many approaches to data-race detection are based on traditional static-analysis techniques that typically execute on a program’s source code or control-flow graph (the graphical representation of all possible orders of events in the execution of a program). Similar to classical data-flow analyses, such tools can produce false alarms that report spurious race conditions on error free programs. We have developed a software verification technique that requires as input only a program’s source code and can automatically detect a data-race bug which definitely exists, determine that a program is definitely data-race free, or report that it cannot determine either of the two cases.

97 MATHEMATICS AND COMPUTING↗

The VTK-m Users' Guide (V.2.0)

High-performance computing relies on ever finer threading. Advances in processor technology include ever greater numbers of cores, hyperthreading, accelerators with integrated blocks of cores, and special vectorized instructions, all of which require more software parallelism to achieve peak performance. Traditional visualization solutions cannot support this extreme level of concurrency. Extreme scale systems require a new programming model and a fundamental change in how we design algorithms. To address these issues we created VTK-m: the visualization toolkit for multi-/many-core architectures. VTK-m supports a number of algorithms and the ability to design further algorithms through a top-down design with an emphasis on extreme parallelism. VTK-m also provides support for finding and building links across topologies, making it possible to perform operations that determine manifold surfaces, interpolate generated values, and find adjacencies. Although VTK-m provides a simplified high-level interface for programming, its template-based code removes the overhead of abstraction. VTK-m simplifies the development of parallel scientific visualization algorithms by providing a framework of supporting functionality that allows developers to focus on visualization operations. Consider the listings in Figure 1.1 that compares the size of the implementation for the Marching Cubes algorithm in VTK-m with the equivalent reference implementation in the CUDA software development kit. Because VTK-m internally manages the parallel distribution of work and data, the VTK-m implementation is shorter and easier to maintain. Additionally, VTK-m provides data abstractions not provided by other libraries that make code written in VTK-m more versatile.

97 MATHEMATICS AND COMPUTING↗

Geohydrodynamic Parameters and Their Implications on the Coastal Conservation: A Case Study of Abak Local Government Area (LGA), Akwa Ibom State, Southern Nigeria

A total of 14 vertical electrical soundings using Schlumberger electrode configuration and the complementary laboratory analysis of aquifer samples were carried out in the Abak Local Government Area of Akwa Ibom State, the coastal region of Nigeria. The study focused on the estimation of geohydrodynamic parameters of the frequently exploited aquifers and the implication of hydrodynamic parameters on the lithostratigraphy and the anticipated exposure of the assessed geologic formation at the shorelines. These parameters were porosity (ϕ), tortuosity (τ), formation factor (F), aquifer water formation resistivity (R{sub w}) and coefficient of permeability/hydraulic conductivity (K). Computation of the effective porosities from the aquifer cuttings was carried out using wet weight–dry weight technique and petrophysical techniques. The F values were computed using the aquifer formation bulk resistivity measured from field 1-D resistivity data analysis, whose interpretation was constrained by nearby borehole information. The formation pore water resistivities were estimated from the laboratory using electrical resistivity metre. The Win RESIST software program was used in interpreting the field data electronically. The results of interpretation gave the primary parameters of saturated and unsaturated units of the coastal regions used in this work. The area generally shows seemingly high porosity with high coefficient of permeability. The primary and secondary parameters have been contoured to model their distributions. Besides, some functional relations have been realized through regression analyses. The contour distribution of the geohydrodynamic parameters indicates the vulnerability of the water repositories to contaminations as well as the vulnerability of the shoreline to waterborne erosion. The seemingly high effective porosity in the compliant laboratory and calculated values indicate that the coastal region is neither lithified nor compacted/consolidated. This signals the possibility of the formation to be easily eroded, weathered or flooded where these units are exposed to water current. With these revelations, the shorelines could be properly managed and conserved by geotechnically reinforcing with hard and water-resistant concrete that can protect the vulnerable and erosion-prone porous sediments.

58 GEOSCIENCES↗

Delivering Science on Day One

While benchmarking software is useful for testing the performance limits and stability of Argonne National Laboratory’s new Theta supercomputer, there is no substitute for running real applications to explore the system’s potential. The Argonne Leadership Computing Facility’s Theta Early Science Program, modeled after its highly successful code migration program for the Mira supercomputer, has one primary aim: to deliver science on day one. Here is a closer look at the type of science problems that will be getting early access to Theta, a next-generation machine being rolled out this year.

Williams, Timothy J.↗

Two (or more) for one: Identifying classes of household energy- and water-saving measures to understand the potential for positive spillover

A key component of behavior-based energy conservation programs is the identification of target behaviors. A common approach is to target behaviors with the greatest energy-saving potential. The concept of behavioral spillover introduces further considerations, namely that adoption of one energy-saving behavior may increase (or decrease) the likelihood of other energy-saving behaviors. This research aimed to identify and describe household energy- and water-saving measure classes within which positive spillover is likely to occur (e.g., adoption of energy-efficient appliances may correlate with adoption of water-efficient appliances), and explore demographic and psychographic predictors of each. Nearly 1,000 households in a California city were surveyed and asked to report whether they had adopted 75 different energy- and/or water-saving measures. Principal Component Analysis and Network Analysis based on correlations between adoption of these diverse measures revealed and characterized eight water-energy-saving measure classes: Water Conservation, Energy Conservation, Maintenance and Management, Efficient Appliance, Advanced Efficiency, Efficient Irrigation, Green Gardening, and Green Landscaping. Understanding these measure classes can help guide behavior-based energy program developers in selecting target behaviors and designing interventions.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

High-Assurance Software: LDRD Report.

This report summarizes our work on methods for developing high-assurance digital systems. We present an approach for understanding and evaluating trust issues in digital systems, and for us- ing computer-checked proofs as a means for realizing this approach. We describe the theoretical background for programming with proofs based on the Curry-Howard correspondence, connect- ing the field of logic and proof theory to programs. We then describe a series of case studies, intended to demonstrate how this approach might be adopted in practice. In particular, our stud- ies elucidate some of the challenges that arise with this style of certified programming, including induction principles, generic programming, termination requirements, and reasoning over infinite state spaces.

Hulette, Geoffrey Compton↗

Improving the Capabilities and Computational Efficiency of the RTE+RRTMGP Radiation Code (Final Report)

This report details progress on the RTE+RRTMGP radiation codes made during the period of performance. RTE+RRTMGP is a set of codes for computing radiative fluxes in planetary atmospheres. RRTMGP uses a k-distribution to provide an optical description (absorption and possibly Rayleigh optical depth) of the gaseous atmosphere, along with the relevant source functions, on a pre-determined spectral grid given temperatures, pressures, and gas concentration. RTE computes fluxes given spectrally-resolved optical descriptions and source functions. Spectrally-resolved fluxes are summarized (“reduced”) via a user extensible class. The initial release of the code and the design choices are described in Pincus et al. 2019; the codes are available on Github. Although RRTMGP was based on current (at the time) empirical spectroscopic data, RTE and RRTMGP were developed in large part to modernize software practices. The design focused on flexibility broadly interpreted: by separating code from data and allowing data to drive computation; in coupling to the host model (e.g. the coupling of clouds to radiative fluxes is user-controlled); with respect to programming languages (computational tasks are accessed via widely-compatible C interfaces); and with respect to hardware (the codes run on a range of CPU and GPU architectures). The code also puts an emphasis on modularity and clarity. RTE+RRTMGP v1.0 was released in September 20219. This award supported the evolution of the RTE+RRTMGP code base to support greater flexibility, accuracy, and efficiency.

54 ENVIRONMENTAL SCIENCES↗