Search NASA⌕ Search

SEARCH · Search NASA

Results for “Python toolkit”

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 55 records · Page 3

Portable, heterogeneous ensemble workflows at scale using libEnsemble

libEnsemble is a Python-based toolkit for running dynamic ensembles, developed as part of the DOE Exascale Computing Project. The toolkit utilizes a unique generator–simulator–allocator paradigm, where generators produce input for simulators, simulators evaluate those inputs, and allocators decide whether and when a simulator or generator should be called. The generator steers the ensemble based on simulation results. Generators may, for example, apply methods for numerical optimization, machine learning, or statistical calibration. libEnsemble communicates between a manager and workers. Flexibility is provided through multiple manager–worker communication substrates each of which has different benefits. These include Python’s multiprocessing, mpi4py, and TCP. Multisite ensembles are supported using Balsam or Globus Compute. We overview the unique characteristics of libEnsemble as well as current and potential interoperability with other packages in the workflow ecosystem. We highlight libEnsemble’s dynamic resource features: libEnsemble can detect system resources, such as available nodes, cores, and GPUs, and assign these in a portable way. These features allow users to specify the number of processors and GPUs required for each simulation; and resources will be automatically assigned on a wide range of systems, including Frontier, Aurora, and Perlmutter. Such ensembles can include multiple simulation types, some using GPUs and others using only CPUs, sharing nodes for maximum efficiency. We also describe the benefits of libEnsemble’s generator–simulator coupling, which easily exposes to the user the ability to cancel, and portably kill, running simulations based on models that are updated with intermediate simulation output. We demonstrate libEnsemble’s capabilities, scalability, and scientific impact via a Gaussian process surrogate training problem for the longitudinal density profile at the exit of a plasma accelerator stage. In conclusion, the study uses gpCAM for the surrogate model and employs either Wake-T or WarpX simulations, highlighting efficient use of resources that can easily extend to exascale.

Dynamic ensembles↗

PyCBC Inference: A Python-based Parameter Estimation Toolkit for Compact Binary Coalescence Signals

We introduce new modules in the open-source PyCBC gravitational-wave astronomy toolkit that implement Bayesian inference for compact-object binary mergers. We review the Bayesian inference methods implemented and describe the structure of the modules. Here, we demonstrate that the PyCBC Inference modules produce unbiased estimates of the parameters of a simulated population of binary black hole mergers. We show that the parameters' posterior distributions obtained using our new code agree well with the published estimates for binary black holes in the first Advanced LIGO–Virgo observing run.

79 ASTRONOMY AND ASTROPHYSICS↗

Snakes on a Spaceship—An Overview of Python in Heliophysics

Computational analysis has become ubiquitous within the heliophysics community. However, community standards for peer review of codes and analysis have lagged behind these developments. This absence has contributed to the reproducibility crisis, where inadequate analysis descriptions and loss of scientific data have made scientific studies difficult or impossible to replicate. The heliophysics community has responded to this challenge by expressing a desire for a more open, collaborative set of analysis tools. Here, this article summarizes the current state of these efforts and presents an overview of many of the existing Python heliophysics tools. It also outlines the challenges facing community members who are working toward the goal of an open, collaborative, Python heliophysics toolkit and presents guidelines that can ease the transition from individualistic data analysis practices to an accountable, communalistic environment.

79 ASTRONOMY AND ASTROPHYSICS↗

LLNL/thicket

Thicket is a python-based toolkit for Exploratory Data Analysis (EDA) of parallel performance data that enables performance optimization and understanding of applications’ performance on supercomputers. It bridges the performance tool gap between being able to consider only a single instance of a simulation run (e.g., single platform, single measurement tool, or single scale) and finding actionable insights in multi-dimensional, multi-scale, multi-architecture, and multi-tool performance datasets.

Brink, Stephanie Labasan↗

Snakes on a Spaceship - An Overview of Python in Heliophysics

Computational analysis has become ubiquitous within the heliophysics community. However, community standards for peer review of codes and analysis have lagged behind these developments. This absence has contributed to the reproducibility crisis, where inadequate analysis descriptions and loss of scientific data have made scientific studies difficult or impossible to replicate. The heliophysics community has responded to this challenge by expressing a desire for a more open, collaborative set of analysis tools. This article summarizes the current state of these efforts and presents an overview of many of the existing Python heliophysics tools. It also outlines the challenges facing community members who are working toward the goal of an open, collaborative, Python heliophysics toolkit and presents guidelines that can ease the transition from individualistic data analysis practices to an accountable, communalistic environment.

Burrell, A.G.↗

LLM Information Extraction Toolkit

A modular Python framework for information extraction using large language models with support for multiple backends and optional verification workflows.

Yoon, Hong-Jun [Oak Ridge National Laboratory (ORN↗

Python-Based Scientific Analysis and Visualization of Precipitation Systems at NASA Marshall Space Flight Center

At NASA Marshall Space Flight Center (MSFC), Python is used several different ways to analyze and visualize precipitating weather systems. A number of different Python‐based software packages have been developed, which are available to the larger scientific community. The approach in all these packages is to utilize pre‐existing Python modules as well as to be object‐oriented and scalable. The first package that will be described and demonstrated is the Python Advanced Microwave Precipitation Radiometer (AMPR) Data Toolkit, or PyAMPR for short. PyAMPR reads geolocated brightness temperature data from any flight of the AMPR airborne instrument over its 25‐year history into a common data structure suitable for user‐defined analyses. It features rapid, simplified (i.e., one line of code) production of quick‐look imagery, including Google Earth overlays, swath plots of individual channels, and strip charts showing multiple channels at once. These plotting routines are also capable of significant customization for detailed, publication‐ready figures. Deconvolution of the polarization‐varying channels to static horizontally and vertically polarized scenes is also available. Examples will be given of PyAMPR's contribution toward real‐time AMPR data display during the Integrated Precipitation and Hydrology Experiment (IPHEx), which took place in the Carolinas during May‐June 2014. The second software package is the Marshall Multi‐Radar/Multi‐Sensor (MRMS) Mosaic Python Toolkit, or MMM‐Py for short. MMM‐Py was designed to read, analyze, and display three‐dimensional national mosaicked reflectivity data produced by the NOAA National Severe Storms Laboratory (NSSL). MMM‐Py can read MRMS mosaics from either their unique binary format or their converted NetCDF format. It can also read and properly interpret the current mosaic design (4 regional tiles) as well as mosaics produced prior to late July 2013 (8 tiles). MMM‐Py can easily stitch multiple tiles together to provide a larger regional or national picture of precipitating weather systems. Composites, horizontal and vertical crosssections, and combinations thereof are easily displayed using as little as one line of code. MMM‐Py can also write to the native MRMS binary format, and sub‐sectioning of tiles (or multiple stitched tiles) is anticipated to be in place by the time of this meeting. Thus, MMM‐Py also can be used to power the creation of custom mosaics for targeted regional studies. Overlays of other data (e.g., lightning observations) are easily accomplished. Demonstrations of MMM‐Py, including the creation of animations, will be shown. Finally, Marshall has done significant work to interface Python‐based analysis routines with the U.S. Department of Energy's Py‐ART software package for radar data ingest, processing, and analysis. One example of this is the Python Turbulence Detection Algorithm (PyTDA), an MSFC‐based implementation of the National Center for Atmospheric Research (NCAR) Turbulence Detection Algorithm (NTDA) for the purposes of convective‐scale analysis, situational awareness, and forensic meteorology. PyTDA exploits Py‐ART's radar data ingest routines and data model to rapidly produce aviation‐relevant turbulence estimates from Doppler radar data. Work toward processing speed optimization and better integration within the Py‐ART framework will be highlighted. Python‐based analysis within the Py‐ART framework is also being done for new research related to intercomparison of ground‐based radar data with satellite estimates of ocean winds, as well as research on the electrification of pyrocumulus clouds.

Lang, Timothy J.↗

Mapped Moments to a Cartesian Grid (MMCG) Value-Added Product Report

Objective analysis (OA) is a method of mapping unstructured data to a structured grid. In the context of scanning radar data, OA is used to interpolate data in antenna coordinates (range, azimuth, and elevation) onto a regularly spaced Cartesian grid (Trapp and Doswell 2000). The U.S. Department of Energy Atmospheric Radiation Measurement (ARM) user facility’s Mapped Moments to a Cartesian Grid (MMCG) Value-Added Product (VAP) uses the Python ARM Radar Toolkit (Py-ART), a data model-driven interactive architecture for working with weather radar data, to map the data to a Cartesian grid (Helmus and Collis 2016). MMCG, with Py-ART built in, has the ability to take radar data in antenna coordinates and map the gates to a Cartesian grid using inverse distance weight functions such as Cressman (square) and Barnes (exponential), but also can filter the data during the interpolation. MMCG also allows arbitrary formulations for the radius of influence, which are matched to particular radar scanning strategies. This creates a complex parameter space for optimizing the retention of storm structure detail while minimizing artifacts. MMCG takes data processed with ARM’s Corrected Precipitation Radar Moments in Antenna Coordinates (CMAC) VAP and maps it to a Cartesian grid as the output product. A variety of fields that have been mapped to the Cartesian grid are then saved to plots to complement each grid file.

54 ENVIRONMENTAL SCIENCES↗

RadTraQ (Radar Tracking and Quality Toolkit

RadTraQ is a python library housing routines related to assessing and monitoring the quality of a radar's quality and calibration. This library is a work in progress, currently housing scripts to plot radar CFADs, plot and analyze corner reflector scans, calculate noise floors, create cloud masks, and plot up average profiles for comparisons.

THEISEN, ADAMK↗

Fat Crayon Toolkit

The Fat Crayon Toolkit (FCT) provides python modules for assisting in the design and visualization of boreholes and tunnels and their relationship with natural features such as fractures. Distances of closest approach among the boreholes can be calculated, along with other key design metrics. Additionally, the shear propensity of natural fractures (either deterministic or stochastic) can be visualized in either 3D (as VTK files) or in 2D (stereonets). The example provided demonstrates a test bed developed for the Enhanced Geothermal Systems (EGS) Collab project. This material is based upon work supported by the Geothermal Office of the Department of Energy and the Sanford Underground Research Facility and was prepared by LLNL under Contract DE-AC52-07NA27344.

Morris, JosephP.↗

The ARM Data-oriented Metrics and Diagnostics Package for Climate Models - A New Tool for Evaluating Climate Models with Field Data

The U.S. Department of Energy (DOE) Atmospheric Radiation Measurement (ARM) program User Facility produces ground-based long-term continuous unique measurements for atmospheric state, precipitation, turbulent fluxes, radiation, aerosol, cloud and the land surface, which are collected at multiple sites. These comprehensive datasets have been widely used to calibrate climate models and are proven to be invaluable for climate model development and improvement. This article introduces an evaluation package to facilitate the use of ground-based ARM measurements in climate model evaluation. The ARM data-oriented metrics and diagnostics package (ARM-DIAGS) includes both ARM observational datasets and a Python-based analysis toolkit for computation and visualization. The observational datasets are compiled from multiple ARM data products and specifically tailored for use in climate model evaluation. In addition, ARM-DIAGS also includes simulation data from models participating the Coupled Model Inter-comparison Project (CMIP), which will allow climate-modeling groups to compare a new, candidate version of their model to existing CMIP models. The analysis toolkit is designed to make the metrics and diagnostics quickly available to the model developers.

54 ENVIRONMENTAL SCIENCES↗

The Satellite Image Simulation Toolkit

The Satellite Image Simulation Toolkit (SatIST) is a python software package designed to generate diverse and realistic satellite imaging scenarios. It serves as a toolkit for simulating data that supports the development and testing of algorithms used in satellite detection, calibration, and characterization. SIST provides a suite of simulation tools that allow users to replicate various satellite observation conditions, including sidereal and target tracking. By enabling the creation of scenarios that mimic real-world satellite operations, SIST facilitates advancements in satellite image data processing and the study of satellite behavior under different observational parameters.

Perloff, AlexxS [Lawrence Livermore National Labor↗

GAT (Grid Analysis Toolkit) [SWR-25-41]

Grid Analysis Toolkit (GAT) is a unified Python API and plotting for power system PCM and CEM results (Sienna, PLEXOS, ReEDS™). It's a toolkit for wrangling data for Bulk Grid Dispatch and Transmission Analysis. GAT aims to provide simplified access to PCM and CEM results in a standard format while also allowing raw data access to underlying datasets specific to the model. This software can also be found on PyPI at For plotting, GAT defaults to standard National Lab of the Rockies (NLR) color schemes and standard styles while allowing customization.

Webb, Micah [National Laboratory of the Rockies (N↗

hfem3d_parfrac

A toolkit of FORTRAN90 and PYTHON routines to automate calculation of electrostatic response of fracture networks in geomaterials, specifically designed for distributed memory compute clusters. Software integrates pre-processing of Cubit-generated meshes with calculations from HFEM3D and post-processing for aggregate data analysis.SAND2019-11083 M 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.

Beskardes, Gungor↗

VAST: the Void Analysis Software Toolkit

Voids are expansive regions in the universe containing significantly fewer galaxies than surrounding galaxy clusters and filaments. They are a fundamental feature of the cosmic web and provide important information about galaxy physics and cosmology. For example, correlations between voids and luminous tracers of large-scale structure improve constraints on the expansion of the universe as compared to using tracers alone, and numerous studies have shown that the void environment influences the evolution of galaxies. However, what constitutes a void is vague and formulating a concrete definition to use in a void-finding algorithm is not trivial. As a result, several different algorithms exist to identify these cosmic underdensities. Our Void Analysis Software Toolkit, or VAST, provides Python 3 implementations of two such algorithms: VoidFinder and V 2 . This consolidation of two popular void-finding algorithms allows the user to, for example, easily compare the results of their analysis using different void definitions.

97 MATHEMATICS AND COMPUTING↗

Uncertainty in master-equation-based rate coefficient calculations

Rate coefficients are key quantities in gas phase kinetics and can be determined theoretically via master equation (ME) calculations. Rate coefficients characterize how fast a certain chemical species reacts away due to collisions into a specific product. Some of these collisions are simply transferring energy between the colliding partners, in which case the initial chemical species can undergo a unimolecular reaction: dissociation or isomerization. Other collisions are reactive, and the colliding partners either exchange atoms, these are direct reactions, or form complexes that can themselves react further or get stabilized by deactivating collisions with a bath gas. The input of MEs are molecular parameters: geometries, energies, and frequencies determined from ab initio calculations. While the calculation of these rate coefficients using ab initio data is becoming routine in many cases, the determination of the uncertainties of the rate coefficients are often ignored, sometimes crudely assessed by varying independently just a few of the numerous parameters, and only occasionally studied in detail. In this study, molecular frequencies, barrier heights, well depths, and imaginary frequencies (needed to calculate quantum mechanical tunneling) were automatically perturbed in an uncorrelated fashion. Our Python tool, MEUQ, takes user requests to change all or specified well, barrier, or bimolecular product parameters for a reaction. We propagate the uncertainty in these input parameters and perform global sensitivity analysis in the rate coefficients for the ethyl + O 2 system using state-of-the-art uncertainty quantification (UQ) techniques via Python interface to UQ Toolkit (www . sandia.gov/uqtoolkit). A total of 10,000 sets of rate coefficients were collected after perturbing 240 molecular parameters. With our methodology, sensitive mechanistic steps can be revealed to a modeler in a straightforward manner for identification of significant and negligible influences in bimolecular reactions.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Uncertainty in master-equation-based rate coefficient calculations

Rate coefficients are key quantities in gas phase kinetics and can be determined theoretically via master equation (ME) calculations. Rate coefficients characterize how fast a certain chemical species reacts away due to collisions into a specific product. Some of these collisions are simply transferring energy between the colliding partners, in which case the initial chemical species can undergo a unimolecular reaction: dissociation or isomerization. Other collisions are reactive, and the colliding partners either exchange atoms, these are direct reactions, or form complexes that can themselves react further or get stabilized by deactivating collisions with a bath gas. The input of MEs are molecular parameters: geometries, energies, and frequencies determined from ab initio calculations. While the calculation of these rate coefficients using ab initio data is becoming routine in many cases, the determination of the uncertainties of the rate coefficients are often ignored, sometimes crudely assessed by varying independently just a few of the numerous parameters, and only occasionally studied in detail. In this study, molecular frequencies, barrier heights, well depths, and imaginary frequencies (needed to calculate quantum mechanical tunneling) were automatically perturbed in an uncorrelated fashion. Our Python tool, MEUQ, takes user requests to change all or specified well, barrier, or bimolecular product parameters for a reaction. We propagate the uncertainty in these input parameters and perform global sensitivity analysis in the rate coefficients for the ethyl + O 2 system using state-of-the-art uncertainty quantification (UQ) techniques via Python interface to UQ Toolkit (www.sandia.gov/uqtoolkit). A total of 10,000 sets of rate coefficients were collected after perturbing 240 molecular parameters. With our methodology, sensitive mechanistic steps can be revealed to a modeler in a straightforward manner for identification of significant and negligible influences in bimolecular reactions.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗