Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “source code”

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 307 records · Page 17

Symbolic construction of the chemical Jacobian of quasi-steady state (QSS) chemistries for Exascale computing platforms

The Quasi-Steady State Approximation (QSSA) can be an effective tool for reducing the size and stiffness of chemical mechanisms for implementation in computational reacting flow solvers. However, for many applications, the resulting model still requires implicit methods for efficient time integration. Here, in this paper, we outline an approach to formulating the QSSA reduction that is coupled with a strategy to generate C++ source code to evaluate the net species production rates, and the chemical Jacobian. The code-generation component employs a symbolic approach enabling a simple and effective strategy to analytically compute the chemical Jacobian. For computational tractability, the symbolic approach needs to be paired with common subexpression elimination which can negatively affect memory usage. Several solutions are outlined and successfully tested on a 3D multipulse ignition problem, thus allowing portable application across chemical model sizes and GPU capabilities. The implementation of the proposed method is available at https://github.com/AMReX-Combustion/PelePhysics under an open-source license.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Automated Crystal Orientation Mapping in py4DSTEM using Sparse Correlation Matching

Crystalline materials used in technological applications are often complex assemblies composed of multiple phases and differently oriented grains. Robust identification of the phases and orientation relationships from these samples is crucial, but the information extracted from the diffraction condition probed by an electron beam is often incomplete. We have developed an automated crystal orientation mapping (ACOM) procedure which uses a converged electron probe to collect diffraction patterns from multiple locations across a complex sample. We provide an algorithm to determine the orientation of each diffraction pattern based on a fast sparse correlation method. We demonstrate the speed and accuracy of our method by indexing diffraction patterns generated using both kinematical and dynamical simulations. We have also measured orientation maps from an experimental dataset consisting of a complex polycrystalline twisted helical AuAgPd nanowire. From these maps we identify twin planes between adjacent grains, which may be responsible for the twisted helical structure. All of our methods are made freely available as open source code, including tutorials which can be easily adapted to perform ACOM measurements on diffraction pattern datasets.

36 MATERIALS SCIENCE↗

SU-G-BRB-02: An Open-Source Software Analysis Library for Linear Accelerator Quality Assurance

Purpose: Routine linac quality assurance (QA) tests have become complex enough to require automation of most test analyses. A new data analysis software library was built that allows physicists to automate routine linear accelerator quality assurance tests. The package is open source, code tested, and benchmarked. Methods: Images and data were generated on a TrueBeam linac for the following routine QA tests: VMAT, starshot, CBCT, machine logs, Winston Lutz, and picket fence. The analysis library was built using the general programming language Python. Each test was analyzed with the library algorithms and compared to manual measurements taken at the time of acquisition. Results: VMAT QA results agreed within 0.1% between the library and manual measurements. Machine logs (dynalogs & trajectory logs) were successfully parsed; mechanical axis positions were verified for accuracy and MLC fluence agreed well with EPID measurements. CBCT QA measurements were within 10 HU and 0.2mm where applicable. Winston Lutz isocenter size measurements were within 0.2mm of TrueBeam’s Machine Performance Check. Starshot analysis was within 0.2mm of the Winston Lutz results for the same conditions. Picket fence images with and without a known error showed that the library was capable of detecting MLC offsets within 0.02mm. Conclusion: A new routine QA software library has been benchmarked and is available for use by the community. The library is open-source and extensible for use in larger systems.

43 PARTICLE ACCELERATORS↗

Shifting Left for Machine Learning: An Empirical Study of Security Weaknesses in Supervised Learning-based Projects

Context: Supervised learning-based projects (SLPs), i.e., software projects that use supervised learning algorithms, such as decision trees are useful for performing classification-related tasks. Yet, security weaknesses, such as the use of hard-coded passwords in SLPs, can make SLPs susceptible to security attacks. A characterization of security weaknesses in SLPs can help practitioners understand the security weaknesses that are frequent in SLPs and adopt adequate mitigation strategies. Objective: The goal of this paper is to help practitioners se-curely develop supervised learning-based projects by conducting an empirical study of security weaknesses in supervised learning-based projects. Methodology: We conduct an empirical study by quantifying the frequency of security weaknesses in 278 open source SLPs. Results: We identify 22 types of security weaknesses that occur in SLPs. We observe ‘use of potentially dangerous function’ to be the most frequently occurring security weakness in SLPs. Of the identified 3,964 security weaknesses, 23.79 % and 40.49 % respectively, appear for source code files used to train and test models. We also observe evidence of co-location, e.g., instances of command injection co-locates with instances of potentially dangerous function. Conclusion: Based on our findings, we advocate for a shift left approach for SLP development with security-focused code reviews, and application of security static analysis.

Bhuiyan, Farzana Ahamed↗

CLC: A cross-level program characterization method

Characterization of program execution plays a key role in performance improvement. There are numerous transformations applied to each step that a program takes on its lowering from source code to a compiler intermediate representation to machine language to microarchitecture-specific execution. The unpredictable benefit of each transformation step could lead a notionally superior algorithm to exhibit inferior performance once actually run, and it can be hard to discern which step in the transformation path contradicted the code developer’s assumptions. Conventional approaches to program-execution characterization consider the behavior after only a single one of those steps, which limits the information that can be provided to the user. To help address the issue of myopic views of program execution, this paper presents a novel cross-level characterization approach for understanding the behavior of program execution at different levels in the process of writing, compiling, and running a program. We show that this approach provides a richer view of the sources of performance gains and losses and helps identify program execution in a more accurate manner.

97 MATHEMATICS AND COMPUTING↗

ITS Version 6.7: The Integrated TIGER Series of Coupled Electron/Photon Monte Carlo Transport Codes User's Manual

ITS is a powerful software package permitting state-of-the-art Monte Carlo solution of linear time-independent coupled electron/photon radiation transport problems, with or without the presence of macroscopic electric and magnetic fields of arbitrary spatial dependence. Our goal has been to simultaneously maximize operational simplicity and physical accuracy. Through a set of preprocessor directives, the user selects one of the many ITS codes. The ease with which the make system is applied combines with an input scheme based on order-independent descriptive keywords that makes maximum use of defaults and internal error checking to provide experimentalists and theorists alike with a method for the routine but rigorous solution of sophisticated radiation transport problems. Physical rigor is provided by employing accurate cross sections, sampling distributions, and physical models for describing the production and transport of the electron/photon cascade from 1.0 GeV down to 1.0 keV. The availability of source code permits the more sophisticated user to tailor the codes to specific applications and to extend the capabilities of the codes to more complex applications. Version 6, the latest version of ITS, contains (1) improvements to the ITS 5.0 codes, and (2) conversion to Fortran 95. The general user friendliness of the software has been enhanced through memory allocation to reduce the need for users to modify and recompile the code.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

pysrim: Automation, Analysis, and Plotting of SRIM Calculations

The behavior of ions traveling through a material is of great interest to many fields. For instance, radiation damage in nuclear materials and ion beam modification of materials are most concerned with understanding the formation and evolution of defects along the ion path (Was 2016). Some of the important properties that can be gleaned from investigating the initial damage from the ion include: numbers of interstitials and vacancies produced, energy deposited per unit length to electrons and atomic nuclei, track diameter, and implanted ion profile. These properties enable further simulations and allow computing a common unit of radiation damage dose, displacements per atom (dpa), which can be used to compare irradiation experiments with different ions (Backman et al. 2013) (Stoller et al. 2013). Additionally, the ejection of materials near the surface due to incident ions is important to sputtering and ion-beam analysis techniques, such as elastic recoil detection analysis (ERDA) and secondary ion mass spectrometry (SIMS) (Vickerman and Gilmore 2011). The interaction of ions within a material can be broken into two parts: electronic and nuclear stopping. Electronic stopping is the energy lost from the ion due to inelastic collisions with electrons along its path. Nuclear stopping is the energy lost due to elastic collisions between the ion and atomic nuclei within the material. The Stopping and Range of Ions in Matter (SRIM) code is a well known software in the radiation damage and ion-beam communities that allows the simulation, via Monte Carlo, of ions through a material by modeling the energy transfer through electronic and nuclear stopping (J. F. Ziegler, Ziegler, and Biersack 2010). SRIM was originally developed in 1985 and has had numerous updates on the electronic stopping powers since then, with the nuclear stopping well explained by the ZBL potential (J. F. Ziegler 1988). The executable SRIM is free to use for non-commercial use but the source code is not available to the community despite requests. While SRIM is a scientifically accurate code it does not get updated frequently and has many bugs from a usability standpoint.

97 MATHEMATICS AND COMPUTING↗

Hardware Aware Mitigation of Timing Side-Channel Vulnerabilities in Critical Infrastructure Software

Program runtime/timing attacks exploit variations in a program’s execution times to extract sensitive information from the program (e.g. encryption keys, sensitive variable data, intellectual property). State-of-the-art solutions to runtime sidechannel attacks attempt to balance the execution time of the sensitive code for different control flow paths to eliminate the timing leakage. However, during the mitigation process, most techniques do not consider the underlying hardware/device on which the target program is supposed to run on. This can lead to over-fixing (unnecessary extra operations), under-fixing (not solving the imbalance properly), and even failures. We propose DISARM, a joint hardware-software methodology (unlike any existing solution) for mitigating runtime side-channel vulnerabilities that utilizes timing values from real embedded devices to generate targeted software fixes. We implement DISARM to support C/C++/Java source codes and validate it across 22 standard benchmarks. DISARM outperforms state-of-the-art solutions such as PENDULUM and DifFuzzAR in terms of execution time overhead (up to −46%), code size overhead (up to −10%), and correctness (no failures) on five different embedded/edge devices.

Suha, Tasneem [University of Maine]↗

DISARM: Target Electronic Device Informed Mitigation of Software Runtime Side-Channel Vulnerabilities

Program runtime/timing attacks exploit variations in a program’s execution times to extract sensitive information from the program (e.g. encryption keys, sensitive variable data, intellectual property). State-of-the-art solutions to runtime side-channel attacks attempt to balance the execution time of the sensitive code for different control flow paths to eliminate the timing leakage. However, during the mitigation process, most techniques do not consider the underlying hardware/device on which the target program is supposed to run on. This can lead to over-fixing (unnecessary extra operations), under-fixing (not solving the imbalance properly), and even failures. Here, we propose DISARM, a joint hardware-software methodology (unlike any existing solution) for mitigating runtime side-channel vulnerabilities that utilizes timing values from real embedded devices to generate targeted software fixes. We implement DISARM to support C/C++/Java source codes and validate it across 22 standard benchmarks. DISARM outperforms state-of-the-art solutions such as PENDULUM and DifFuzzaR in terms of execution time overhead, code size overhead, and correctness on five different embedded/edge devices.

Timing/runtime side-channel↗

RVA: A Plugin for ParaView 3.14

RVA is a plugin developed for the 64-bit Windows version of the ParaView 3.14 visualization package. RVA is designed to provide support in the visualization and analysis of complex reservoirs being managed using multi-fluid EOR techniques. RVA, for Reservoir Visualization and Analysis, was developed at the University of Illinois at Urbana-Champaign, with contributions from the Illinois State Geological Survey, Department of Computer Science and National Center for Supercomputing Applications. RVA was designed to utilize and enhance the state-of-the-art visualization capabilities within ParaView, readily allowing joint visualization of geologic framework and reservoir fluid simulation model results. Particular emphasis was placed on enabling visualization and analysis of simulation results highlighting multiple fluid phases, multiple properties for each fluid phase (including flow lines), multiple geologic models and multiple time steps. Additional advanced functionality was provided through the development of custom code to implement data mining capabilities. The built-in functionality of ParaView provides the capacity to process and visualize data sets ranging from small models on local desktop systems to extremely large models created and stored on remote supercomputers. The RVA plugin that we developed and the associated User Manual provide improved functionality through new software tools, and instruction in the use of ParaView-RVA, targeted to petroleum engineers and geologists in industry and research. The RVA web site (http://rva.cs.illinois.edu) provides an overview of functions, and the development web site (https://github.com/shaffer1/RVA) provides ready access to the source code, compiled binaries, user manual, and a suite of demonstration data sets. Key functionality has been included to support a range of reservoirs visualization and analysis needs, including: sophisticated connectivity analysis, cross sections through simulation results between selected wells, simplified volumetric calculations, global vertical exaggeration adjustments, ingestion of UTChem simulation results, ingestion of Isatis geostatistical framework models, interrogation of joint geologic and reservoir modeling results, joint visualization and analysis of well history files, location-targeted visualization, advanced correlation analysis, visualization of flow paths, and creation of static images and animations highlighting targeted reservoir features.

Source record↗

RVA: A Plugin for ParaView 3.14

RVA is a plugin developed for the 64-bit Windows version of the ParaView 3.14 visualization package. RVA is designed to provide support in the visualization and analysis of complex reservoirs being managed using multi-fluid EOR techniques. RVA, for Reservoir Visualization and Analysis, was developed at the University of Illinois at Urbana-Champaign, with contributions from the Illinois State Geological Survey, Department of Computer Science and National Center for Supercomputing Applications. RVA was designed to utilize and enhance the state-of-the-art visualization capabilities within ParaView, readily allowing joint visualization of geologic framework and reservoir fluid simulation model results. Particular emphasis was placed on enabling visualization and analysis of simulation results highlighting multiple fluid phases, multiple properties for each fluid phase (including flow lines), multiple geologic models and multiple time steps. Additional advanced functionality was provided through the development of custom code to implement data mining capabilities. The built-in functionality of ParaView provides the capacity to process and visualize data sets ranging from small models on local desktop systems to extremely large models created and stored on remote supercomputers. The RVA plugin that we developed and the associated User Manual provide improved functionality through new software tools, and instruction in the use of ParaView-RVA, targeted to petroleum engineers and geologists in industry and research. The RVA web site (http://rva.cs.illinois.edu) provides an overview of functions, and the development web site (https://github.com/shaffer1/RVA) provides ready access to the source code, compiled binaries, user manual, and a suite of demonstration data sets. Key functionality has been included to support a range of reservoirs visualization and analysis needs, including: sophisticated connectivity analysis, cross sections through simulation results between selected wells, simplified volumetric calculations, global vertical exaggeration adjustments, ingestion of UTChem simulation results, ingestion of Isatis geostatistical framework models, interrogation of joint geologic and reservoir modeling results, joint visualization and analysis of well history files, location-targeted visualization, advanced correlation analysis, visualization of flow paths, and creation of static images and animations highlighting targeted reservoir features.

Source record↗

Noncollinear ground states of solids with a source-free exchange correlation functional

In this paper, we expand upon the source-free (SF) exchange correlation (XC) functional developed by Sangeeta Sharma and coworkers to plane-wave density functional theory (DFT) based on the projector augmented wave (PAW) method. This constraint is implemented by the current authors within the VASP source code, using a fast Poisson solver that capitalizes on the parallel three-dimensional fast Fourier transforms (FFTs) implemented in VASP. Using this modified XC functional, we explore the improved convergence behavior that results from applying this constraint to the GGA-PBE+U+J functional. In the process, we compare the noncollinear magnetic ground state computed by each functional and their SF counterpart for a select number of magnetic materials in order to provide a metric for comparing with experimentally determined magnetic orderings. We observe significantly improved agreement with experimentally measured magnetic ground-state structures after applying the source-free constraint. Furthermore, we explore the importance of considering probability current densities in spin-polarized systems, even under no applied field. We analyze the XC torque as well, in order to provide theoretical and computational analyses of the net XC magnetic torque induced by the source-free constraint. Along these lines, we highlight the importance of properly considering the real-space integral of the source-free local magnetic XC field. Our analyses on probability currents, net torque, and constant terms draw additional links to the rich body of previous research on spin-current density functional theory (SCDFT), and pave the way for future extensions and corrections to the SF corrected XC functional.

75 CONDENSED MATTER PHYSICS, SUPERCONDUCTIVITY AND↗

Ongoing solution reproducibility of earth system models as they progress toward exascale computing

We present a methodology for solution reproducibility for the Energy Exascale Earth System Model during its ongoing software infrastructure development to prepare for exascale computers. The nonlinear chaotic nature of climate system simulations precludes traditional model verification approaches since machine precision differences—resulting from code refactoring, changes in software environment, and so on—grow exponentially to a different weather state. Here, we leverage the nature of climate as a statistical description of the atmosphere in order to establish model reproducibility. We evaluate the degree to which two-sample equality of distribution tests can confidently detect the change in climate from minor tuning parameter changes on model output variables in order to establish the level of difference that indicates a new climate. To apply this (baselined test), we target a section of the model’s development cycle wherein no intentional science changes have been applied to its source code. We compare an ensemble of short simulations that were conducted using a verified model configuration against a new ensemble with the same configuration but with the latest software infrastructure (Common Infrastructure for Modeling the Earth, CIME5.0), compiler versions, and software libraries. We also compare these against ensemble simulations conducted using the original version of the software infrastructure (CIME4.0) of the earlier model configuration, but with the latest compilers and software libraries, to test the impact of new compilers and libraries in isolation from additional software infrastructure. The two-sample equality of distribution tests indicates that these ensembles indeed represent the same climate.

97 MATHEMATICS AND COMPUTING↗

Real-time Object Bounding in LiDAR Data With Computer Vision

The Multimodal Measurement System is a roadside radiation measurement testbed used to detect radiation sources in passing vehicles. It works by combining sensor signals from various modalities to produce a thorough scan of the source. A LiDAR sensor is used to measure the dimensions of the vehicle and provide a velocity estimate. However, the current LiDAR setup uses propriety software for which the source code is unavailable and cannot be updated to improve performance. Therefore, it is imperative to the accuracy of the analysis to create a custom vehicle detection that can return the dimensions and velocity of passing vehicles in real time. This new custom detection is written in C++ using the PointCloud Library, which keeps it lightweight. It also utilizes Docker and the Robot Operating System, which allows the versatility of running both on a small computer or the Lawrence Livermore National Laboratory cluster while utilizing different models of LiDAR sensors. The custom detection outperforms the current detection model, which increases the accuracy of radiation source detection.

97 MATHEMATICS AND COMPUTING↗

Targeting GPUs with OpenMP directives on Summit: A simple and effective Fortran experience

We use OpenMP to target hardware accelerators (GPUs) on Summit, a newly deployed supercomputer at the Oak Ridge Leadership Computing Facility (OLCF), demonstrating simplified access to GPU devices for users of our astrophysics code GenASiS and useful speedup on a sample fluid dynamics problem. We modify our workhorse class for data storage to include members and methods that significantly streamline the persistent allocation of and association to GPU memory. Users offload computational kernels with OpenMP target directives that are rather similar to constructs already familiar from multi-core parallelization. In this initial example we ask, “With a given number of Summit nodes, how fast can we compute with and without GPUs?”, and find total wall time speedups of ~ 12X. We also find reasonable weak scaling up to 8000 GPUs (1334 Summit nodes). We make available the source code from this work at https://github.com/GenASiS/GenASiS_Basics.

97 MATHEMATICS AND COMPUTING↗

Model files for estimating snow dynamics and stable water isotopes across the East River, CO.

A coupled hydrologic and snowpack stable water isotope model is used to assesses controls on isotopic inputs across the East River, Colorado, a large, mountainous basin. The hydrologic model uses the semi-empirical, spatially distributed and publicly available U.S. Geological Survey numerical code Precipitation-Modelling Runoff System (PRMS). Water and energy are tracked daily through the atmosphere, canopy and subsurface at a 100-m grid resolution. The isotope mass balance model follows previous work by Ala-aho et al. (2017) to track stable isotopes entering the soil system as snowmelt or rain. Water stores and fluxes needed for the isotope model use hydrologic model output for each timestep and model modeled grid location. This data package provides all files related to the hydrologic model (executable, input and output files), the isotopic model calibration and the historic isotopic model (water years 2015-2020). The isotope model source code and executable are provided. The file "readme.txt" includes information on the file structure, steps to run the model, and description of included folders.

54 ENVIRONMENTAL SCIENCES↗

Sensitivity Coefficients Calculated for the Prompt Neutron Decay Constant at or Near Delayed Critical [Abstract]

Experimenters at Los Alamos National Laboratory (LANL) measure the prompt neutron decay constant for many experiments at the National Criticality Experiments Research Center (NCERC) to infer reactivity and the effective neutron multiplication factor. These quantities are very important for nuclear criticality safety and validating nuclear data. Uncertainty in measures of criticality of an experimental configuration can be determined prior to physically performing the experiment by applying first order perturbation theory to Monte Carlo codes, such as MCNP®. The first order perturbation theory produces first derivatives of some nuclear parameter to nuclear data (e.g., cross section data). This first derivative is commonly referred to as a sensitivity coefficient. Currently, the MCNP® software has the capability of computing effective neutron multiplication factor sensitivity coefficients to cross section data. This work builds off of this MCNP® capability and the first order perturbation theory to provide a method of calculating sensitivity coefficients for the prompt neutron decay constant at or near delayed critical to cross section data. The prompt neutron decay constant sensitivity coefficient calculated in this work does not depend on any modification of the MCNP® source code. Prompt neutron decay constant sensitivity coefficient calculations can be used to infer reactivity and effective neutron multiplication factor sensitivity coefficient values as well. By investigating the trends of prompt neutron decay constant sensitivity coefficients for nuclide-reaction pairs across energy spectra, experiments can be designed to maximize or minimize the uncertainty in the prompt neutron decay constant in a particular energy region, which can lead to further optimization studies. Prompt neutron decay constant sensitivity coefficients will be calculated for the Jezebel benchmark. Subsequently, these sensitivity coefficients will be used in a data assimilation process to determine if there is or are optimal experiments that can be performed to provide insight into adjustments of uncertain/inaccurate cross section data. Specifically, the effect of the prompt neutron decay constant sensitivity coefficients on the nuclear data-induced uncertainty in the effective neutron multiplication factor will be examined

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Snippet Open-Source Specification Synopsis

Snippet is a collaborative source code auditing tool developed by Sandia National Laboratories, in conjunction with researchers from other government agencies and partners. As a tool for use by groups of auditors, Snippet showed the value of providing in-line annotations that captured the thoughts of auditors in such a way that teams of auditors could share their insights. Snippet users found that the annotation mechanisms improved the auditing process but were frustrated at having to learn another environment. To address this issue, collaborators made extensions to existing Integrated Development Environments (IDEs) to incorporate functionality that mimics Snippet's behaviors. This document is one of a pair of documents. The other document, "Snippet Open-Source Specification", goes into details about the history and reasoning behind the requirements made in this document. That document provides for a broader understanding of the motivations backing this document. This document provides the complete specification for collaborative annotation, and a characterization of each specification as required or recommended. Tools that implement these specifications will be considered Snippet compliant. The intent is that complete implementation of these specifications will enable seamless sharing of annotation information between disjoint tools.

97 MATHEMATICS AND COMPUTING↗