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 595 records · Page 33

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↗

Comparing the Performance of Julia on CPUs versus GPUs and Julia-MPI versus Fortran-MPI: a case study with MPAS-Ocean (Version 7.1)

Abstract. Some programming languages are easy to develop at the cost of slow execution, while others are fast at runtime but much more difficult to write. Julia is a programming language that aims to be the best of both worlds – a development and production language at the same time. To test Julia's utility in scientific high-performance computing (HPC), we built an unstructured-mesh shallow water model in Julia and compared it against an established Fortran-MPI ocean model, the Model for Prediction Across Scales–Ocean (MPAS-Ocean), as well as a Python shallow water code. Three versions of the Julia shallow water code were created: for single-core CPU, graphics processing unit (GPU), and Message Passing Interface (MPI) CPU clusters. Comparing identical simulations revealed that our first version of the Julia model was 13 times faster than Python using NumPy, where both used an unthreaded single-core CPU. Further Julia optimizations, including static typing and removing implicit memory allocations, provided an additional 10–20× speed-up of the single-core CPU Julia model. The GPU-accelerated Julia code was almost identical in terms of performance to the MPI parallelized code on 64 processes, an unexpected result for such different architectures. Parallelized Julia-MPI performance was identical to Fortran-MPI MPAS-Ocean for low processor counts and ranges from 2× faster to 2× slower for higher processor counts. Our experience is that Julia development is fast and convenient for prototyping but that Julia requires further investment and expertise to be competitive with compiled codes. We provide advice on Julia code optimization for HPC systems.

54 ENVIRONMENTAL SCIENCES↗

JHTDB-wind: a web-accessible large-eddy simulation database of a wind farm with virtual sensor querying

This paper introduces JHTDB-wind (https://turbulence.idies.jhu.edu/datasets/windfarms, last access: 11 November 2025), a publicly accessible database containing large-eddy simulation (LES) data from wind farms. Building on the framework of the Johns Hopkins Turbulence Database (JHTDB), which hosts direct numerical simulation (DNS) and some LES datasets of canonical turbulent flows, JHTDB-wind stores the 4D space–time history of the flow and provides users the ability to access and query the data via a web-based virtual sensor interface. The initial dataset comprises LES results from a large wind farm with 10×6 turbines, modeled using a filtered actuator line method, under conventionally neutral atmospheric conditions. These data comprise 1 h (hour) of flow field data (velocity, pressure, potential temperature deviation, subgrid-scale (SGS) eddy viscosity, and turbine forces, approximately 15 TB (terabytes) and wind turbine data – including both turbine-level operational quantities and blade-level aerodynamic quantities (approximately 1.3 TB) – stored in Zarr and Parquet formats, respectively. Data retrieval is facilitated by the giverny Python package, allowing remote users to query the database in Python or MATLAB (C and Fortran support are available for flow field data). This paper details the simulation setup and demonstrates data access through examples that analyze wind farm flow structures and turbine performance. The framework is extensible to future datasets, including the JHTDB-wind diurnal cycle simulation analyzed in Xiao et al. (2025).

17 WIND ENERGY↗

rustpix

rustpix is a high-performance, open-source Rust library with first-class Python bindings (via PyO3) for processing pixel-detector data in neutron imaging. It targets time-stamping detectors such as Timepix3 (TPX3) at ORNL's Spallation Neutron Source (VENUS beamline), where each detected neutron deposits charge across a cluster of pixels within a very high-rate event stream (96M+ hits/sec). rustpix parses TPX3 event data in parallel using memory-mapped I/O, offers four interchangeable clustering algorithms (ABS adjacency-based search, DBSCAN, graph/union-find connected components, and a parallel grid method), and extracts weighted, super-resolved centroids to produce neutron-event lists. A streaming architecture lets it process files larger than available memory. rustpix is distributed as a pip-installable Python package (with NumPy integration), Rust crates, a command-line tool, and an interactive GUI; it writes HDF5, Apache Arrow, and CSV; and it is designed to extend to TPX4 and other detector types. Released as open-source under the MIT License.

Zhang, Chen [Oak Ridge National Laboratory (ORNL),↗

A Method for Projecting Cloud Shadows Onto a Central Receiver Field to Predict Receiver Damage

This work demonstrates methods of mapping high-spatial-resolution direct normal irradiance (DNI) data from satellites, Total Sky Imagers (TSIs), and analogous data sources onto a heliostat field for characterizing the spatial and temporal variation of the incident flux on a central receiver tower during cloud transient events. The mapping methods are incorporated into an optical software module that interfaces with CoPylot–SolarPILOT’s python API– to provide computationally efficient optical simulation of the heliostat field and the solar power tower. Eventually, this optical model will be incorporated into optimization models whereby a plant operator can understand the effects of cloud transient events on overall power production and receiver lifetime due to creep-fatigue damage and therefore make better informed decisions about receiver shutdown events. By more accurately modelling the effects of cloud events on receiver flux maps, this work may determine the magnitude and frequency of thermal cycling on receiver tubes and panels using actual or realistic cloud shapes instead of averaged DNI values–which may undercount the total cycle number. This work may also prevent unnecessary plant shutdowns due to overly precautionary control strategies and characterize the relative impact of various cloud types on receiver life. We plan to eventually integrate this methodology into the System Advisor Model (SAM) to improve performance model accuracy during periods of cloudiness. In this paper, we demonstrate generating DNI maps and mapping them to a solar field in CoPylot using 10 m resolution data from publicly available Sentinel-2 satellite data over the Crescent Dunes plant.

Mullin, Matthew↗

Parallax-corrected VISST-derived pixel-level products from satellite GOES-16

The NASA Langley group led by William Smith produced GOES-16 satellite cloud retrievals over an approximate 10 by 10 degree region over the CACTI field campaign location. These retrievals are described here: https://www.arm.gov/capabilities/vaps/visst and are available for download here . They use algorithms historically called VISST that are now referred to as SatCORPS. More information can be found in Trepte et al. (2019), Minnis et al. (2021), and Yost et al. (2021). If using this dataset, please cite these references, the CACTI VISST dataset DOI found at the download link above, and this dataset’s DOI. The CACTI VISST pixel-level retrievals are on a 2 km spatial grid and available every 15 minutes (every 10 minutes late in the campaign), producing 21,765 files for the entire field campaign between October 2018 and April 2019. They are not corrected for parallax error, which is an offset in the actual geographical location of a cloud above the surface due to the satellite viewing the cloud partly from the side off nadir. This dataset applies a correction for parallax using the location relative to the satellite and the retrieved cloud top height above the surface, which allows the dataset to be geo-located with surface-based observations. The parallax correction for each location depends on the longitude, latitude and cloud top height above ground level (AGL) for that longitude and latitude in the original VISST files. The cloud top height AGL requires first computing the surface elevation at each VISST grid point. Data from the Advanced Spaceborne Thermal Emission and Reflection (ASTER) Global Digital Elevation Map Version 3 at 30-m resolution is projected onto the VISST grid using conservative coarsening (conserving surface elevation) in the xESMF Python package. The surface elevation is then subtracted from the VISST-retrieved cloud top height above mean sea level. These cloud top heights AGL are then combined with longitude and latitude to estimate the latitude and longitude corrections. Due to variability in cloud top height, the parallax shifts produce an irregular grid of values since higher cloud tops are shifted further than lower cloud tops. A ball tree-based neighbor search with Haversine distance is performed using the Python-based scikit-learn library to find the nearest VISST grid point to each parallax correction-shifted point. The data value of the shifted point is then assigned to that VISST grid point. In this manner, the irregular geographical shifts to correct for parallax are projected back to the rectilinear VISST grid. Because relatively higher clouds should obscure lower clouds, the variable values for the highest cloud top are preferentially chosen if two or more values are assigned to a grid point. The parallax correction should be viewed as an improved but still imperfect estimation of the cloud top locations, largely because the cloud top height is an imperfect retrieval. Please see the attached README document for further information. Users are encouraged to contact the authors with any additional questions.

54 ENVIRONMENTAL SCIENCES↗

Projected Urban Morphology of the Los Angeles Area by the Year 2100

This dataset provides projections of urban building morphologies for the Los Angeles urban area at 30-meter spatial resolution. It contains 192 raster files that detail two primary building attributes: building footprint fractions (ranging from 0 to 1) and average building heights (ranging from 0 to 75 meters). The projections account for a wide range of future pathways, covering two Shared Socioeconomic Pathway (SSP) scenarios (SSP3 and SSP5), two population scenarios, two developed land intensification scenarios, and four distinct levels of intensification. The dataset was created using dual Generative Adversarial Networks (GANs) trained on 2015 land cover and building properties from the National Land Cover Database (NLCD) and Model America datasets. Supporting information on the dataset has been described in the LAUrbanAreaMorphologyProjections2100_README.txt file.

Pandey, Bhartendu↗

DayCent data and results for "Robust paths to net greenhouse gas mitigation and negative emissions via advanced biofuels"

DayCent data and results for:J. L. Field, T. L. Richard, E. A. Smithwick, H. Cai, M. S. Laser, D. S. LeBauer, S. P. Long, K. Paustian, Z. Qin, J. J. Sheehan, P. Smith, M. Q. Wang, L. R. Lynd, Robust paths to net greenhouse gas mitigation and negative emissions via advanced biofuels. Proceedings of the National Academy of Sciences (2020). https://doi.org/10.1073/pnas.1920877117 This zip file contains a UNIX-format DayCent model executable, input files, automation code, and associated directory structure necessary to re-produce the DayCent analysis underlying the manuscript. The main script 'autodaycent.py' (written for Python 2.7) opens an interactive command line routine that facilitates:* Calibrating the DayCent pine growth model.* Initializing DayCent for a set of case studies sites.* Executing an ensemble of model runs representing case study site reforestation, grassland restoration, or conversion to switchgrass cultivation. * Results analysis & generation of manuscript Fig. 3. Note that the interactive analysis code requires that all input files to be contained in the directory structure as uploaded, without modification. Executable versions of the DayCent model (https://www.nrel.colostate.edu/projects/daycent/) compatible with other operating systems are available upon request.Please send questions/comments to John.L.Field@gmail.com

Agro-ecosystem function and prediction↗

GIS Visualization of Transportation Energy Consumption

Transportation is witnessing unprecedented transformation, where emerging technologies are disrupting the way we travel. Be it sharing economy, or micro-mobility, the landscape of urban transportation is undergoing a much-needed paradigm shift. In order to capture and model these shifts, researchers need to be agile in their studies of the current and future transportation landscape. The need for agility in turn calls for sophisticated, intuitive, and reliable means to visualize and share transportation data. Travel is inherently spatial, so methods of visualizing transportation information should also be rooted in spatial analysis. Geographic Information Systems (GIS) are the premier technological framework to analyze and display spatial data. GIS tools have been used in the past to depict flow of vehicles, and display of network conditions (speed, congestion, etc.). However, in an ever-changing technological landscape, spanning advancements in vehicle as well as information systems, depicting vehicle flows falls short of providing a comprehensive picture of the impact these advancements have on travel related energy consumption. To address this issue, this research effort presents a web-based mapping application to visualize how travel related energy flows across a city. The application is being developed by National Renewable Energy Laboratory researchers to integrate various transportation energy consumption models within a GIS schema. This has the goal of enabling rapid analysis of energy impacts of the dramatically evolving transportation environment. The application is being developed using a Python framework for ArcGIS Online. Using road network data from the City of Columbus, Ohio and traffic data from CATT Laboratory's Regional Integrated Transportation Information System, transportation energy consumption will be modeled at a macro level. The application aims to provide highly accurate data while still maintaining the flexibility needed to adapt the model when new technologies arise. The methodology presented through this effort is expected to provide insights into how light-duty vehicles use energy on a large scale based on the road network they use. The application will also provide data exports to enable sharing and collaboration. " need for agility in turn calls for sophisticated, intuitive, and reliable means to visualize and share transportation data. Travel is inherently spatial, so methods of visualizing transportation information should also be rooted in spatial analysis. Geographic Information Systems (GIS) are the premier technological framework to analyze and display spatial data. GIS tools have been used in the past to depict flow of vehicles, and display of network conditions (speed, congestion, etc.). However, in an ever-changing technological landscape, spanning advancements in vehicle as well as information systems, depicting vehicle flows falls short of providing a comprehensive picture of the impact these advancements have on travel related energy consumption. To address this issue, this research effort presents a web-based mapping application to visualize how travel related energy flows across a city. The application is being developed by National Renewable Energy Laboratory researchers to integrate various transportation energy consumption models within a GIS schema. This has the goal of enabling rapid analysis of energy impacts of the dramatically evolving transportation environment. The application is being developed using a Python framework for ArcGIS Online. Using road network data from the City of Columbus, Ohio and traffic data from CATT Laboratory's Regional Integrated Transportation Information System, transportation energy consumption will be modeled at a macro level. The application aims to provide highly accurate data while still maintaining the flexibility needed to adapt the model when new technologies arise. The methodology presented through this effort is expected to provide insights into how light-duty vehicles use energy on a large scale based on the road network they use. The application will also provide data exports to enable sharing and collaboration.

33 ADVANCED PROPULSION SYSTEMS↗

The Scikit HEP Project -- overview and prospects

Scikit-HEP is a community-driven and community-oriented project with the goal of providing an ecosystem for particle physics data analysis in Python. Scikit-HEP is a toolset of approximately twenty packages and a few "affiliated" packages. It expands the typical Python data analysis tools for particle physicists. Each package focuses on a particular topic, and interacts with other packages in the toolset, where appropriate. Most of the packages are easy to install in many environments; much work has been done this year to provide binary "wheels" on PyPI and conda-forge packages. The Scikit-HEP project has been gaining interest and momentum, by building a user and developer community engaging collaboration across experiments. Some of the packages are being used by other communities, including the astroparticle physics community. An overview of the overall project and toolset will be presented, as well as a vision for development and sustainability.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗