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 1,531 records · Page 85

Reconstructing householder vectors from Tall-Skinny QR

The Tall-Skinny QR (TSQR) algorithm is more communication efficient than the standard Householder algorithm for QR decomposition of matrices with many more rows than columns. However, TSQR produces a different representation of the orthogonal factor and therefore requires more software development to support the new representation. Further, implicitly applying the orthogonal factor to the trailing matrix in the context of factoring a square matrix is more complicated and costly than with the Householder representation. We show how to perform TSQR and then reconstruct the Householder vector representation with the same asymptotic communication efficiency and little extra computational cost. We demonstrate the high performance and numerical stability of this algorithm both theoretically and empirically. The new Householder reconstruction algorithm allows us to design more efficient parallel QR algorithms, with significantly lower latency cost compared to Householder QR and lower bandwidth and latency costs compared with Communication-Avoiding QR (CAQR) algorithm. Experiments on supercomputers demonstrate the benefits of the communication cost improvements: in particular, our experiments show substantial improvements over tuned library implementations for tall-and-skinny matrices. Furthermore, we also provide algorithmic improvements to the Householder QR and CAQR algorithms, and we investigate several alternatives to the Householder reconstruction algorithm that sacrifice guarantees on numerical stability in some cases in order to obtain higher performance.

97 MATHEMATICS AND COMPUTING↗

Parallel Grid Manipulations in Earth Science Calculations

The National Aeronautics and Space Administration (NASA) Data Assimilation Office (DAO) at the Goddard Space Flight Center is moving its data assimilation system to massively parallel computing platforms. This parallel implementation of GEOS DAS will be used in the DAO's normal activities, which include reanalysis of data, and operational support for flight missions. Key components of GEOS DAS, including the gridpoint-based general circulation model and a data analysis system, are currently being parallelized. The parallelization of GEOS DAS is also one of the HPCC Grand Challenge Projects. The GEOS-DAS software employs several distinct grids. Some examples are: an observation grid- an unstructured grid of points at which observed or measured physical quantities from instruments or satellites are associated- a highly-structured latitude-longitude grid of points spanning the earth at given latitude-longitude coordinates at which prognostic quantities are determined, and a computational lat-lon grid in which the pole has been moved to a different location to avoid computational instabilities. Each of these grids has a different structure and number of constituent points. In spite of that, there are numerous interactions between the grids, e.g., values on one grid must be interpolated to another, or, in other cases, grids need to be redistributed on the underlying parallel platform. The DAO has designed a parallel integrated library for grid manipulations (PILGRIM) to support the needed grid interactions with maximum efficiency. It offers a flexible interface to generate new grids, define transformations between grids and apply them. Basic communication is currently MPI, however the interfaces defined here could conceivably be implemented with other message-passing libraries, e.g., Cray SHMEM, or with shared-memory constructs. The library is written in Fortran 90. First performance results indicate that even difficult problems, such as above-mentioned pole rotation- a sparse interpolation with little data locality between the physical lat-lon grid and a pole rotated computational grid- can be solved efficiently and at the GFlop/s rates needed to solve tomorrow's high resolution earth science models. In the subsequent presentation we will discuss the design and implementation of PILGRIM as well as a number of the problems it is required to solve. Some conclusions will be drawn about the potential performance of the overall earth science models on the supercomputer platforms foreseen for these problems.

Sawyer, W.↗

A general approach to seismic inversion with automatic differentiation

Imaging Earth structure or seismic sources from seismic data involves minimizing a target misfit function, and is commonly solved through gradient-based optimization. The adjoint-state method has been developed to compute the gradient efficiently; however, its implementation can be time-consuming and difficult. We develop a general seismic inversion framework to calculate gradients using reverse-mode automatic differentiation. The central idea is that adjoint-state methods and reverse-mode automatic differentiation are mathematically equivalent. Here, the mapping between numerical PDE simulation and deep learning allows us to build a seismic inverse modeling library, ADSeismic, based on deep learning frameworks, which supports high performance reverse-mode automatic differentiation on CPUs and GPUs. We demonstrate the performance of ADSeismic on inverse problems related to velocity model estimation, rupture imaging, earthquake location, and source time function retrieval. ADSeismic has the potential to solve a wide variety of inverse modeling applications within a unified framework.

58 GEOSCIENCES↗

Control And Optimization Modular Modeling Application For Nuclear Deployment

The purpose of the COMMAND code is to provide a flexible, scalable tool for use in developing, integrating, and testing the technologies necessary for achieving autonomous operations of advanced nuclear reactors. The code enables users to efficiently implement custom simulations and experiments by combining key methods from different software modules. These modules are focused on: modeling and simulation tools, such as nuclear simulation tools used for high-fidelity modeling (e.g., Reactor Excursion and Leak Analysis Program [RELAP5-3D] and Monte Carlo N-Particle [MCNP]); machine learning and optimization tools (e.g., anomaly detection and data-driven modeling techniques); advanced control in its digital, high-performance, and supervisory control forms (e.g., proportional integral derivative (PID) control and model predictive control (MPC); and integration with hardware through industrial communication protocols. To ensure flexibility and scalability, COMMAND was designed to be both modular—the software “pieces” all inherit from generic building blocks and can be combined and connected to create complicated simulations—and high performing—designed for parallel processing, enabling simulations and experiments to take advantage of multi-core computers, servers, and nodes. The code is written in the Python programming language due to the language's popularity, active community, and open-source and cross-platform nature. Maintaining consistency with other simulation tools used within the nuclear energy community, users implement simulations and experiments through text input files, which define components, parameters, connections, etc., through lines of text. Given that COMMAND is written in Python, these input files are native Python scripts, and so use the standard Python structure and formatting. This also enables users to take advantage of Python's extensive package library to develop custom capabilities for their specific use cases.

Faber, Jacob [Idaho National Laboratory (INL), Ida↗

BUMPER: A Tool for Analyzing Spacecraft Micrometeoroid and Orbital Debris Risk

“Bumper” is a computer program for analyzing spacecraft micrometeoroid and orbital debris (MMOD) risk. Bumper was developed in the late-1980s and has been continuously maintained and used since. The user base has grown from a few government entities now include numerous commercial entities as well. The National Aeronautics and Space Administration (NASA) Johnson Space Center (JSC) Hypervelocity Impact Technology (HVIT) group is responsible for all aspects of the Bumper software. Bumper has been used to characterize MMOD risk on many spacecraft. All of the International Space Station (ISS) modules, visiting vehicles and numerous external components and systems have been analyzed. Bumper was used to analyze the Space Shuttle, Orion, and many space probes, telescopes and satellites. Bumper is also being used to analyze future spacecraft such as the Deep Space Gateway (DSG) and Mars Sample Return (MSR) missions. The Bumper Configuration Control Board (CCB) ensures that all changes to the code are approved, reviewed, and documented. The current Bumper version – “Bumper 3” – is a Fortran executable that utilizes a 64-bit architecture. Bumper has numerous features that make it a powerful tool for analyzing spacecraft MMOD risk. Bumper uses the latest orbital debris and meteoroidenvironment models. Bumper also has a large library of ballistic limit “damage” equations available that can be used for a wide variety of MMOD shielding configurations. Bumper can also handle large spacecraft finite elementmodels (FEMs) and conducts checks of the model. This paper introduces Bumper and the MMOD risk analysis process using a simplified cube-shaped spacecraft model

hypervelocity↗

Stochastic PArallel Rarefied-gas Time-accurate Analyzer

The SPARTA package is software for simulating low-density fluids via the Direct Simulation Monte Carlo (DSMC) method, which is a particle-based method for tracking particle trajectories and collisions as a model of a multi-species gas. The main component of SPARTA is a simulation code which allows the user to specify a simulation domain, populate it with particles, embed triangulated surfaces as boundary conditions for the flow, overlay a grid for finding pairs of collision partners, and evolve the system in time via explicit timestepping. The package also includes various pre- and post-processing tools, useful for setting up simulations and analyzing the results. The simulation code runs either in serial on a single processor or desktop machine, or can be run in parallel using the MPI message-passing library, to enable faster performance on large problems.

Michael Gallis, Steve Plimpton↗

Jas4pp — A data-analysis framework for physics and detector studies

This paper describes the Jas4pp framework for exploring physics cases and for detector-performance studies of future particle collision experiments. Jas4pp is a multi-platform Java program for numeric calculations, scientific visualization in 2D and 3D, storing data in various file formats and displaying collision events and detector geometries. It also includes complex data-analysis algorithms for function minimization, regression analysis, event reconstruction (such as jet reconstruction), limit settings and other libraries widely used in particle physics. The framework can be used with several scripting languages, such as Python/Jython, Groovy and JShell. Several benchmark tests discussed in the paper illustrate significant improvements in the performance of the Groovy and JShell scripting languages compared to the standard Python implementation in C. Furthermore, the improvements for numeric computations in Java are attributed to recent enhancements in the Java Virtual Machine.

97 MATHEMATICS AND COMPUTING↗

Quantitative Uncertainty Analysis for Diffraction

Current software uses a least squares statistical method. For each model parameter, current software yields a point estimate and estimated standard error for each point estimate. In contrast, we have employed a Bayesian approach with sampling algorithm to provide a full posterior probability density function on each model parameter. This yields a different type of solution (probabilistic) with better fidelity. The Quantitative Uncertainty Analysis for Diffraction (QUAD) package returns a matrix of affect model parameters as a function of iteration through the MCMC analysis. QUAD is a Python code that allows for analysis of X-ray and neutron diffraction data to infer the structure of materials with quantifiable certainty. The code uses Bayesian statistics and Markov chain sampling algorithms to create posterior probability distributions on all material structure parameters that are modeled by a researcher. The statistical packages use the open source GSASII project as a library to calculate model diffraction patterns.

Fancher, ChristopherM↗

Sandbox for Mac Malware v 1.0

This software is an analyzer for automated sandbox analysis of malware on the OS X operating system. It runs inside an OS X virtual machine to collect data about what happens when a given file is opened or run. As of August 2014, there was no sandbox software for Mac OS X malware, as it requires different methods from those used on the Windows OS (which most sandboxes are written for). This software adds OS X analysis capabilities to an existing open-source sandbox, Cuckoo Sandbox (http://cuckoosandbox.org/), which previously only worked for Windows. The analyzer itself can take many different types of files as input: the traditional Mach-O and FAT executables, .app files, zip files, Python scripts, Java archives, and web pages, as well as PDFs and other documents. While the file is running, the analyzer also simulates rudimentary human interaction with clicks and mouse movements in order to bypass the tests some malware use to see if they are being analyzed. The analyzer outputs several different kinds of data: function call traces, network captures, screenshots, and all created and modified files. This work also includes a static analysis Cuckoo module for Mach-O binary files. It extracts file structures, code library imports and exports, and signatures. This data can be used along with the analyzer results to create signatures for malware.

Walkup, Elizabeth↗

NDMAS implementation and data qualification for accident tolerant fuel experiments

In order to meet quality and regulatory requirements associated with the U.S. Department of Energy Accident Tolerant Fuels (ATF) experiments, all data and documentation associated with ATF component fabrication, characterization, traceability, testing and post irradiation examination are being managed using the Nuclear Data Management and Analysis System (NDMAS). NDMAS melds commercial off-the-shelf software to provide the full range of needed functionality. The core component of NDMAS is the SAS Enterprise Business Intelligence software, which provides data manipulation, statistical and graphical capabilities, and delivery of live content to web pages. Content delivery to both Idaho National Laboratory researchers and external users via a web interface is managed using SharePoint, which is access-controlled. Additionally, scripts, macros, and commercial wrappers may be used or written by the NDMAS team to control interfaces between SAS and the structured query language server, where much of the data reside. ATF experiment data and documentation stored in the NDMAS database may be utilized to support Nuclear Regulatory Commission licensing of ATF concepts for commercial Light Water Reactor demonstration. Therefore, Data Qualification Plans are being developed to screen and tag all document and data input for ATR water loop testing, Transient Reactor Testing (TREAT), and post irradiation examination. A project-wide document library has been created in the ATF NDMAS SharePoint Site for general unrestricted document and information access. Restricted libraries have also been created to allow individual customer access to restricted documents. Data from ATR water loop instrumented lead experimentation, TREAT, and post-irradiation examination will be available to program participants on the SharePoint site as they are collected. This offers a unique capability for team collaboration while these tests are being conducted. (authors)

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗

toughio v1.2.2

TOUGH is a widely used general purpose numerical simulator designed for fluid and heat flows of multiphase, multicomponent fluid mixtures in porous and fractured media, which has been applied to many real-world problems such as underground geological storage, geothermal reservoir engineering or nuclear waste disposal, to name a few. `toughio` is a lightweight, object-oriented and vectorized Python library that aims to provide user-friendly routines to facilitate pre- and post-processing of a TOUGH simulation. Although its primary target is the latest version TOUGH3, `toughio` can also be used to read/write TOUGH2 input/output files. Currently, to the best of our knowledge, only PyTOUGH offers an exhaustive number of features to carry out a complete TOUGH simulation using a scripting language. `toughio` and PyTOUGH share the same objectives, yet with different approaches and philosophies. On the one hand, a PyTOUGH mesh is represented as a MULGRAPH geometry where elements can be unstructured horizontally but only layered vertically. It also checks that the model parameters are valid to ensure that a TOUGH simulation runs smoothly. On the other hand, although it provides basic meshing features, `toughio` mostly relies on common third-party softwares (e.g. Abaqus, FLAC3D, Gmsh, LaGriT) to generate the mesh by importing and converting it to a TOUGH mesh, which also conveniently facilitates the coupling of TOUGH with any other simulator that also supports the same mesh formats. Besides, `toughio` is designed to be just a TOUGH input and output file reader/writer. It assumes that the user knows what he is doing and does not verify the validity of the model parameters (`toughio` does verify the functional arguments).

Luu, Keurfon↗

MER SPICE Interface

MER SPICE Interface is a software module for use in conjunction with the Mars Exploration Rover (MER) mission and the SPICE software system of the Navigation and Ancillary Information Facility (NAIF) at NASA's Jet Propulsion Laboratory. (SPICE is used to acquire, record, and disseminate engineering, navigational, and other ancillary data describing circumstances under which data were acquired by spaceborne scientific instruments.) Given a Spacecraft Clock value, MER SPICE Interface extracts MER-specific data from SPICE kernels (essentially, raw data files) and calculates values for Planet Day Number, Local Solar Longitude, Local Solar Elevation, Local Solar Azimuth, and Local Solar Time (UTC). MER SPICE Interface was adapted from a subroutine, denoted m98SpiceIF written by Payam Zamani, that was intended to calculate SPICE values for the Mars Polar Lander. The main difference between MER SPICE Interface and m98SpiceIf is that MER SPICE Interface does not explicitly call CHRONOS, a time-conversion program that is part of a library of utility subprograms within SPICE. Instead, MER SPICE Interface mimics some portions of the CHRONOS code, the advantage being that it executes much faster and can efficiently be called from a pipeline of events in a parallel processing environment.

Sayfi, Elias↗

Next generation experimental data access at NSLS-II

The NSLS-II network and computing infrastructure has been significantly updated recently. The re-IP process in 2020-2021 enabled the NSLS-II network to be routable to the rest of the BNL campus. Then, standardization of the operating systems and deployment procedures helped to deliver a consistent environment to workstations and servers used by all NSLS-II beamlines. In particular, the RedHat Enterprise Linux 8 was deployed to 700+ machines using the RedHat Satellite infrastructure management product, and all critical services (IOCs, databases, etc.) were migrated to the new OS. NFS users’ home directories are consistent across all of the machines, which eliminates the need for the individual configuration of the user environment on each host. The standard suite of software packages is available to the beamline staff and users, which includes the system packages (deployed via RPM) as well as the conda environments for data acquisition and analysis. Security measures were implemented to comply with the industry standards, which include multi-factor authentication (using Duo), secure screen lock for the beamline machines, and advanced access control to the experimental data that is stored in shared central storage available on all hosts. These major enhancements facilitated sharing the experimental data (currently for a number of selected beamlines, with a plan to extend it to the whole facility in the nearest future) with the users via an externally facing JupyterHub instance. The beamlines keep using the Bluesky data acquisition framework to orchestrate their experiments, and the new infrastructure enabled them to use a next-generation data access library called tiled.

36 MATERIALS SCIENCE↗

Exploring versioned distributed arrays for resilience in scientific applications: Global view resilience

Exascale studies project reliability challenges for future HPC systems. We present the Global View Resilience (GVR) system, a library for portable resilience. GVR begins with a subset of the Global Arrays interface, and adds new capabilities to create versions, name versions, and compute on version data. Applications can focus versioning where and when it is most productive, and customize for each application structure independently. This control is portable, and its embedding in application source makes it natural to express and easy to maintain. The ability to name multiple versions and “partially materialize” them efficiently makes ambitious forward-recovery based on “data slices” across versions or data structures both easy to express and efficient. Using several large applications (OpenMC, preconditioned conjugate gradient (PCG) solver, ddcMD, and Chombo), we evaluate the programming effort to add resilience. The required changes are small (< 2% lines of code (LOC)), localized and machine-independent, and perhaps most important, require no software architecture changes. We also measure the overhead of adding GVR versioning and show that overheads < 2% are generally achieved. This overhead suggests that GVR can be implemented in large-scale codes and support portable error recovery with modest investment and runtime impact. Our results are drawn from both IBM BG/Q and Cray XC30 experiments, demonstrating portability. We also present two case studies of flexible error recovery, illustrating how GVR can be used for multi-version rollback recovery, and several different forward-recovery schemes. GVR’s multi-version enables applications to survive latent errors (silent data corruption) with significant detection latency, and forward recovery can make that recovery extremely efficient. Lastly, our results suggest that GVR is scalable, portable, and efficient. GVR interfaces are flexible, supporting a variety of recovery schemes, and altogether GVR embodies a gentle-slope path to tolerate growing error rates in future extreme-scale systems.

97 MATHEMATICS AND COMPUTING↗

Modeling and Simulation of Fuel Burnup in Pebble Bed Reactors

Modeling and simulation of fuel burnup plays important roles in reactor design, operation, safety, and security as well as nuclear material control and accounting (MC&A) [1]. This task is uniquely challenging for pebble bed reactors (PBR) because the pebbles are continuously added and recycled into the reactor core, and their paths through the core are random. To address this problem, we present two simulation models in this paper. Brookhaven National Laboratory (BNL) developed a simple lattice model of a PBR in Serpent software to generate used pebble isotopic concentrations. The benefit of using Serpent software in this specific application is that it helps streamline the data generation process without having to use too many independent software codes in combination to achieve a simple task. For example, transport, burnup and zero power decay can be implemented in a single pass. Three-dimensional core models were developed using Serpent to simulate the burnup process of 5 subject pebbles starting from fresh till they reach nearly target burnup, with each pebble placed in one of the five artificially designated radial channels to capture the changing neutron spectra along the core radius. Equilibrium isotopic concentrations were assumed in all other pebbles in the core. To provide a verification for the Serpent isotope transmutation and decay results, Oak Ridge National Laboratory (ORNL) performed simple SCALE/ORIGEN calculations using the average neutron spectra calculated by Serpent for each of the 5 pebbles. The 252-group neutron spectra from Serpent were then used by ORIGEN to produce the one-group library for depletion and decay calculations. The isotopic concentrations of a few nuclides of interest and neutron and gamma source terms produced from the ORIGEN calculations were compared with the ones from the Serpent calculations. The model simulated in this work was based on the Pebble Bed Modular Reactor (PBMR)-400 design because many data needed for the simulation such as core power profiles, fuel and reflector temperatures, and equilibrium core composition are publicly available. In this paper, we will compare the results between these two approaches and benchmark the results against a set of well-established simulation results for PBMR-400.

Dim, Odera↗

Modeling and Simulation of Fuel Burnup in Pebble Bed Reactors

Modeling and simulation of fuel burnup plays important roles in reactor design, operation, safety, and security as well as nuclear material control and accounting (MC&A) [1]. This task is uniquely challenging for pebble bed reactors (PBR) because the pebbles are continuously added and recycled into the reactor core, and their paths through the core are random. To address this problem, we present two simulation models in this paper. Brookhaven National Laboratory (BNL) developed a simple lattice model of a PBR in Serpent software to generate used pebble isotopic concentrations. The benefit of using Serpent software in this specific application is that it helps streamline the data generation process without having to use too many independent software codes in combination to achieve a simple task. For example, transport, burnup and zero power decay can be implemented in a single pass. Three-dimensional core models were developed using Serpent to simulate the burnup process of five subject pebbles starting from fresh till they reach nearly target burnup, with each pebble placed in one of the five artificially designated radial channels to capture the changing neutron spectra along the core radius. Equilibrium isotopic concentrations were assumed in all other pebbles in the core. To provide a verification for the Serpent isotope transmutation and decay results, Oak Ridge National Laboratory (ORNL) performed simple SCALE/ORIGEN calculations using the average neutron spectra calculated by Serpent for each of the five pebbles. The 252-group neutron spectra from Serpent were then used by ORIGEN to produce the one-group library for depletion and decay calculations. The isotopic concentrations of a few nuclides of interest and neutron and gamma source terms produced from the ORIGEN calculations were compared with the ones from the Serpent calculations. The model simulated in this work was based on the Pebble Bed Modular Reactor (PBMR)-400 design because many data needed for the simulation such as core power profiles, fuel and reflector temperatures, and equilibrium core composition are publicly available. In this paper, we will compare the results between these two approaches and benchmark the results against a set of well-established simulation results for PBMR-400.

98 NUCLEAR DISARMAMENT, SAFEGUARDS, AND PHYSICAL P↗

End-to-end AI framework for interpretable prediction of molecular and crystal properties

We introduce an end-to-end computational framework that allows for hyperparameter optimization using the DeepHyper library, accelerated model training, and interpretable AI inference. The framework is based on state-of-the-art AI models including CGCNN, PhysNet, SchNet, MPNN, MPNN-transformer, and TorchMD-NET. We employ these AI models along with the benchmark QM9, hMOF, and MD17 datasets to showcase how the models can predict user-specified material properties within modern computing environments. We demonstrate transferable applications in the modeling of small molecules, inorganic crystals and nanoporous metal organic frameworks with a unified, standalone framework. We have deployed and tested this framework in the ThetaGPU supercomputer at the Argonne Leadership Computing Facility, and in the Delta supercomputer at the National Center for Supercomputing Applications to provide researchers with modern tools to conduct accelerated AI-driven discovery in leadership-class computing environments. We release these digital assets as open source scientific software in GitLab, and ready-to-use Jupyter notebooks in Google Colab.

36 MATERIALS SCIENCE↗

Extending Supernova Spectral Templates for Next-generation Space Telescope Observations

Empirical models of supernova (SN) spectral energy distributions (SEDs) are widely used for SN survey simulations and photometric classifications. The existing library of SED models has excellent optical templates, but limited, poorly constrained coverage of ultraviolet (UV) and infrared (IR) wavelengths. However, both regimes are critical for the design and operation of future SN surveys, particularly at IR wavelengths that will be accessible with the James Webb Space Telescope and the Wide-Field Infrared Survey Telescope. We create a public repository of improved empirical SED templates using a sampling of Type Ia and core-collapse (CC) photometric light curves to extend the Type Ia parameterized SALT2 model and a set of SN Ib, SN Ic, and SN II SED templates into the UV and near-IR. We apply this new repository of extrapolated SN SED models to examine how future surveys can discriminate between CC and Type Ia SNe at UV and IR wavelengths, and present an open-source software package written in Python, SNSEDextend, that enables users to generate their own extrapolated SEDs.

79 ASTRONOMY AND ASTROPHYSICS↗