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 361 records · Page 20

S4PST: Sustainability for Programming Systems and Tools: May Workshop Report

The US Department of Energy (DOE) Exascale Computing Project (ECP) has fostered and strengthened the use of modern software engineering practices for developing applications and libraries, and this effort has resulted in the coordinated and interoperable E4S1 and xSDK2 ecosystems. Although this approach is cost-effective, it relies on robust programming systems and tools (PST) as the underlying foundation for our HPC software. At present, our primary PST stack consists of traditional high-performance computing (HPC) languages, namely Fortran, C, C++, and the popular Python language for data analysis and AI workflows. These languages support various programming frameworks and run-time abstractions that enable parallelism and concurrency across multiple node architectures and thousands of nodes through a variety of interconnect systems. However, to accommodate users’ diverse needs, certain aspects of the HPC ecosystem are delegated to vendor-specific or third-party implementations that extend beyond a particular scientific domain. This broader scope results in a multitude of specifications and variations, which leads to a complex orchestration of many-ecosystems. Unfortunately, this complexity in the ecosystem imposes additional overhead costs on consumers during the latter stages of the development cycle. In addition to the software ecosystem challenge, the upcoming conclusion of the ECP by December 2023 has raised significant concerns within the HPC programming systems community, from both the economic and social perspectives. The ECP has implemented a management structure for software development and funding decisions across all ECP participants by following a conventional hierarchical and centralized approach. However, this structure has prompted certain considerations within the community, particularly in anticipation of the Software Sustainability initiative by the DOE’s Advanced Scientific Computing Research Program (ASCR). For the success of this new initiative, it is of utmost importance to secure consistent funding and foster close engagement with researchers and core developers of existing programming-system products. This collaboration is vital to maintaining the critical capabilities of the current software during the transition phase while proactively adapting to future technology and workforce trends. The community recognizes the significance of adapting to emerging trends and is aware of the inherent fragility of the HPC software ecosystem, particularly in relation to programming systems that cater to all users. The ability to adapt and evolve is essential to staying relevant and effectively addressing these technical, economic, and social challenges. The S4PST team, which represents one of the six ASCR Software Sustainability seedling projects, is dedicated to tackling these challenges through community-based approaches that go beyond the scope of the DOE. This involves collaboration between national laboratories with academia, non-DOE institutions, hardware and system vendors, and international partners. By fostering these partnerships, we aim to create a robust and sustainable HPC software ecosystem that can effectively meet the needs of the community. This new community effort, driven by the eight DOE labs, will take on the responsibility of guiding funding decisions for programming-systems development and maintenance with transparency and consistency across all decisions. Additionally, the team will offer common technical services to the programming systems community, irrespective of their funding situations, and facilitate community-wide incubation to proactively nurture the software ecosystem. By actively engaging with stakeholders and employing a collaborative approach, we can collectively shape the future of programming systems and ensure a robust and thriving HPC software landscape. On May 11–12, 2023, the S4PST team conducted its inaugural kick-off workshop at the Innovative Computing Laboratory (ICL) in the University of Tennessee, Knoxville, hosted by Hartwig Anzt. The workshop encompassed various sessions dedicated to presentations and discussions, with the aim of comprehending the team members’ perspectives on the vision of software sustainability. Additionally, the workshop aimed to identify the technical, economic, and social requirements for sustaining the programming-systems community in the field of HPC. This report provides a summary of the S4PST effort by highlighting five major thrust areas discussed during the workshop: (i) community, (ii) technical support, (iii) training and diversity, (iv) verification, validation and correctness, and (v) emerging technologies. It also encompasses an overview of the presentations and discussions held throughout the event, our views and potential synergies with other seedling efforts, along with the outcomes and key takeaways from our initial discussions.

97 MATHEMATICS AND COMPUTING↗

Annex C. Data Libraries for IAEA Nuclear Security Assessment Methodologies (NUSAM)

Data Libraries are a collection of experimental data for PP elements based on specific defeat mechanisms. The data can de related to probability of detection, assessment, or barrier delay times. The data libraries can be a manually tabulated list or an electronic menu values enbedded in a stand-alone database or in an assessment software program such as SAVI or EASI. Data library values are usually based on years of historical testing data for many forms of common and sometimes unique PPS systems. Most useful testing libraries include data from the most basic alarm sensors, doors, walls, and barriers to very sophisticated PP elements. Each PP element is tested using increasing levels of defeat techniques from hand tools, power tools, breaching tools, explosives, and vehicles, as applicable.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Umpire: Integration with Other Software Technologies

Umpire is an open-source C++ library that provides memory and resource management functions for use with heterogeneous memory spaces. The Umpire library is being developed to simplify coordination and sharing of limited memory resources for complex integrated applications developed in the ECP/ATDM and ASC programs, and other multi-physics codes that combine many physics packages and libraries. The overarching goal of Umpire is to provide a single application-facing API for memory management on all platforms by decoupling memory operations from platform-specific memory spaces. It provides operations for: memory space discovery, memory provisioning, allocation and transfers, and introspection. Umpire development began in the Center for Applied Scientific Computing at Lawrence Livermore National Laboratory (LLNL). Umpire is funded primarily by LLNL ASC and ATMD portfolios and receives a small amount of support as part of ECP ST Project 2.3.1.06 STMP08-ISC. The source code is hosted and developed on GitHub. In this report, we explore possible integrations with other memory hierarchy management software. We examine both projects supported by ECP, as well as third-party and vendor provided tools.

97 MATHEMATICS AND COMPUTING↗

Studying performance portability of LAMMPS across diverse GPU-based platforms

The molecular dynamics simulation software, LAMMPS, utilizes the Kokkos acceleration library to port computation to a diverse set of architectures including those based on GPU accelerators. In addition to Kokkos, LAMMPS contains a vast code base that leverages the CUDA application programming interface using library functions such as cuFFT, CUDA's fast-fourier transform (FFT) library, and, more recently, also support for AMD's Heterogeneous Interface for Portability (HIP) that is rapidly growing. While preparing LAMMPS tests for the AMD GPU-based test system precursors to Frontier, we investigated several strategies for accelerating LAMMPS on AMD GPUs, using the AMD Instinct MI100 and MI250X. In this work, we integrated the HIP FFT library, hipFFT, into the particle-particle particle-mesh (PPPM) long-range solver, which allowed the porting of PPPM calculations to the GPUs. Kokkos behavior on the MI100 and MI250X was also investigated through the package kokkos command of LAMMPS, targeting communication, memory usage, and particle grid decomposition. The Tersoff, Reax, Lennard-Jones (LJ), EAM, Granular, and PPPM potentials were investigated in this effort, and results from these experiments are provided. In conclusion, the selected potentials were run on Spock (AMD Instinct MI100), Crusher (AMD Instinct MI250X), AFW HPC11 (NVIDIA A100) and Summit (NVIDIA V100), for comparison. Operational roofline models were constructed and analyzed for the Tersoff, Reax, and Lennard–Jones potentials on Crusher and Summit.

97 MATHEMATICS AND COMPUTING↗

MO-FG-303-04: A Smartphone Application for Automated Mechanical Quality Assurance of Medical Accelerators

Purpose: The mechanical quality assurance (QA) of medical accelerators consists of a time consuming series of procedures. Since most of the procedures are done manually – e.g., checking gantry rotation angle with the naked eye using a level attached to the gantry –, it is considered to be a process with high potential for human errors. To remove the possibilities of human errors and reduce the procedure duration, we developed a smartphone application for automated mechanical QA. Methods: The preparation for the automated process was done by attaching a smartphone to the gantry facing upward. For the assessments of gantry and collimator angle indications, motion sensors (gyroscope, accelerator, and magnetic field sensor) embedded in the smartphone were used. For the assessments of jaw position indicator, cross-hair centering, and optical distance indicator (ODI), an optical-image processing module using a picture taken by the high-resolution camera embedded in the smartphone was implemented. The application was developed with the Android software development kit (SDK) and OpenCV library. Results: The system accuracies in terms of angle detection error and length detection error were < 0.1° and < 1 mm, respectively. The mean absolute error for gantry and collimator rotation angles were 0.03° and 0.041°, respectively. The mean absolute error for the measured light field size was 0.067 cm. Conclusion: The automated system we developed can be used for the mechanical QA of medical accelerators with proven accuracy. For more convenient use of this application, the wireless communication module is under development. This system has a strong potential for the automation of the other QA procedures such as light/radiation field coincidence and couch translation/rotations.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

Percept

The Percept software package is a collection of libraries and executables that provide tools for verifying computer simulations of engineering components and systems. Percept is useful for simulations using the finite element or finite volume methods on unstructured meshes. Percept includes API's for adaptive mesh refinement, geometry representation, the method of manufactured solutions, analysis of convergence including the convergence of vibrational eigenmodes, and metrics for analyzing the difference between fields represented on two different overlapping unstructured grids.

Carnes, Brian↗

Umpire

The Umpire library consists of a collection of software components that provide memory and resource management capabilities that can be used by diverse high performance computing (HPC) applications. The current set of capabilities that Umpire provides Includes: • Flexible allocators to provision memory In the range of available memory resources on a target system. • An extensible allocation strategy model, allowing custom algorithms to be used to allocate memory resources in a scalable and high­performance fashion. • Memory-location aware operations that can be used to migrate and modify memory using specialized functions dependent on source and target data locations • A set of Introspection capabilities to allow the user to query the state of the different allocators and memory allocations.

ECP↗

Deep Lynx Unidirectional Network Connector

The Deep Lynx UNC is a small utility written in Python that uses only basic Python libraries and the Deep Lynx Python Software Development Kit (SDK). It queries Deep Lynx for tasks that indicate some data to be run in the UNC's environment. Once a task is acquired, the UNC retrieves the associated data and provides it to some other application for processing, waits for output, and sends the output from the other application to Deep Lynx. As data flows only from the UNC to Deep Lynx, this software solves the problem of connecting Deep Lynx with applications and resources that exist in a network where the network can reach Deep Lynx, but Deep Lynx cannot reach that network (unidirectional network).

Browning, JerenM↗

Efficient Xml Interchange (exi) For Python (expy)

EXPy provides a native Python interface into the LF Energy EVerest V2G protocol stack. The protocol stack is implemented in C/C++ and compiled into shared object libraries. EXPy provides the Python Ctypes translation of the C/C++ libraries for use with pure Python software. This project eliminates the need for integrating Python with third-party communications applications and greatly reduces the code base and improves performance. The other major benefit is the ability for EXPy to support new EXI based protocols as additional V2G standards are produced (e.g. upgrade from ISO 15118-2 to ISO 15118-20).

Rohde, Kenneth [Idaho National Laboratory (INL), I↗

Large Scale Screening of Low Cost Ferritic Steel Designs For Advanced Ultra Supercritical Boiler Using First Principles Methods

Advanced Ultra Supercritical Boiler (AUSC) requires materials that can operate in corrosive environment at temperature and pressure as high as 760°C (or 1400°F) and 5000psi, respectively, while at the same time maintain good ductility at low temperature. We develop automated simulation software tools to enable fast large scale screening studies of candidate designs. While direct evaluation of creep rupture strength and ductility are currently not feasible, properties such as energy, elastic constants, surface energy, interface energy, and stack fault energy can be used to assess their relative ductility and creeping strength. We implemented software to automate the complex calculations to minimize human inputs in the tedious screening studies which involve model structures generation, settings for first principles calculations, results analysis and reporting. The software developed in the project and library of computed mechanical properties of phases found in ferritic steels, many are complex solid solutions estimated for the first time, will certainly help the development of low cost ferritic steel for AUSC.

36 MATERIALS SCIENCE↗

Optimizing Viral Detection: Creating Fluorescent Chikungunya Virus Infectious Clones

Human infection with Chikungunya virus (CHIKV) results in debilitating joint pain and arthritis that can persist for months or even years. CHIKV is a re-emerging virus responsible for large epidemics in Asia, Africa, Europe, and most recently South and Central America. Yet, CHIKV has no specific treatment or vaccine. Therefore, steps towards eradicating the virus are important to public safety. Tools to facilitate drug screens are especially important when searching for viable treatments. Therefore, our lab sought to create reporter CHIKV encoding fluorescent markers, to detect infection in cells. Cloning was used to develop a CHIKV infectious clone encoding GFP. Creation of this tool required use of PCR, Gibson assembly, and the CRISPR Cas9 system. We are also working to create a CHIKV expressing mCherry. Next steps include determining the efficiency of these infectious clones compared to wildtype virus and performing drug screen studies. I also made contributions to other projects including development of a CRISPR Cas9 guide RNA library, a bioinformatics project using new software, and CRISPR Cas9 expressing cell line, that will be used in Zika virus studies. Finally, I assisted in development of a market survey focused on biodefense technologies for DHS.

59 BASIC BIOLOGICAL SCIENCES↗

Multiscale and Machine Learning Modeling for Process-informed Microstructure Prediction in Additively Manufactured Materials Using MALAMUTE

Advanced Materials and Manufacturing Technologies (AMMT) program under the Department of Energy Office of Nuclear Energy, aims to develop and qualify additively-manufactured materials for nuclear applications. The key challenges to these efforts are the microstructural variabilities observed on the AM products and their impact on the properties and performance of the material in extreme environments. AMMT is using a combination of high-through-put experimental and modeling techniques to accelerate the qualification efforts. Conventionally, in-situ and ex-situ characterizations and testing are performed to correlate different aspects of the AM process to the final product and its performance. However, adopting a trial-and-error approach to experimentally evaluate the vast range of process parameters required to capture the microstructural variabilities is cost-prohibitive. Modeling and simulation provide a comparatively inexpensive way to understand and correlate the microstructural evolution to the processing conditions. The modeling and simulation work-packages within the AMMT program aims to use physics-based and machine learning modeling capabilities to develop a digital twin for AM that can correlate the process conditions to the final product and establish a process-structure-property-performance (PSPP) correlation for AM materials. The melting and subsequent solidification that occurs during the AM process is a complex phenomenon that requires multiscale multiphysics analysis. Idaho National Laboratory’s (INL) Multiphysics Object-Oriented Simulation Environment (MOOSE), specifically the MOOSE Application Library for Advanced Manufacturing UTilitiEs (MALAMUTE) software, provides an ideal platform for developing the multiphysics multiscale model to explore the intricacies of the microstructural evolution during the AM processes within a single framework. Furthermore, given that such full-fidelity simulations can be computationally intensive, reduced order models are necessary to explore the PSPP space for AM materials in an efficient, reliable, and cost-effective way. This work package focuses on understanding the role of process variabilities on the various microstructural characteristics of the AM materials. Microstructures unique to AM materials, such as compositional micro-heterogeneity and dislocation cells, are of particular interest here since they can influence the creep properties and radiation performance. In fiscal year (FY) 24, we significantly advanced upon our work in the last fiscal year, both on physics-based and ML models. The alloy solidification model available in MOOSE has been extended to incorporate the thermodynamic properties and free energy relevant to 316SS. The model demonstrates the Cr segregation that occurs during solidifcation. It is demonstrated that rate of solidification and solute segregation is primarily influence by the cooling rate dictating the level of freezing. This work captures the microstructural variabilities at the subgrain level that are often missing in the part-scale models. With an aim to connect the microstructural evolution model to realistic process conditions, a reduced order model is developed for predicting the thermal conditions around meltpool from high-fidelity process simulations. Furthermore, machine learning approach is used to accelerate the temperature prediction during the AM process. In the following years, MALAMUTE will be used to connect different aspects of the models and quantitatively predict the microstructural evolution. The developed ML-based surrogate model will consider the process conditions as the input to predict the microstructural features in a cost-effective way. The generated microstructures can be used by other work packages under AMMT to evaluate the properties and environmental response of the material at the mesoscale. Thus, this work help identify the key microstructural features at the subgrain level that are significant in property/performance prediction of the AM products. This work will provide inputs to the large-scale process variability models to reevaluate and validate assumptions/simplifications made in the part-scale models. Furthermore, through active learning this work will help identify the data need from both modeling and experimental sides for development of a robust digital twin for AM.

36 MATERIALS SCIENCE↗

Multiscale and Machine Learning Modeling for Process-informed Microstructure Prediction in Additively Manufactured Materials using MALAMUTE

The Advanced Materials and Manufacturing Technologies (AMMT) program under the Department of Energy Office of Nuclear Energy aims to develop and qualify additively manufactured materials for nuclear applications. One key challenge to this is the microstructural variability observed in the additively manufactured products and their impact on the properties and performance of the material in extreme environments. AMMT is using a combination of high-throughput experimental and modeling techniques to accelerate qualification. Conventionally, in-situ and ex-situ characterizations and testing are performed to correlate different aspects of the additive manufacturing process to the final product and its performance. However, adopting a trial-and-error approach to experimentally evaluate the vast range of process parameters required to capture microstructural variability is cost-prohibitive. Modeling and simulation provide a comparatively inexpensive way to understand and correlate the microstructural evolution to the processing conditions. The modeling and simulation work-packages within the AMMT program aims to use physics-based and machine learning models to develop a digital twin for additive manufacturing that can correlate the process conditions to the final product and establish a process-structure-property-performance (PSPP) correlation. The melting and subsequent solidification that occurs during the additive process is a complex phenomenon that requires multiscale multiphysics analysis. This work package focuses on understanding the role of process variabilities on the unique microstructural characteristics of additively manufactured materials. Microstructural features at the subgrain level, such as compositional micro-heterogeneity and dislocation cells, are of particular interest here since they can influence the creep properties and radiation performance. Idaho National Laboratory’s Multiphysics Object-Oriented Simulation Environment (MOOSE), specifically the MOOSE Application Library for Advanced Manufacturing UTilitiEs (MALAMUTE) software, provides an ideal platform for developing the multiphysics multiscale model to explore the intricacies of the microstructural evolution during the AM processes within a single framework. Furthermore, given that such full-fidelity simulations can be computationally intensive, reduced order models are necessary to explore the PSPP space for additively manufactured materials in an efficient, reliable, and cost-effective way. This work focuses on capturing the microstructural variabilities at the subgrain level that are often missing in the part-scale models. In fiscal year 2025, we significantly advanced upon our work in the last fiscal year, in terms of the predictive capabilities of the physics-based and ML models, by adding the capabilities to capture subgrain-level micro-segregation during solidification using phase-field model and to predict the time-dependent dynamics of the AM process through the MOGPAR model. The alloy solidification model in MOOSE incorporates the thermodynamic properties and free energy relevant to 316 stainless steel. The model demonstrates the Cr and Ni segregation that occurs during solidification, including that the rate of solidification. The microstructural evolution model is connected to the process conditions via the surrogate model developed in this work. This enables predictions of the final microstructure in conjunctions with the manufacturing process. This work supports AMMT's rapid qualification goals by laying the foundation for an efficient and cost-effective model establishing the PSPP correlation for AM. The generated microstructures and predicted micro-segregation can be used by other work packages under AMMT to evaluate the properties and environmental response of the material at the mesoscale. Thus, this work helps to identify the key microstructural features at the subgrain level that are significant in property and performance predictions of additively manufactured components. This work will also provide inputs to the large-scale process variability models to reevaluate and validate assumptions and simplifications made in the part-scale models. Furthermore, through active learning this work can help identify the data need from both modeling and experimental sides for development of a robust digital twin for additive manufacturing and accelerate the AMMT's qualification efforts.

36 - MATERIALS SCIENCE↗

PMIX_Ring patch for SLURM

This code adds an implementation of PMIX_Ring to the existing PM12 Library in the SLURM open source software package (Simple Linux Utility for Resource Management). PMIX_Ring executes a particular communication pattern that is used to bootstrap connections between MPI processes in a parallel job.

Moody, A. T.↗

Sequence Polishing Library (SPL) v10.0

The Sequence Polishing Library (SPL) is a suite of software tools in order to automate "Design for Synthesis and Assembly" workflows. Specifically: The SPL "Converter" tool converts files among the following sequence data exchange formats: CSV, FASTA, GenBank, and Synthetic Biology Open Language (SBOL); The SPL "Juggler" tool optimizes the codon usages of DNA coding sequences according to an optimization strategy, a user-specific codon usage table and genetic code. In addition, the SPL "Juggler" can translate amino acid sequences into DNA sequences.:The SPL "Polisher" verifies NA sequences against DNA synthesis constraints, such as GC content, repeating k-mers, and restriction sites. In case of violations, the "Polisher" reports the violations in a comprehensive manner. The "Polisher" tool can also modify the violating regions according to an optimization strategy, a user-specific codon usage table and genetic code;The SPL "Partitioner" decomposes large DNA sequences into smaller building blocks with partial overlaps that enable an efficient assembly. The "Partitioner" enables the user to configure the characteristics of the overlaps, which are mostly determined by the utilized assembly protocol, such as length, GC content, or melting temperature.

Oberortner, Ernst↗

Percept

The Percept software package is a collection of libraries and executables that provide tools for verifying computer simulations of engineering components and systems. Percept is useful for simulations using the finite element or finite volume methods on unstructured meshes. Percept includes API's for adaptive mesh refinement, geometry representation, the method of manufactured solutions, analysis of convergence including the convergence of vibrational eigenmodes, and metrics for analyzing the difference between fields represented on two different overlapping unstructured grids.

Source record↗

GridKit

GridKit is a software development kit for interfacing power systems and power grid application software with high performance computing (HPC) libraries developed at National Labs and academia. It is also intended as interoperability layer between different numerical libraries. GridKit is not a standalone application, but comes with a suite of test examples illustrating possible usage.

Peles, Slaven↗

Google Test MPI Listener

Google Test MPI Listener is a plugin for the Google Test c++ unit testing library that organizes test output of software that uses both the MPI parallel programming model and Google Test. Typically, such output is ordered arbitrarily and disorganized, making difficult the process of interpreting test output. This plug organizes output in MPI rank order, enabling easy interpretation of test results.

Oxberry, Geoffrey↗