Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Python 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

Applying Generative-AI to NASA Documentation and Processes

This research and development project leverages generative-AI to assist in the generation of software process documentation based on NASA standards. By utilizing fine-tuned AI models, the proposed system will analyze NASA's software guidelines, helping to translate them into well-structured, compliant process documents. This assistance can reduce the manual effort required to produce such documentation, enhance consistency, and assure alignment with NASA's stringent software development and operational requirements. In addition to assisting in the generation of software process documentation, the project explores how generative-AI can help create audit checklists as well as assess the compliance of NASA provider documentation against applicable NASA standards. This approach would support the compliance auditing process, providing real-time insights and assessments. The intended result will be a streamlined process, potentially including a Python-based tool and database, that improves audit efficiency, reduces human error, lowers manpower costs and required manhours, and assures continuous compliance with NASA and industry evolving standards for safety-critical software development. Future task might be to investigate the software industry approach and standards for potential collaboration.

NASA Standards↗

Cooperative Education

Los Alamos National Laboratory (LANL) is a multidisciplinary national laboratory that conducts research and development in national security, engineering, materials science, computational modeling, and advanced manufacturing. The laboratory develops innovative technologies to address complex scientific and engineering challenges. This project focuses on the development and evaluation of high-performance absorbing structures through computational design, simulation, and engineering analysis. Absorbing structures are used in applications where damage mitigation, structural protection, and material efficiency are critical performance requirements. The increasing demand for lightweight, high-strength, and highly efficient structural systems has created a need for improved design methodologies capable of maximizing absorption while minimizing weight and material usage. The project utilizes advanced engineering software, including 3D CAD software and FEA, to generate and optimize structural concepts. Computational simulations are performed to evaluate structural behavior under loading conditions, while mathematical analyses are conducted using Python-based tools as well as established analytical equations from material and structural mechanics. The project benefits LANL by supporting the development of advanced design methodologies and improving the understanding of material and structural performance. During the internship term, a significant portion of the design development, simulation, and data analysis activities will be completed. Success of the project depends on collaboration among engineering mentors and technical staff members. Work will be conducted at Los Alamos National Laboratory using laboratory computing resources and engineering software.

42 ENGINEERING↗

PETSc/TAO Users Manual (Rev. 3.19)

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for the implementation of large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and opti mization that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started). PETSc provides many of the mechanisms needed within parallel application codes, such as parallel matrix and vector assembly routines. The library is organized hierarchically, enabling users to employ the level of abstraction that is most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users. PETSc is a sophisticated set of software tools; as such, for some users it initially has a much steeper learning curve than packages such as MATLAB or a simple subroutine library. In particular, for individuals without some computer science background, experience programming in C, C++, python, or Fortran and experience using a debugger such as gdb or lldb, it may require a significant amount of time to take full advantage of the features that enable efficient software use. However, the power of the PETSc design and the algorithms it incorporates may make the efficient implementation of many application codes simpler than “rolling them” yourself. For many tasks a package such as MATLAB is often the best tool; PETSc is not intended for the classes of problems for which effective MATLAB code can be written. There are several packages, built on PETSc, that may satisfy your needs without requiring directly using PETSc. We recommend reviewing these packages functionality before starting to code directly with PETSc. PETSc can be used to provide a “MPI parallel linear solver” in an otherwise sequential, or OpenMP parallel code. This approach cannot provide extremely large improvements in the application time by utilizing large numbers of MPI processes but can still improve the performance. Certainly all parts of a previously sequential code need not be parallelized but the matrix generation portion must be parallelized to expect true scalability to large numbers of MPI processes. See PCMPI for details on how to utilize the PETSc MPI linear solver server. Since PETSc is under continued development, small changes in usage and calling sequences of routines will occur. PETSc has been supported for twenty-five years; see mailing list information on our website for information on contacting support.

97 MATHEMATICS AND COMPUTING↗

Curifactory: A research experiment manager

Curifactory is a command line tool and framework for organizing Python experiment code, configuration parameters, and results. It is an opinionated and lightweight approach to workflow management infrastructure and is primarily intended to support researchers conducting experiments on one machine. This software was developed to support the reproducibility of results for several data science projects in the Nuclear Nonproliferation Division at Oak Ridge National Laboratory. Curifactory is intended to be a general framework and is not specific to machine learning or data science. It can aid in any field in which experiments are primarily computation-based studies and can be implemented in Python (e.g., high-energy physics, astronomy, computational chemistry). Here, the design emphasizes the automated caching of intermediate data analysis artifacts to speed up development involving computationally intensive tasks. It also allows for data provenance and experiment reproduction. Individual experiment runs are tracked through logs and their output reports, and entire copies of a run with all cached data and metadata can be exported for others to run using Curifactory on another machine. Curifactory experiments can either be integrated into a project from the beginning or can be written on top of an existing codebase without needing significant modification. A few important views of the Curifactory library can be seen in Figure 1.

97 MATHEMATICS AND COMPUTING↗

UQpy v4.1: Uncertainty quantification with Python

This paper presents the latest improvements introduced in Version 4 of the UQpy, Uncertainty Quantification with Python, library. In the latest version, the code was restructured to conform with the latest Python coding conventions, refactored to simplify previous tightly coupled features, and improve its extensibility and modularity. To improve the robustness of UQpy, software engineering best practices were adopted. A new software development workflow significantly improved collaboration between team members, and continuous integration and automated testing ensured the robustness and reliability of software performance. Continuous deployment of UQpy allowed its automated packaging and distribution in system agnostic format via multiple channels, while a Docker image enables the use of the toolbox regardless of operating system limitations.

97 MATHEMATICS AND COMPUTING↗

Multispectral and thermal surface imagery and surface elevation mosaics (camspec-air)

This dataset contains high resolution image products (orthomosaics) acquired from midsized uncrewed aerial systems, which have been processed for value added quality. The instrument itself, a multispectral imager, the Altum by Micasense, captures 6 spectral bands (red, green blue, NIR, red edge, and LWIR/thermal1) as radiance, which is converted to reflectance. The code used to develop these images first uses tools from the Micasense python library2 to apply dark level corrections, row gradient corrections, and radiometric corrections. Next it uses the processing API from Agisoft Metashape software to align and mosaic the processed imagery, following the processes developed by the USGS' structure from motion workflow documentation3. Captures at different altitudes (recorded in MSL) produce an orthomosaic, a tif image containing information related to the 6 spectral bands, and a digital elevation model (DEM), a tif image containing information related to the elevation of the surveyed terraine. Metadata included in every image can be used to extract lat, lon, and reflectance values. 1https://www.arm.gov/publications/tech_reports/handbooks/doe-sc-arm-tr-281.pdf 2https://micasense.github.io/imageprocessing/MicaSense%20Image%20Processing%20Setup.html 3https://pubs.usgs.gov/of/2021/1039/ofr20211039.pdf

54 ENVIRONMENTAL SCIENCES↗

Multispectral and thermal surface imagery and surface elevation mosaics - SGP July 2022

This data set contains high-resolution image products (orthomosaics) acquired from midsized uncrewed aerial systems that have been processed for value-added quality. The instrument itself, a multispectral imager, the Altum by Micasense, captures six spectral bands (red, green blue, NIR, red edge, and LWIR/thermal1) as radiance, which is converted to reflectance via custom code. The code used to develop these images first uses tools from the Micasense Python library2 to apply dark level corrections, row gradient corrections, and radiometric corrections. Next, it uses the processing API from Agisoft Metashape software to align and mosaic the processed imagery, following the processes developed by the USGS' structure from motion workflow documentation.3 Captures at different altitudes (recorded in MSL) produce an orthomosaic, a tif image containing information related to the six spectral bands, and a digital elevation model (DEM), a tif image containing information related to the elevation of the surveyed terraine. Metadata included in every image can be used to extract lat, lon, and reflectance values. 1 https://www.arm.gov/publications/tech_reports/handbooks/doe-sc-arm-tr-281.pdf 2 https://micasense.github.io/imageprocessing/MicaSense%20Image%20Processing%20Setup.html 3 https://pubs.usgs.gov/of/2021/1039/ofr20211039.pdf

54 ENVIRONMENTAL SCIENCES↗

Multispectral and thermal surface imagery and surface elevation mosaics - Pendleton Feb 2023

This data set contains high-resolution image products (orthomosaics) acquired from midsized uncrewed aerial systems that have been processed for value-added quality. The instrument Altum multispectral imager by Micasense, captures in six bands (blue - 475nm, green - 560nm, red - 668nm, red edge - 717nm, near-infrared - 840 and LWIR/thermal - 11000nm. The optical bands are converted to reflectance via custom code using the instantaneous band horizontal irradiance ratio to the radiance of the pixel. The code used to develop these images first uses tools from the Micasense Python library to apply dark level corrections, row gradient corrections, and radiometric corrections. Next, it uses the processing API from Agisoft Metashape software to align and mosaic the processed imagery, following the processes developed by the USGS' structure from motion workflow documentation. Captures from different altitudes are used to produce an orthomosaic at each height. A tif image containing information related to the six spectral bands, and a digital elevation model (DEM), a tif image containing information related to the elevation of the surveyed terrain. 1 https://www.arm.gov/publications/tech_reports/handbooks/doe-sc-arm-tr-281.pdf 2 https://micasense.github.io/imageprocessing/MicaSense%20Image%20Processing%20Setup.html 3 https://pubs.usgs.gov/of/2021/1039/ofr20211039.pdf

54 ENVIRONMENTAL SCIENCES↗

CEA2022: A Modernization of NASA Glenn’s Software CEA (Chemical Equilibrium with Applications)

The software program “Chemical Equilibrium with Applications” (CEA) is used to solve chemical equilibrium, and compute thermodynamic and transport properties of the resulting mixture, and also has special solvers dedicated to rocket, shock, and detonation problems. We have recently completed a full re-write of CEA with modernization and improvements, called “CEA2022”. In this paper, we will give an overview of CEA2022’s features, and discuss some of the fundamental equations used by CEA2022, as well as the fundamental assumptions, in order to provide users with a complete understanding of the software’s methodology. Several enhancements have been made to the software, including modern software development practices, interface improvements, and additional features. The feature enhancements include: running cases in parallel with thread safe solves, thermodynamic and transport database updates, and allowing for negative and inert reactants. In terms of interface improvements, we have made CEA a reusable library by adding APIs for multiple languages, including Python, Matlab, Excel, Fortran, and C. The subroutine interface allows for integration with other applications, including flow-solver integration (i.e. with CFD). We also compare results between CEA2022 and the previous version (CEA2) as a validation of the new software.

chemical equilibrium↗

ElectricityLCI

The ElectricityLCI is a Python package for creating regionalized life cycle inventory models of U.S. electricity generation, consumption, and distribution using standardized facility and generation data for use with open-source LCA software.

Electricity; LCA; LCI; Python; life cycle analysis↗

sfapi_client v1.0

This software is a client designed to interact with the Superfacility API developed at NERSC. It allows users to easily access the api in python and programmatically interact with the compute resources available at NERSC. Other implementations are ad-hoc and made by our user base, the goal of the project is to encourage more users to adopt the API by making it easier to start building complex HPC workflows.

Tyler, Nicholas↗

pnnl/PTMPSI

PTM-Psi is a Python 3 package that combines several capabilities to streamline the workflow to interrogate the impact of PTMs on proteins using well-established software packages. The workflow of the PTM-Psi software package includes input files and launch instances from standard packages such as AlphaFold, NWChem, GROMACS, and the Autodock Suite

Mejia-Rodriguez, Daniel↗

pdas-experiments

SAND2025-04589O pdas-experiments automates computational experiments of fluid flow simulations. It uses the pressio-demoapps-schwarz package as a basis to break down complex simulations into smaller, manageable parts. This application is an extension of the Sandia Pressio software which uses domain decomposition to work with complex simulations more efficiently. Users can test different simulation setups, while keeping a detailed record of their experiments so they can be reproduced later. The software includes a C++ program that runs individual experiments based on user-defined settings in a YAML file, as well as a Python script that can manage multiple simulations at once. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Tezaur, Irina [Sandia National Lab. (SNL-CA), Live↗

Automated analysis of unlabeled PV data with Solar Data Tools software: Overview and feature updates

Distributed rooftop PV systems: ubiquitous, yet commonly have unlabeled data Difficult or impossible to form a performance index We developed Solar Data Tools (SDT), an open-source Python library for analyzing PV power (and irradiance) time-series data SDT enables analysis of unlabeled PV data—no model, no meteorological data, no performance index required Takes a statistical signal processing approach Data processing steps are largely pre-defined and automatic regardless of system type—from utility tracking systems to multi-pitch rooftop systems

Meyers-Im, Bennet E↗

Generalizable, fast, and accurate DeepQSPR with fastprop

Abstract Quantitative Structure–Property Relationship studies (QSPR), often referred to interchangeably as QSAR, seek to establish a mapping between molecular structure and an arbitrary target property. Historically this was done on a target-by-target basis with new descriptors being devised to specifically map to a given target. Today software packages exist that calculate thousands of these descriptors, enabling general modeling typically with classical and machine learning methods. Also present today are learned representation methods in which deep learning models generate a target-specific representation during training. The former requires less training data and offers improved speed and interpretability while the latter offers excellent generality, while the intersection of the two remains under-explored. This paper introduces , a software package and general Deep-QSPR framework that combines a cogent set of molecular descriptors with deep learning to achieve state-of-the-art performance on datasets ranging from tens to tens of thousands of molecules. provides both a user-friendly Command Line Interface and highly interoperable set of Python modules for the training and deployment of feedforward neural networks for property prediction. This approach yields improvements in speed and interpretability over existing methods while statistically equaling or exceeding their performance across most of the tested benchmarks. is designed with Research Software Engineering best practices and is free and open source, hosted at github.com/jacksonburns/fastprop.

Burns, Jackson W. (ORCID:0000000206579426)↗

The System for Classification of Low-Pressure Systems (SyCLoPS): An All-In-One Objective Framework for Large-Scale Data Sets

We propose the first unified objective framework (SyCLoPS) for detecting and classifying all types of low-pressure systems (LPSs) in a given data set. We use the state-of-the-art automated feature tracking software TempestExtremes (TE) to detect and track LPS features globally in ERA5 and compute 16 parameters from commonly found atmospheric variables for classification. A Python classifier is implemented to classify all LPSs at once. The framework assigns 16 different labels (classes) to each LPS data point and designates four different types of high-impact LPS tracks, including tracks of tropical cyclone (TC), monsoonal system, subtropical storm and polar low. The classification process involves disentangling high-altitude and drier LPSs, differentiating tropical and non-tropical LPSs using novel criteria, and optimizing for the detection of the four types of high-impact LPS. A comparison of our labels with those in the International Best Track Archive for Climate Stewardship (IBTrACS) revealed an overall accuracy of 95% in distinguishing between tropical systems, extratropical cyclones, and disturbances. SyCLoPS produces a better TC detection skill compared to the previous algorithms, highlighted by an approximately 6% reduction in the false alarm rate compared to the previous TE algorithm. The vertical cross section composite of the four types of high-impact LPS we detect each shows distinct structural characteristics. Finally, we demonstrate that SyCLoPS is valuable for investigating various aspects of LPSs in climate data, such as the evolution of a single LPS track, patterns of LPS frequencies, and precipitation or wind influence associated with a particular LPS class.

54 ENVIRONMENTAL SCIENCES↗

Enhancing Monte Carlo Workflows for Nuclear Reactor Analysis with Metamodel-Driven Modeling

Monte Carlo codes are essential components of many reactor physics simulation workflows as high-fidelity continuous-energy neutron transport solvers. Among Monte Carlo radiation transport codes, MCNP is particularly notable due to its diverse simulation capabilities, large user base, and long validation history. Despite being a powerful simulation tool, MCNP provides limited capabilities to allow automated execution, model transformation, or support for user-defined logic and abstractions that limit its compatibility with modern workflows. Here, to better integrate MCNP into a modern scientific workflow, we have developed an intuitive yet full-featured MCNP Application Program Interface (API) in Python, named MCNPy, which provides a specialized set of classes for MCNP input development. Moreover, to guarantee that our reading, writing, and modeling capabilities remain self-consistent (and to render the huge scope of the MCNP API manageable), we have adopted a strategy of model-driven software development in which a generalized model of the MCNP input format has been created. From this generalized model, or “metamodel,” problem-specific implementations such as an engine for input validation or a codebase for programmatic operations may be automatically generated. Since MCNPy primarily acts as a Python front-end to the underlying Java API that directly interfaces with the metamodel, it is intrinsically linked to the metamodel and thus remains maintainable. With MCNPy, users can programmatically read, write, and modify any syntactically valid MCNP input file regardless of its origin. These capabilities allow users to automate complicated tasks like design optimization and model translation for nuclear systems. As examples, this work demonstrates the use of MCNPy to find the critical radius of a plutonium sphere and to translate a 9000+ line MCNP input file into a corresponding OpenMC model.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Normality of I-V Measurements Using ML

There is an increased interest in instrument-computing ecosystems (ICEs) that support science workflows empowered by AI-automated experiments and computations in diverse areas. In particular, electrochemistry ICEs are promising for accelerating the design and discovery of electrochemical systems for energy storage and conversion, by automating significant parts of workflows that combine synthesis and characterization experiments with computations. They require the integration of flow controllers, solvent containers, pumps, fraction collectors, and potentiostats, all connected to an electrochemical cell, as illustrated in Fig. 1. These are specialized instruments with custom software that is not originally designed for network integration. We developed network and software solutions for electrochemical workflows that adapt system and instrument settings in real-time for multiple rounds of experiments. In particular, we developed Python wrappers for Application Programming Interfaces (APIs) of instrument commands and Pyro client-server modules that enable them to be executed from remote computers. The entire workflow is orchestrated by a Jupyter notebook running on a remote computer.

Al Najjar, Anees↗