Search NASA⌕ Search

SEARCH · Search NASA

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

Unified Language Frontend for Physic-Informed AI/ML

Artificial intelligence and machine learning (AI/ML) are becoming important tools for scientific modeling and simulation as in several other fields such as image analysis and natural language processing. ML techniques can leverage the computing power available in modern systems and reduce the human effort needed to configure experiments, interpret and visualize results, draw conclusions from huge quantities of raw data, and build surrogates for physics based models. Domain scientists in fields like fluid dynamics, microelectronics and chemistry can automate many of their most difficult and repetitive tasks or improve the design times by use of the faster ML-surrogates. However, modern ML and traditional scientific highperformance computing (HPC) tend to use completely different software ecosystems. While ML frameworks like PyTorch and TensorFlow provide Python APIs, most HPC applications and libraries are written in C++. Direct interoperability between the two languages is possible but is tedious and error-prone. In this work, we show that a compiler-based approach can bridge the gap between ML frameworks and scientific software with less developer effort and better efficiency. We use the MLIR (multi-level intermediate representation) ecosystem to compile a pre-trained convolutional neural network (CNN) in PyTorch to freestanding C++ source code in the Kokkos programming model. Kokkos is a programming model widely used in HPC to write portable, shared-memory parallel code that can natively target a variety of CPU and GPU architectures. Our compiler-generated source code can be directly integrated into any Kokkosbased application with no dependencies on Python or cross-language interfaces.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

CatMass : software for calculating optimal sample masses for X-ray absorption spectroscopy experiments involving complex sample compositions

This paper presents software for calculating the optimal mass of samples with complex compositions ( e.g. supported metal catalysts) for X-ray absorption spectroscopy (XAS) and scattering measurements. The ability to calculate the sample mass and other relevant parameters needed for an XAS measurement allows experimentalists to be better prepared in terms of detector selection, energy range of scan and overall time needed to complete the measurement, thus increasing efficiency. CatMass builds on existing sample mass calculators allowing users to determine the optimum sample preparation, collection geometry, usable energy range for a scan and approximate edge step of the absorption event. Visualization tools present the absorption calculation results in a format familiar to XAS experimentalists, with the added ability to save calculations and plots for future reference or recalculation. CatMass is a program broadly applicable in catalysis and is helpful for users with complex samples due to composition/stoichiometry or multiple competing elements.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Scoreboard

Emerging HPC machines have given rise to enhanced compute power that far outstrips the machine's ability to save large scale results for post-processing. To combat this, in situ data analysis techniques are slowly being adopted. With in situ data management favoring workflows composed of multiple simulations and analyses connected in transit on heterogeneous machines, scientists and engineers need a tool that enables them to create data extracts, visualizations, and interactively monitor and steer their simulations. Scoreboard Phase II is a next generation analysis software that supports composite in transit workflows on heterogeneous architectures and restores interactivity to in situ data analysis through simulation monitoring and computational steering. Scoreboard provides a simulation dashboard with graphs of metrics over time, controls for setting custom simulation steering parameters, controls for managing the set of data extracts being produced in the simulation, as well as the ability to explore data extracts, all from a web browser. Realizing the vision outlined in this project required research into making a system that integrates end to end from simulations all the way to the user. In situ tools generally suffer from complexity and excessive software dependencies. Scoreboard, by contrast, is easy to build and integrate into simulation codes and it provides first class FORTRAN support. The Scoreboard library is capable of in situ and in transit data analysis that can produce data extracts commonly needed for Computational Fluid Dynamics (CFD) analysis. Simulations can transparently stage data in transit to a Scoreboard Endpoint program, which can accept their data and produce the requested data extracts. This lets simulations return to their work while the Endpoint works on the analysis. Efficiently staging the data at scale was a topic of this research. Scoreboard provides the means to let the user manage data extracts and monitor/steer many simulations from a web browser. This area of the research focused on discovery of in transit network components to expose and control their steering parameters within an interactive browser-based user interface that includes: system topology, gathered metrics, notifications, dynamically-generated steering controls, and exploration of visualization data products.

Whitlock, BradJoseph [Intelligent Light] (00000001↗

VADER: A Tool for Criticality Safety Validation

The purpose of criticality safety is to prevent any inadvertent criticality from occurring during the handling or storage of fissile material. Calculations are frequently used to demonstrate that a sufficient subcritical margin exists. Validation is a key aspect of the evaluation process, establishing the suitability, accuracy, and associated uncertainty of the computational method and data to be used for the intended application. The validation process is performed by comparing the results of critical experiments with the calculated results from models of the experiments using the computational method to be validated. Laboratory critical experiments are controlled systems that achieve a k eff of approximately 1 in order to investigate the parameters at which such a critical condition is achieved. The validation parameters that are traditionally applied to safety analysis calculations are the bias and the bias uncertainty . The bias is the deviation of the average k eff of the validation suite from unity. The bias uncertainty accounts for the statistical uncertainty in the bias based on the standard deviation, sample size, and distribution of k eff values of the validation suite. The values of bias and bias uncertainty ensure that the systems predicted to be subcritical by the computational method will indeed be subcritical. The bias and bias uncertainty are often combined to determine an upper subcritical limit (USL) or computational margin that can then be applied to safety analysis calculations. Many methods have been developed by different organizations to calculate the bias and bias uncertainty for various types of criticality analyses. Each of these methods typically requires that the validity of various underpinning statistical assumptions be confirmed to demonstrate that the method is appropriate for the analysis of a given validation suite. An example of the validation decision making flow is shown in Fig.1. As shown in Fig. 1, the analyst performing the validation fits a trend line to the data and performs a test to determine if the trend was a statistically better representation of the data than if it were treated as an uncorrelated sample. If the trend line is a better representation of the data, then the analyst uses any one of a number of trending techniques to determine the bias and bias uncertainty. If a trend is not an appropriate representation of the data, then the analyst proceeds to perform a normality assessment for the data. If the normal assumption can be shown to be acceptable, then the analyst calculates the bias and bias uncertainty with the parametric technique. If the assumption of normality cannot be justified, then the nonparametric technique is used. Once the decision flow has been followed and the appropriate technique has been selected, the bias and bias uncertainty is typically combined with an administrative margin to determine a USL below which calculated values of k eff for safety analysis models can be considered subcritical. The calculations used in each decision are often performed with spreadsheets or with small programs available at various sites performing criticality analyses. Expertise in understanding and interpreting the results must be maintained to perform these calculations. This can often be an error-prone process. Oak Ridge National Laboratory (ORNL) is currently developing the Validation and Data Evaluation Resource (VADER) to simplify and automate the criticality safety validation process and to provide a software quality assurance pedigree to the calculational methods used. This paper discusses the use of the Fulcrum user interface with VADER, the anticipated initial capabilities of VADER to perform validation analyses, and the output from the code.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Power & Water Facility and Infrastructure Planning: CRADA Final Report

Los Alamos National Laboratory (LANL) has developed software and expertise for planning power grids and for examining the human resource issues for a nuclear power program. These programs, and other LANL software innovations, can offer an efficient manner in which to assist the power and water generation industries in both developed and undeveloped countries.

24 POWER TRANSMISSION AND DISTRIBUTION↗

DCA_Tools

HPC software for ab-initio, condensed-matter physics, quantum mechanics calculations needs to be built on top of well tested libraries some of which address requirements unique to the programming domain. During the development of the DCA++ code, that we use in our research, we have developed a collection of libraries that may be of use to other computational scientists working in the same or similar domains. The libraries include: a) a pythonic input-language system, b) tensors whose shape is constructed from generalized dimension objects such at time domains. frequency domains, momentum domains, vertex domains et. al. and c) linear algebra operations that resolve to BLA/LAPACK operations when possible. This supports the implementation of Greens functions and operations on them such as are used in condensed matter physics.

Summers, Michael S↗

2014 Runtime Systems Summit. Runtime Systems Report

This report summarizes runtime system challenges for exascale computing, that follow from the fundamental challenges for exascale systems that have been well studied in past reports, e.g., [6, 33, 34, 32, 24]. Some of the key exascale challenges that pertain to runtime systems include parallelism, energy efficiency, memory hierarchies, data movement, heterogeneous processors and memories, resilience, performance variability, dynamic resource allocation, performance portability, and interoperability with legacy code. In addition to summarizing these challenges, the report also outlines different approaches to addressing these significant challenges that have been pursued by research projects in the DOE-sponsored X-Stack and OS/R programs. Since there is often confusion as to what exactly the term “runtime system” refers to in the software stack, we include a section on taxonomy to clarify the terminology used by participants in these research projects. In addition, we include a section on deployment opportunities for vendors and government labs to build on the research results from these projects. Finally, this report is also intended to provide a framework for discussing future research and development investments for exascale runtime systems, and for clarifying the role of runtime systems in exascale software.

97 MATHEMATICS AND COMPUTING↗

Self-Healing Attack-Resilient PMU Network for Power System Operation

In this paper, we propose a self-healing phasor measurement unit (PMU) network that exploits the features of dynamic and programmable configuration in a software-defined networking infrastructure to achieve resiliency against cyber-attacks. After a cyber-attack, the configuration of network switches is changed to isolate the compromised PMUs/phasor data concentrators to prevent further propagation of the attack; meanwhile, the disconnected yet uncompromised PMUs will be reconnected to the network to "self-heal" and thus restore the observability of the power system. Specifically, we formulate an integer linear programming model to minimize the overhead of the self-healing process (e.g., the recovery latency), while considering the constraints of power system observability, hardware resources, and network topology. We also propose a heuristic algorithm to decrease the computational complexity. Case studies of a PMU network based on the IEEE 30-bus and 118-bus systems are used to validate the effectiveness of the self-healing mechanism.

Cybersecurity↗

Dakota A Multilevel Parallel Object-Oriented Framework for Design Optimization Parameter Estimation Uncertainty Quantification and Sensitivity Analysis: Version 6.12 Theory Manual

The Dakota toolkit provides a flexible and extensible interface between simulation codes and iterative analysis methods. Dakota contains algorithms for optimization with gradient and nongradient-based methods; uncertainty quantification with sampling, reliability, and stochastic expansion methods; parameter estimation with nonlinear least squares methods; and sensitivity/variance analysis with design of experiments and parameter study methods. These capabilities may be used on their own or as components within advanced strategies such as surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. By employing object-oriented design to implement abstractions of the key components required for iterative systems analyses, the Dakota toolkit provides a flexible and extensible problem-solving environment for design and performance analysis of computational models on high performance computers. This report serves as a theoretical manual for selected algorithms implemented within the Dakota software. It is not intended as a comprehensive theoretical treatment, since a number of existing texts cover general optimization theory, statistical analysis, and other introductory topics. Rather, this manual is intended to summarize a set of Dakota-related research publications in the areas of surrogate-based optimization, uncertainty quantification, and optimization under uncertainty that provide the foundation for many of Dakota's iterative analysis capabilities.

97 MATHEMATICS AND COMPUTING↗

Dakota A Multilevel Parallel Object-Oriented Framework for Design Optimization Parameter Estimation Uncertainty Quantification and Sensitivity Analysis (V.6.14) (Theory Manual)

The Dakota toolkit provides a flexible and extensible interface between simulation codes and iterative analysis methods. Dakota contains algorithms for optimization with gradient and nongradient-based methods; uncertainty quantification with sampling, reliability, and stochastic expansion methods; parameter estimation with nonlinear least squares methods; and sensitivity/variance analysis with design of experiments and parameter study methods. These capabilities may be used on their own or as components within advanced strategies such as surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. By employing object-oriented design to implement abstractions of the key components required for iterative systems analyses, the Dakota toolkit provides a flexible and extensible problem-solving environment for design and performance analysis of computational models on high performance computers. This report serves as a theoretical manual for selected algorithms implemented within the Dakota software. It is not intended as a comprehensive theoretical treatment, since a number of existing texts cover general optimization theory, statistical analysis, and other introductory topics. Rather, this manual is intended to summarize a set of Dakota-related research publications in the areas of surrogate-based optimization, uncertainty quantification, and optimization under uncertainty that provide the foundation for many of Dakota's iterative analysis capabilities.

97 MATHEMATICS AND COMPUTING↗

Dakota, A Multilevel Parallel Object-Oriented Framework for Design Optimization, Parameter Estimation, Uncertainty Quantification, and Sensitivity Analysis: Version 6.13 Theory Manual

The Dakota toolkit provides a flexible and extensible interface between simulation codes and iterative analysis methods. Dakota contains algorithms for optimization with gradient and nongradient-based methods; uncertainty quantification with sampling, reliability, and stochastic expansion methods; parameter estimation with nonlinear least squares methods; and sensitivity/variance analysis with design of experiments and parameter study methods. These capabilities may be used on their own or as components within advanced strategies such as surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. By employing object-oriented design to implement abstractions of the key components required for iterative systems analyses, the Dakota toolkit provides a flexible and extensible problem-solving environment for design and performance analysis of computational models on high performance computers. This report serves as a theoretical manual for selected algorithms implemented within the Dakota software. It is not intended as a comprehensive theoretical treatment, since a number of existing texts cover general optimization theory, statistical analysis, and other introductory topics. Rather, this manual is intended to summarize a set of Dakota-related research publications in the areas of surrogate-based optimization, uncertainty quantification, and optimization under uncertainty that provide the foundation for many of Dakota's iterative analysis capabilities.

97 MATHEMATICS AND COMPUTING↗

Dakota, A Multilevel Parallel Object-Oriented Framework for Design Optimization, Parameter Estimation, Uncertainty Quantification, and Sensitivity Analysis: Theory Manual (V.6.15)

The Dakota toolkit provides a flexible and extensible interface between simulation codes and iterative analysis methods. Dakota contains algorithms for optimization with gradient and nongradient-based methods; uncertainty quantification with sampling, reliability, and stochastic expansion methods; parameter estimation with nonlinear least squares methods; and sensitivity/variance analysis with design of experiments and parameter study methods. These capabilities may be used on their own or as components within advanced strategies such as surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. By employing object-oriented design to implement abstractions of the key components required for iterative systems analyses, the Dakota toolkit provides a flexible and extensible problem-solving environment for design and performance analysis of computational models on high performance computers. This report serves as a theoretical manual for selected algorithms implemented within the Dakota software. It is not intended as a comprehensive theoretical treatment, since a number of existing texts cover general optimization theory, statistical analysis, and other introductory topics. Rather, this manual is intended to summarize a set of Dakota-related research publications in the areas of surrogate-based optimization, uncertainty quantification, and optimization under uncertainty that provide the foundation for many of Dakota's iterative analysis capabilities.

97 MATHEMATICS AND COMPUTING↗

Dakota, A Multilevel Parallel Object-Oriented Framework for Design Optimization, Parameter Estimation, Uncertainty Quantification, and Sensitivity Analysis: Version 6.16 Theory Manual

The Dakota toolkit provides a flexible and extensible interface between simulation codes and iterative analysis methods. Dakota contains algorithms for optimization with gradient and nongradient-based methods; uncertainty quantification with sampling, reliability, and stochastic expansion methods; parameter estimation with nonlinear least squares methods; and sensitivity/variance analysis with design of experiments and parameter study methods. These capabilities may be used on their own or as components within advanced strategies such as surrogate-based optimization, mixed integer nonlinear programming, or optimization under uncertainty. By employing object-oriented design to implement abstractions of the key components required for iterative systems analyses, the Dakota toolkit provides a flexible and extensible problem-solving environment for design and performance analysis of computational models on high performance computers. This report serves as a theoretical manual for selected algorithms implemented within the Dakota software. It is not intended as a comprehensive theoretical treatment, since a number of existing texts cover general optimization theory, statistical analysis, and other introductory topics. Rather, this manual is intended to summarize a set of Dakota-related research publications in the areas of surrogate-based optimization, uncertainty quantification, and optimization under uncertainty that provide the foundation for many of Dakota’s iterative analysis capabilities.

97 MATHEMATICS AND COMPUTING↗

Developing a Hybrid Electric Vehicle Eco-Cooperative Adaptive Cruise Control System at Signalized Intersections.

This study develops an eco-driving strategy for hybrid electric vehicles (HEVs) in the vicinity of signalized intersections, entitled HEV Eco-Cooperative Adaptive Cruise Control at Intersections (Eco-CACC-I). The proposed system computes real-time, energy-optimized vehicle trajectories using HEV vehicle dynamics and energy consumption models. In the proposed system, a simple HEV energy model is used to compute the instantaneous fuel consumption. This HEV energy model is selected since it is general, transferable, and can be easily used to compute instantaneous energy consumption levels for HEVs without the additional input of vehicle engine data or complicated power control strategies. In addition, a vehicle dynamics model is used to capture the relationship between speed, acceleration level, and tractive/resistance forces on vehicles. The energy-optimum problem is formulated as an optimization problem with constraints, which is solved using a moving-horizon dynamic programming approach. The proposed HEV Eco-CACC-I system was tested to evaluate its performance for various speed limits, roadway grades, and signal timings. Lastly, the proposed HEV controller was implemented in a microscopic traffic simulation software to test its network-wide performance. The test results from an arterial corridor with three signalized intersections demonstrate that the proposed system can effectively reduce stop-and-go traffic in the vicinity of signalized intersections producing savings of 7.4% in energy consumption, 5.8% in traffic delay and 23% vehicle stops, respectively.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

Mixed Integer Nonlinear Programming Approaches to Enhance Resiliency and Response Strategies in Critical Infrastructure

Motivation. Critical infrastructures are large, complex engineered systems that must be operated robustly under abnormal conditions resulting from natural hazards or intentional acts. For example, electric power systems must be robust to line faults, water utilities must rapidly mitigate contamination incidents, and computing networks must adapt to adversarial intrusions to protect critical information. Problem. It is difficult for decision-makers within resiliency analysis in critical infrastructure to optimize designs and develop effective response strategies that can account for uncertainties. Facing incomplete information and the sheer scope that a natural hazard or attack vector may incorporate, response can be ineffective without reliable, scalable decision support tools. These problems are intrinsically nonlinear and involve discrete decisions, and unfortunately, existing off-the-shelf mathematical programming methods cannot support optimization-based decision-making of these nonlinear at scale. Method/Approach and Results. This project emphasized development of fundamental optimization strategies that supported real- time mitigation and response for critical infrastructures. In particular, the project developed multi- tree approaches based on piecewise outer-approximations for solution of mixed-integer nonlinear programming (MINLP) problems. These techniques alternate between an MILP or MISOCP relaxation to obtain a lower bound and candidate discrete solutions and an NLP subproblem to obtain upper bounds. Using tailored relaxations based on problem structure, these methods were used to solve several key applications in resilience and response of critical infrastructure. This work resulted in two open-source, copyrighted software packages: CORAMIN (https://github.com/Coramin/Coramin) -- an object-oriented mathematical programming framework that supports tailored multi-tree algorithms for solution of large- scale mixed-integer nonlinear programming; and EGRET (Electrical Grid Research and Engineering Toolkit) (https://github.com/grid- parity-exchange/Egret) -- a declarative mathematical programming framework built upon CORAMIN and Pyomo for formulation and solution of resilience and operations problems in power grid systems. Furthermore, these tools resulted in several important published results, including the following: The first known global optimization approach that could solve the unit-commitment problem with nonlinear power flow constraints on medium-sized test problems; Improved parallel optimization-based bounds tightening and strengthening of relaxations of AC power flow constraints; and, Optimization-based approaches for improved grid resilience and use of demand response to improve grid resilience with reduction in capital requirements. Result Implications. This project developed first-of-a-kind algorithms for decision-making in critical infrastructure resilience operations and planning, as well as a next-generation toolkit for MINLP researchers. These approaches leveraged high-performance computing architectures to solve some of the largest, most challenging nonlinear discrete optimization problems to global optimality, and these successes were captured in open-source software to enable optimization-based decision-making, and efficient solution of MINLP formulations for electric power transmission grids.

24 POWER TRANSMISSION AND DISTRIBUTION↗

Initial 1.5D BISON Simulation Verification and Validation CASL FY17 Letter Report

This milestone report describes the current efforts to improve the usability of the recently developed 1.5 dimensional capability in BISON, the initial verification of this BISON capability, and initial validation of the 1.5 dimensional models against existing 2 dimensional axisymmetric full length light water reactor (LWR) fuel rods. The 1.5 dimensional (1.5D) capability in BISON was developed to enable the simulation of LWR fuel rods in a less computationally demanding simulation formulation while retaining key physics of interest. BISON was originally developed to solve 2D axisymmetric and 3D models, and this original development focus allows BISON to examine a wider range of fuel types and geometrically complexity than can be solved with lower dimensional frameworks. As the set of problems which BISON is used to solve expands, the software design requirements continue to evolve. Coupling physics in a higher dimensional geometry is not always required to resolve the physics of interest, such as the modeling of radial heat transfer and radial displacement. BISON, built on the dimension-agnostic MOOSE framework, is able to solve problems in 3D, 2D, and 1D with only minor modifications to the material definition code so that the appropriate geometrical representation can be applied in different problems of interest. The motivation for the development and validation of the BISON 1.5D capability is the CASL program's need for a simplified and computationally efficient version of BISON for use in the large multi-physics VERA simulations which include hundreds of individual fuel rods. The original development of the BISON 1.5D simulation capability is described in the CASL FY17 Letter Report from January 2017, and this report documents the continuing work identified in the previous report. The improvements to the usability of the 1.5D capability through input file simplifications, the results of the verification simulations, the results of the initial validation against the 2D assessment cases in BISON, and the future development needs are included within this report.

1.5D Capability↗

Scalable branching on dual decomposition of stochastic mixed-integer programming problems

In this work, we present a scalable branching method for the dual decomposition of stochastic mixed-integer programming. Our new branching method is based on the branching method proposed by Caroe and Schultz that creates branching disjunctions on first-stage variables only. We propose improvements to the process for creating branching disjunctions, including (1) branching on the optimal solutions of the Dantzig-Wolfe reformulation of the restricted master problem and (2) using a more comprehensive (yet simple) measure for the dispersions associated with subproblem solution infeasibility. We prove that the proposed branching process leads to an algorithm that terminates finitely, and we provide conditions under which globally optimal solutions can be identified after termination. We have implemented our new branching method, as well as the Caroe-Schultz method and a branch-and-price method, in the open-source software package DSP. Using SIPLIB test instances, we present extensive numerical results to demonstrate that the proposed branching method significantly reduces the number of node subproblems and solution times.

97 MATHEMATICS AND COMPUTING↗

Matilda v1.0: An R package for probabilistic climate projections using a reduced complexity climate model

A primary advantage to using reduced complexity climate models (RCMs) has been their ability to quickly conduct probabilistic climate projections, a key component of uncertainty quantification in many impact studies and multisector systems. Providing frameworks for such analyses has been a target of several RCMs used in studies of the future co-evolution of the human and Earth systems. In this paper, we present Matilda, an open-science R software package that facilitates probabilistic climate projection analysis, implemented here using the Hector simple climate model in a seamless and easily applied framework. The primary goal of Matilda is to provide the user with a turn-key method to build parameter sets from literature-based prior distributions, run Hector iteratively to produce perturbed parameter ensembles (PPEs), weight ensembles for realism against observed historical climate data, and compute probabilistic projections for different climate variables. This workflow gives the user the ability to explore viable parameter space and propagate uncertainty to model ensembles with just a few lines of code. The package provides significant freedom to select different scoring criteria and algorithms to weight ensemble members, as well as the flexibility to implement custom criteria. Additionally, the architecture of the package simplifies the process of building and analyzing PPEs without requiring significant programming expertise, to accommodate diverse use cases. We present a case study that provides illustrative results of a probabilistic analysis of mean global surface temperature as an example of the software application.

54 ENVIRONMENTAL SCIENCES↗