Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “PYTHON”

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 685 records · Page 38

PV Performance Modeling and Stakeholder Engagement (Final Technical Report)

This core capability project’s objective is to increase the value of photovoltaic (PV) performance models by improving their functionality, demonstrating, and quantifying their validity, and offering a wide range of stakeholder engagement opportunities. In FY22-24, we developed new and improved modeling algorithms and functions to represent PV performance more accurately in a variety of environments and conditions. The “Model parameter toolkit” was developed and includes functions to translate between different module temperature models, incidence angle modifier models, and single-diode models. A new modeling capability named “PV Atlas” was also developed leveraging Sandia’s High Performance Computing resources. This capability allows us to investigate several questions and provide climate-specific best practices and geographic data files; all these are hosted on an interactive website on Sandia’s GitHub and can be used for training, system optimization, or to provide best practices for uncertainty reduction. For model validation, we published high-quality PV performance, and weather data; these data are well documented, filtered, and processed for quality and include examples on how to run PV simulations. We also developed well documented, standardized methods for validating PV models and ran independent model validation and 2 blind modeling intercomparisons engaging with 49 organizations from 17 countries. We co-led and contributed to a growing, well documented and maintained suite of open-source functions for PV modeling (i.e., the pvlib-python) and we outreached to the PV modeling stakeholders via the PVPMC workshops and web resources. In addition, this project supported US representation and leadership for the International Energy Agency (IEA) PVPS Task 13; specifically, members of our team led and supported 3 subtasks on: 1) Best practices for the optimization of bifacial photovoltaic tracking, 2) Extreme weather events and their multiple impact on PV power plants: Risks, failure mechanisms and mitigation strategies, and 3) Best practice guidelines for the use of economic and technical Key Performance Indicators (KPIs). This project resulted in the publications of 14 peer reviewed journal papers, 37 conference presentations, 6 SAND reports, 5 public datasets and 6 new webpages on the PVPMC website. It supported the release of 13 pvlib-python versions where 28 enhancements were from this PV Performance Modeling project. We co-organized 5 PVPMC workshops in FY22-24 with the participation of 214 unique institutions and around 700 participants. The PVPMC website was redesigned, and its reliability was improved; it receives over 50,000 visitors/year from 202 unique countries.

14 SOLAR ENERGY↗

Light Output Fitting Software

Light output response of scintillators is crucial to the utilization of organic scintillators as effective tools in radiation detection and measurement. While the response is a continuous distribution, the light output corresponding to the maximum energy deposition is crucial in effectively understanding and simulating a detector. There are a variety of fits derived in literature that will vary for every detector material. The Light Output Response Fitter, or LORF Program is a python script designed to easily and quickly compute and plot fits for a variety of scintillator light output models. It includes a stopping power library constructed from SRIM including Organic Glass, EJ309, EJ301, Stilbene, EJ276, and their deuterated counterparts by default, with the ability for the user to add custom stopping power libraries. The user is also capable of importing the python package and utilizing its in-built functions as appropriate. Uses for this capability include plotting and computing a model with known parameters.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

Enabling Innovative Analysis on Heterogeneous Clusters through HTCdaskgateway

High energy particle (HEP) physics research is going through fundamental changes as we move to collect larger amounts of data from the Large Hadron Collider (LHC). Analysis facilities and distributed computing, through HTCs, have come together to create the next pythonic generation of analysis by utilizing HTCdaskgateway, a Dask gateway extension, allowing users to spawn workers compatible with both their analysis and heterogeneous clusters in line with authentication requirements. This is enabling physicists to engage with scientific python in ways they had not before because of domain specific C++ tools. An example of HTCdaskgateway’s use is Fermilab’s Elastic Analysis Facility.

Chavez, Elise [U. Wisconsin, Madison (main)]↗

HFIR Activity Workbook Generator (HAWK) User Guide

The HFIR Activity WorkbooK generator (HAWK) is a Python code that automates and streamlines the activity calculation of samples after irradiation in the High Flux Isotope Reactor (HFIR). HAWK’s results provide estimates of the activity and nuclide inventory of irradiated specimens before they are moved to hot cell facilities, where they undergo post-irradiation examination. The samples’ activity results guide the packing of shipping containers and inform the accountable inventories for the hot cell facilities. The toolkit was originally developed by Charles Daily, a former R&D staff member at Oak Ridge National Laboratory (ORNL). As of May 2025, HAWK is developed by the Radiation Transport & HPC Methods Group (Nuclear Energy and Fuel Cycle Division) at ORNL. Figure 1 presents HAWK’s workflow. To use HAWK, users need to: 1. Develop an Excel input workbook (i.e., XLSX extension) containing data from the experiment’s materials, irradiation history (cycles), and irradiation positions. 2. Make minor edits to an existing template JSON file (i.e., auxiliary_data.JSON) and to the Python driver. The driver sets the necessary environment variables, defines the material compositions, and ultimately calls HAWK. Once configured, HAWK runs the Oak Ridge Isotope Generation code (ORIGEN) to calculate the masses, activities, and heat load at the end of irradiation for each isotope in the specimen. ORIGEN is part of SCALE, ORNL’s in-house computational tool for performing nuclear safety and design calculations. Following this step, HAWK postprocesses the results and generates three output workbooks summarizing the activity calculations.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

DASSH-F: Subchannel Based Thermal Analysis

The DASSH thermal analysis code is designed to rapidly allow a reactor design engineer to obtain flow rates requirements that satisfy peak temperature constraints in the domain. The advantage of using DASSH over a hand calculation is that it has a more rigorous treatment of the pin power distribution and coolant heat transfer within an assembly and between assemblies. The advantage of using DASSH over a conventional 3D subchannel code or a computational fluid dynamics code (CFD) is that it can obtain the desired solution in a matter of minutes in serial with minor computer memory needs. The DASSH methodology for pin lattice models is virtually identical to SUPERENERGY-2 with additional functionalities taken from follow on work to SUPERENERGY-2 done at ANL in the 1980s. DASSH today is an integral component of the Argonne Fast Reactor analysis suite for reactor design work. DASSH obtains the power distribution from a coupled neutron-gamma heating calculation in GAMSOR (including DIF3D) at each time point of a companion fuel cycle analysis calculation with REBUS. The domain in DASSH assumes a hexagonal grid typical for fast reactors with much of the geometry information taken from the DIF3D model. DASSH assumes the assemblies that are loaded into each grid position are ducted to control the coolant flow. The user can alternatively provide their own geometry and power profile instead of inheriting it from DIF3D. Considerable detail is given on the subchannel formulation of DASSH in this document. Much of the formulation and design of the code builds upon research done by previous authors with little new investigation. Thus the decisions made in developing the subchannel model used in DASSH have their origins over 50 years ago. Much of the heat transfer methodology in DASSH is built upon correlations for both the coolant mixing and heat transfer coefficients for pins and ducts. DASSH is thus not a rigorous treatment of a given problem, but a rapid assessment of the temperature field that has known limitations with respect to an experimental measurement or CFD calculation. The DASSH input and output are detailed along with usage of the software. The DASSH output provides tables of evaluated material properties and key coolant and pin temperature results. DASSH can create Python scripts that generate domain summary pictures. DASSH can also generate assembly temperature maps and VTK output files which allow the DASSH solution to be visualized. As the primary purpose of the DASSH software is to compute the coolant and fuel pin temperature distribution for a given model of a reactor, much of the output focus is giving the user quick summary tables needed to assess the performance of a given orifice flow specification. The present version of DASSH has a crude orifice search capability and a sufficient orifice flow search capability. The flow search tries to meet user specified constraints for 1) peak 2-sigma clad temperature, 2) peak coolant temperature, and 3) desired bulk outlet temperature. This document serves as the manual for the Fortran based DASSH software that was developed to replace the Python version of DASSH developed as part of the VTR program.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Strategic Petroleum Reserve Cavern Leaching Monitoring CY24

This report provides an analysis of the effects of raw water leaching at the U.S. SPR using the Sandia Solution Mining Code (SANSMIC). A new version of the code has been established in the past year (implemented in Python and C++ code) and was used for this annual report. Additionally, the setup, running, and post-processing of leaching modeling has now been streamlined into a single Python notebook environment for each cavern run.

58 GEOSCIENCES↗

Measuring the Stress Factors for Photovoltaic (PV) Backsheet Degradation

Back sheet failure has resulted in power loss and large-scale recall of photovoltaic modules, resulting in billions of dollars in lost revenue. The light exposure on the backside of a photovoltaic module comes primarily from reflected light which alters the distribution of natural sunlight. Because of this, modelling the backside exposure and duplicating the exposure is much more difficult than modeling the frontside exposure. This project aims to study how various back sheets and junction box materials degrade under different conditions and to develop Python code to help model and predict degradation. The stress factors for back-sheet degradation must be quantified to extrapolate accelerated stress tests to the field. Test samples were placed in the A3, A4, and A5 conditions, as defined in IEC 62788-7-2, to assess the temperature and humidity dependence of ultraviolet (UV) induced degradation. We are utilizing a custom chamber with exposure from 0.5 UV-suns to 5 UV-suns to understand the dependence of degradation on light intensity. A group of samples put in the A3 condition had glass filters with 50% UV cut-offs of 320 nm, 335 nm, and 360 nm to assess the wavelength dependence of UV degradation. All this data is necessary to assess the impact of non-standard UV light exposure. The material evaluation tests include gloss measurements, attenuated total internal reflectance Fourier transform infrared spectroscopy (ATR-FTIR), UV-visible reflectance/transmittance utilizing a Cary Ci7000 spectrophotometer, and a nano-indenter for surface hardness and modulus measurements. Alongside the experimental work, there is a computational effort using raytracing and Python open-source tools in PVDeg , PVLib, and Bifacial_Radiance. This code will create specific exposure scenarios and enable the evaluation of chamber degradation relative to field degradation. Equation 1 is a strawman equation used to model degradation on the backside of a PV module. We will create simplified code, based on the results of ray-tracing calculations, which uses a view factor approach to provide fast calculations for the most common exposure scenarios.

14 SOLAR ENERGY↗

BASIN-3D Data Integration for Selected ARM Data Field Campaign Report

The purpose of this data services request was to demonstrate integration of the Atmospheric Radiation Measurement (ARM) User Facility’s “met” datastreams with time series data from other earth science data sources using the BASIN-3D data synthesis software tool. BASIN-3D is an open-source Python library that enables researchers to integrate data across configured public and private data sources. It provides a common query language for researchers to request measurement locations and time series data based on specified locations, variables, time period, statistics, aggregation, and data quality. BASIN-3D acquires the data that match the query from each configured data source and translates the results into harmonized vocabularies, thus reducing researchers' data-wrangling effort. In addition, because the queries are executed on demand, researchers can easily regenerate their synthesized data sets as new data and/or data updates become available, eliminating one-off data products. BASIN-3D can output data using a variety of different data structures for end-user applications including Python pandas data frames and hdf5 output formats.

54 ENVIRONMENTAL SCIENCES↗

Calibration and Data Analysis of a Frequency Selectable Laser Source for CMB Detector Characterization

Cosmic Microwave Background (CMB) experiments study faint radiation left over from the early universe. The CMB was created when the universe became cool enough for light to travel freely through space, and today it gives scientists one of the earliest images of the universe. One important goal of modern CMB experiments is to measure this radiation with higher precision in order to search for evidence that supports the theory of cosmic inflation. To do this, scientists use extremely sensitive detectors that must be calibrated accurately. The Frequency Selectable Laser Source, or FLS, is a new calibration tool that can send selected frequencies to detectors and help measure their response. During my internship, I worked on the FLS after it returned to Fermilab from Chile, where it had been used to characterize detectors at the Simons Observatory. The system came back in parts, so the first part of my project was helping rebuild the optical and mechanical setup. After the system was rebuilt, we performed alignments to maximize the receiver photocurrent. We then collected calibration measurements over different frequency ranges, including 543 GHz to 568 GHz, 740 GHz to 766 GHz, and 60 GHz to 500 GHz. These measurements were used to check waterline calibration and reflectivity features and compare new data with previous data. Another major part of my project was learning Python so I could understand previous analysis code, modify it for new files, and write my own code to compare the mean response between datasets. The results showed that the new data was close to previous measurements and that waterline features near 556 GHz and 752 GHz were found within less than 1.5 GHz of the expected values. I also completed the reflectivity analysis for five prisms in two polarization orientations. In the original orientation, the results were consistent between the five prisms and close to values measured on a different system at the University of Chicago. I then collected a second set of measurements on my own with the polarization of the laser rotated by 90 degrees and compared them with the original data using the same Python workflow. The measured reflectivity increased for all five prisms in the new orientation, showing that the prism reflectivity depends on polarization. Future work will focus on using the FLS to characterize real CMB detectors.

Pumarino, Rafael [Unlisted]↗

Port scanner and Testing Suite

This project addresses the challenge of identifying and managing open network ports across physical and virtual hosts. The current form of verifying ports in use required manually searching individual ports - a process that was both time- consuming and a potential bottleneck for deployment timelines. To resolve this, an automated port scanning tool was developed in Python. The tool supports simultaneous multiple port scans. To ensure functionality and long-term maintainability, a comprehensive testing suite was implemented using Python’s unittest framework. Edge cases, including valid port numbers, reversed ranges, and closed ports, were explicitly tested to ensure robust handling of real-world scenarios. The resulting tool reduces the time required to verify port security across a network, supporting both targeted and host checks and broader Classless Inter-Domain Routing (CIDR) -based network scans. This work demonstrates the value of automation and test-driven development in strengthening network security practices, and provides a foundation for future enhancements.

Rivera, Linda [Fermilab]↗

Using Numba for GPU acceleration of Neutron Beamline Digital Twins

Digital twins of neutron instruments using Monte Carlo ray tracing have proven to be useful in neutron data analysis and verifying instrument and sample designs. However, these simulations can become quite complex and computationally demanding with tens of billions of neutrons. In this paper, we present a GPU accelerated version of MCViNE using Python and Numba to balance user extensibility with performance. Numba is an open-source just-in-time (JIT) compiler for Python using LLVM to generate efficient machine code for CPUs and GPUs with NVIDIA CUDA. The JIT nature of Numba allowed complex instrument kernels to be generated easily. Initial simulations have shown a speedup between 200-1000x over the original CPU implementation. The performance gain with Numba enables more sophisticated data analysis and impacts neutron scattering science and instrument design.

Kendrick, Coleman↗

PyPop: a mature open-source software pipeline for population genomics

Python for Population Genomics (PyPop) is a software package that processes genotype and allele data and performs large-scale population genetic analyses on highly polymorphic multi-locus genotype data. In particular, PyPop tests data conformity to Hardy-Weinberg equilibrium expectations, performs Ewens-Watterson tests for selection, estimates haplotype frequencies, measures linkage disequilibrium, and tests significance. Standardized means of performing these tests is key for contemporary studies of evolutionary biology and population genetics, and these tests are central to genetic studies of disease association as well. Here, we present PyPop 1.0.0, a new major release of the package, which implements new features using the more robust infrastructure of GitHub, and is distributed via the industry-standard Python Package Index. New features include implementation of the asymmetric linkage disequilibrium measures and, of particular interest to the immunogenetics research communities, support for modern nomenclature, including colon-delimited allele names, and improvements to meta-analysis features for aggregating outputs for multiple populations.

59 BASIC BIOLOGICAL SCIENCES↗

Editorial: Neuroscience, computing, performance, and benchmarks: Why it matters to neuroscience how fast we can compute

At the turn of the millennium the computational neuroscience community realized that neuroscience was in a software crisis: software development was no longer progressing as expected and reproducibility declined. The International Neuroinformatics Coordinating Facility (INCF) was inaugurated in 2007 as an initiative to improve this situation. The INCF has since pursued its mission to help the development of standards and best practices. In a community paper published this very same year, Brette et al. tried to assess the state of the field and to establish a scientific approach to simulation technology, addressing foundational topics, such as which simulation schemes are best suited for the types of models we see in neuroscience. In 2015, a Frontiers Research Topic “Python in neuroscience” by Muller et al. triggered and documented a revolution in the neuroscience community, namely in the usage of the scripting language Python as a common language for interfacing with simulation codes and connecting between applications. The review by Einevoll et al. documented that simulation tools have since further matured and become reliable research instruments used by many scientific groups for their respective questions. Open source and community standard simulators today allow research groups to focus on their scientific questions and leave the details of the computational work to the community of simulator developers. A parallel development has occurred, which has been barely visible in neuroscientific circles beyond the community of simulator developers: Supercomputers used for large and complex scientific calculations have increased their performance from ~10 TeraFLOPS (10 13 floating point operations per second) in the early 2000s to above 1 ExaFLOPS (10 18 floating point operations per second) in the year 2022. This represents a 100,000-fold increase in our computational capabilities, or almost 17 doublings of computational capability in 22 years. Moore's law (the observation that it is economically viable to double the number of transistors in an integrated circuit every other 18–24 months) explains a part of this; our ability and willingness to build and operate physically larger computers, explains another part. It should be clear, however, that such a technological advancement requires software adaptations and under the hood, simulators had to reinvent themselves and change substantially to embrace this technological opportunity. It actually is quite remarkable that—apart from the change in semantics for the parallelization—this has mostly happened without the users knowing. The current Research Topic was motivated by the wish to assemble an update on the state of neuroscientific software (mostly simulators) in 2022, to assess whether we can see more clearly which scientific questions can (or cannot) be asked due to our increased capability of simulation, and also to anticipate whether and for how long we can expect this increase of computational capabilities to continue.

biophysically detailed models↗

A hybrid finite volume method and smoothed particle hydrodynamics approach for efficient and accurate blast simulations

Modeling strong shock waves in fluids remains a persistent challenge in computational physics. Essential to research efforts in industry and defense, numerous methods have been devised to improve the accuracy and efficiency of shock simulations. A novel, hybrid Finite Volume Method (FVM)-Smoothed Particle Hydrodynamics (SPH) approach is capable of further improving efficiency and retaining accuracy by exploiting the favorable characteristics of each respective method. This hybrid approach is presented for shock capturing in compressible fluids. The Python framework Pyro2 is employed to simulate a coarse FVM mesh, while the Python framework PySPH is utilized to model the fluid in regions with high gradients through SPH particles. The performance of the hybrid FVM-SPH scheme, compared to the individual FVM and SPH methods, is assessed in 1 kt and 10 kt blast simulations. Our results indicate that the hybrid approach offers higher computational efficiency than SPH while preserving its accuracy and characteristics. The hybrid approach had a relative speedup of 11.3x and 22.3x over the FVM and SPH approaches for the 1 kt simulation and a relative speedup of 14.7x and 20.9x over the FVM and SPH approaches for the 10 kt simulation. The hybrid SPH algorithm enables future compressible fluid simulations with more extensive capabilities than grid-based methods alone, presenting potential applications in modeling fluid-structure interactions and solid deformation and fracturing in blast simulations.

Myers, Conner↗

Inputs, Outputs and Plotting Scripts for paper Extending near-axis equilibria in DESC

Python scripts and outputs from the DESC and pyQSC/pyQIC codes used to create the results in the paper "Extending near-axis equilibria in DESC". The contained README file has the details of which scripts create which figures, as well as on what versions of the codes were used. The repo also contains python pickle (.p) files and .txt files with the data used to create each figure (which are used by the plotting scripts).

DESC↗

CosTuuM: Polarized Thermal Dust Emission by Magnetically Oriented Spheroidal Grains

We present the new open-source C++-based Python library CosTuuM that can be used to generate infrared absorption and emission coefficients for arbitrary mixtures of spheroidal dust grains that are (partially) aligned with a magnetic field. We outline the algorithms underlying the software, demonstrate the accuracy of our results using benchmarks from literature, and use our tool to investigate some commonly used approximative recipes. We find that the linear polarization fraction for a partially aligned dust grain mixture can be accurately represented by an appropriate linear combination of perfectly aligned grains and grains that are randomly oriented, but that the commonly used picket fence alignment breaks down for short wavelengths. We also find that for a fixed dust grain size, the absorption coefficients and linear polarization fraction for a realistic mixture of grains with various shapes cannot both be accurately represented by a single representative grain with a fixed shape, but that instead an average over an appropriate shape distribution should be used. Insufficient knowledge of an appropriate shape distribution is the main obstacle in obtaining accurate optical properties. CosTuuM is available as a standalone Python library and can be used to generate optical properties to be used in radiative transfer applications.

79 ASTRONOMY AND ASTROPHYSICS↗

Fantastic Fits with fantasy of Active Galactic Nuclei Spectra: Exploring the Fe II Emission near the Hα Line

In this study, a refined approach for multicomponent fitting of active galactic nuclei (AGNs) spectra is presented utilizing the newly developed Python code Fully Automated pythoN Tool for AGN Spectra analYsis (fantasy). AGN spectra are modeled by simultaneously considering the underlying broken power-law continuum, predefined emission line lists, and an Fe II model, which is here extended to cover the wavelength range 3700–11000 Å. The Fe II model, founded solely on atomic data, effectively describes the extensive emission of the complex iron ion in the vicinity of the Hγ and Hβ lines, as well as near the Hα line, which was previously rarely studied. The proposed spectral fitting approach is tested on a sample of high-quality AGN spectra from the Sloan Digital Sky Survey Data Release 17. The results indicate that when Fe II emission is present near Hβ, it is also detected redward from Hα, potentially contaminating the broad Hα line wings and thus affecting the measurements of its flux and width. The production of Fe II emission is found to be strongly correlated with Eddington luminosity and appears to be controlled by a similar mechanism as the hydrogen Balmer lines. The study highlights the benefits of fitting type 1 AGN spectra with the fantasy code, pointing that it may be used as a robust tool for analyzing a large number of AGN spectra in the coming spectral surveys.

79 ASTRONOMY AND ASTROPHYSICS↗

RouteE: A Vehicle Energy Consumption Prediction Engine

The emergence of connected and automated vehicles and smart cities technologies create the opportunity for new mobility modes and routing decision tools, among many others. To achieve maximum mobility and minimum energy consumption, it is critical to understand the energy cost of decisions and optimize accordingly. The Route Energy prediction model (RouteE) enables accurate estimation of energy consumption for a variety of vehicle types over trips or sub-trips where detailed drive cycle data are unavailable. Applications include vehicle route selection, energy accounting and optimization in transportation simulation, and corridor energy analyses, among others. The software is a Python package that includes a variety of pre-trained models from the National Renewable Energy Laboratory (NREL). However, RouteE also enables users to train custom models using their own data sets, making it a robust and valuable tool for both fast calculations and rigorous, data-rich research efforts. The pre-trained RouteE models are established using NREL’s Future Automotive Systems Technology Simulator paired with approximately 1 million miles of drive cycle data from the Transportation Secure Data Center, resulting in energy consumption behavior estimates over a representative sample of driving conditions for the United States. Validations have been performed using on-road fuel consumption data for conventional and electrified vehicle powertrains. Transferring the results of the on-road validation to a larger set of real-world origin-destination pairs, it is estimated that implementing the present methodology in a green-routing application would accurately select the route that consumes the least fuel 90% of the time. The novel machine learning techniques used in RouteE make it a flexible and robust tool for a variety of transportation applications.

33 ADVANCED PROPULSION SYSTEMS↗