Search NASA⌕ Search

SEARCH · Search NASA

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 1,135 records · Page 63

Automated Noise Calibration System (VT-1000)

This paper details an automated Noise Source calibration system in development at Jet Propulsion Laboratory, California Institute of Technology (JPL). The paper begins with a discussion on Noise Figure and Excess Noise Ratio (ENR) theory, fundamentals and governing equations. As part of the fundamentals is a discussion of the system’s use of the Y-factor method to obtain accurate measurements of the Unit Under Test (UUT), and how these measurements are compared against a known ENR standard to obtain the UUT’s ENR values. There is also an in-depth discussion on uncertainty quantification for Noise Source system calibrations. The architecture of the automated calibration system is provided, which includes both the system’s hardware and software configuration. The software is written in Python 3, and provides the user detailed instruction on how to proceed, including step-by-step connection requirements. This system automates much of the measurement process, including real-time uncertainty quantification and report generation, as well as real-time feedback to the user to allow intervention if necessary. The system takes advantage of a database of results from previous measurements to compare calibration history of the ENR measurements. The automated system presented here operates over a frequency range from 10 MHz to 50 GHz, and has shown substantial time savings over traditional manual methods of performing this calibration.

Timpe, Scott↗

ICESat-2 Tracking App for Public Engagement

Information regarding the predicted ground tracks of Earth observing satellites is typically difficult to find and understand for the general public. This paper will describe and demonstrate an iOS mobile application for tracking NASA’s ICESat-2 (Ice, Cloud, and land Elevation Satellite 2), making it easier for users to see exactly when the satellite will be passing over any location in the world. ICESat-2, launched in 2018, uses green lasers to track elevation changes in polar ice and indirectly measure trees, land, and water, providing a precise height map of our planet. Most satellite tracking mobile apps display information about where a specific satellite is at that given moment and when it will be passing over the user’s location in the near future. ICESat-2 the app differs by allowing users to search for data about the satellite’s future flybys relative to a specific search location and radius that they get to choose. The search results include points up to three months into the future. By supplying user-centric results, users are provided relevant data in an easy-to- access manner. Additionally, this data is very clear to visualize in-app through maps, pins, and ground track lines. This becomes an incredibly useful tool not only to plan an observation of the satellite as it passes, but also for knowing when elevation data for a specific area will be available. In addition, this flyby information helps students and citizen scientists take more valuable tree height measurements to better validate the elevation data collected by the satellite. To achieve this outreach product, three key components were developed. These include a Python script to simplify the raw ground track data, a Node.js server that actively takes requests, and the iOS app itself. From initial beta tests, it has been noted that providing users with a map for visual awareness of search radius and result coordinates gives them a more comprehensive understanding of the data. Overall, by cleaning the raw data and making it available in a much more accessible and easier to understand way, ICESat-2 the app has exceeded expectations in providing educational and exciting data for all.

Harbeck, Kaitlin↗

The Earth Model Column Collaboratory (EMC2) v1.1: An Open-Source Ground-Based Lidar and Radar Instrument Simulator and Subcolumn Generator for Large-Scale Models

Climate models are essential for our comprehensive understanding of Earth's atmosphere and can provide critical insights on future changes decades ahead. Because of these critical roles, today's climate models are continuously being developed and evaluated using constraining observations and measurements obtained by satellites, airborne, and ground-based instruments. Instrument simulators can provide a bridge between the measured or retrieved quantities and their sampling in models and field observations while considering instrument sensitivity limitations. Here we present the Earth Model Column Collaboratory (EMC2), an open-source ground-based lidar and radar instrument simulator and subcolumn generator, specifically designed for large-scale models, in particular climate models, but also applicable to high-resolution model output. EMC2 provides a flexible framework enabling direct comparison of model output with ground-based observations, including generation of subcolumns that may statistically represent finer model spatial resolutions. In addition, EMC2 emulates ground-based (and air- or space-borne) measurements while remaining faithful to large-scale models' physical assumptions implemented in their cloud or radiation schemes. The simulator uses either single particle or bulk particle size distribution lookup tables, depending on the selected scheme approach, to perform the forward calculations. To facilitate model evaluation, EMC2 also includes three hydrometeor classification methods, namely, radar- and sounding-based cloud and precipitation detection and classification, lidar-based phase classification, and a Cloud Feedback Model Intercomparison Project Observational Simulator Package (COSP) lidar simulator emulator. The software is written in Python, is easy to use, and can be straightforwardly customized for different models, radars, and lidars. Following the description of the logic, functionality, features, and software structure of EMC2, we present a case study of highly supercooled mixed-phase cloud based on measurements from the U.S. Department of Energy Atmospheric Radiation Measurement (ARM) West Antarctic Radiation Experiment (AWARE). We compare observations with the application of EMC2 to outputs from four configurations of the NASA Goddard Institute for Space Studies (GISS) climate model (ModelE3) in single-column model (SCM) mode and from a large-eddy simulation (LES) model. We show that two of the four ModelE3 configurations can form and maintain highly supercooled precipitating cloud for several hours, consistent with observations and LES. While our focus is on one of these ModelE3 configurations, which performed slightly better in this case study, both of these configurations and the LES results post-processed with EMC2 generally provide reasonable agreement with observed lidar and radar variables. As briefly demonstrated here, EMC2 can provide a lightweight and flexible framework for comparing the results of both large-scale and high-resolution models directly with observations, with relatively little overhead and multiple options for achieving consistency with model microphysical or radiation scheme physics.

Earth Model Column Collaboratory↗

MLtool: Universal Supervised Machine Learning Tool to Model Tabulated Data

Machine Learning (ML) is a subfield of Artificial Intelligence that gives computers the ability to learn from past data without being explicitly programmed. The predictive capabilities of ML models have already been used to facilitate several scientific breakthroughs. However, the practical application of ML is often limited due to the gaps in technical knowledge of its users. The common issue faced by many scientific researchers is the inability to choose the appropriate ML pipelines that are needed to treat real-world data, which is often sparse and noisy. To solve this problem, we have developed an automated Machine Learning tool (MLtool) that includes a set of ML algorithms and approaches to aid scientific researchers. The current version of MLtool is implemented as an object-oriented Python code that is easily extensible. It includes 44 different regression algorithms used to model data. MLtool helps users select the best model for their data, based on the scoring metrics used. Besides regression algorithms, MLtool also includes a suite of pre- and post-processing techniques such as missing value imputation, categorical variable encoding, input feature normalization, uncertainty quantification, exploratory data analysis (EDA), etc. MLtool was tested on several publicly available multi-dimensional data sets and was found capable of making accurate predictions.

Machine learning↗

A Practical Guide to Writing a Radiative Transfer Code

Using our decades-long experience in radiative transfer (RT) code development for Earth science, we endeavor to reduce the knowledge gap of bringing RT from theory to code quickly. Despite numerous classic and recent literature, it is still hard to develop anRT code from scratch within a few weeks. It is equally hard to understand, not to mention modify, an existing “monster” RT code, for which the developer is either located remotely or has retired. Following the format of “Numerical Recipes” by Press et al., we collocate in this paper small pieces of necessary theory with corresponding small pieces of RT code. These are arranged in an order that is natural for code development, which is often opposite of the natural order for laying out the theoretical basis. We focus on the transfer of unpolarized monochromatic solar radiation in a plane-parallel atmosphere over a reflecting surface. Both the surface and the atmosphere are homogeneous (uniform) at all directions. The multiple scattering is numerically solved using the deterministic method of Gauss-Seidel iterations. Except for the presented Python-Numba open-source RT code gsit, the paper does not report any new scientific results, but rather serves as an academic demonstration. If development time is an issue or the reader is familiar with basic concepts of RT theory, we recommend proceeding directly to Sec.3 “RT code development.

multiple light scattering↗

Introducing Tropical Geometric Approaches to Delay Tolerant Networking Optimization

Delay Tolerant Networking (DTN) is the standard approach to the networking of space systems with the goal of supporting the Solar System Internet (SSI). Current space networks have a small scale and often depend on rigorously scheduled (pre-determined) contact opportunities; this manual approach inhibits scalability. The goal of this paper is to recast these scheduling problems in order to apply the optimization machinery of tropical geometry. Contact opportunities in space are dependent on such factors as orbital mechanics and asset availability, which induce time-varying connectivity; indeed, end-to-end connectivity might never occur. Routing optimization within this structure is classically difficult and typically utilizes Dijkstra's algorithm as applied to contact graphs. Alternatively, we follow the successes of tropical geometry in train schedule optimization, job assignments, and even traditional networking, by extending this approach to this more general (i.e. disconnected) problem space. These successes imply tropical geometry provides a useful framework in the context of DTNs, starting with applications to queuing theory and long-haul links. Recently, tropical geometry has been applied to parametric path optimization on graphs with variable edge weights. In this work, we extend these advances to account for the problem of routing in a space network, and find that tropical geometry is well-suited to the challenges offered by this new setting, including contact schedules featuring probabilities. Our approach leverages the combinatorial nature of the problem to give feasible shortest path trees in the presence of variable channel conditions and latency, evolving topologies, and uncertainty inherent in space routing. We discuss our tropical approach to DTN for two Python implementations, a Verilog Tropical ALU implementation, tropical frameworks for other parametric graph problems, and solution stability. Lastly, a program for future work is included to illuminate the path ahead.

Delay Tolerant Networking↗

VESIcal: An Open-source Thermodynamic Model Engine for Mixed Volatile (H2O-CO2) Solubility in Silicate Melts

Modeling the solubility of volatiles in silicate melts is fundamental to the interpretation of volcanic systems and has implications for magma dynamics, eruption style, and material transport between the mantle, crust, and atmosphere. Recent advancements in computational capabilities and access to computing tools has outpaced the functionality and extensibility of previously available modeling platforms. Here we present VESIcal (Volatile Equilibria and Saturation Index calculator), the first comprehensive modeling tool for H2O, CO2, and mixed (H2O-CO2) solubility in silicate melts that: a) allows users access to seven popular models, with easy inter-comparison between models; b) provides universal functionality for all models (e.g., functions for calculating saturation pressures, degassing paths, etc.); c) can process large datasets (1,000’s of samples) automatically; d) can output computed data into an Excel spreadsheet or CSV file for post-modeling analysis; e) integrates plotting capabilities directly within the tool; and f) provides all of this within the framework of a python library, making the tool extensible by the user and allowing any of the model functions to be incorporated into any other code capable of calling python.Here we will provide a demonstration of VESIcal and its capabilities with applications to various volcanic processes affected by volatiles. VESIcal represents the first tool capable of directly comparing multiple solubility models and equations of state. We find that commonly used models predict surprisingly different volatile solubilities, particularly for pure CO2 or mixed CO2-H2O fluids. Even for melt compositions that are well represented in the calibration datasets of multiple models (e.g., MORBs), calculated solubilities for pure CO2 and pure H2O can deviate from one another by factors of >2 leading to 2x deviations in calculated saturation pressures (e.g., 5 to 10 kbar). The solubility of CO2 predicted by different rhyolitic models also differs substantially, overwhelming other sources of uncertainty such as analytical errors on measurements of volatile contents or uncertainties in crustal density profiles. This highlights the importance of model choice when drawing geological conclusions based on volatiles in magmas.

Kayla Iacovino↗

A High Dynamic-Range Photon-Counting Receiver for Deep Space Optical Communication

The Deep Space Optical Communication (DSOC) project will demonstrate free-space optical communication at almost 3 AU, or 3 orders of magnitude further than any previous attempt. DSOC will utilize the 5m Palomar Hale Telescope to receive the downlink signal, which will couple the downlink light onto an optical table and into a superconducting nanowire single photon detector (SNSPD). The output of the SNSPD is digitized by the Ground Laser Receiver Signal Processing Assembly (GSPA) using a high throughput streaming time to digital converter (TDC). The GSPA is a scalable FPGA-based receiver which demodulates and decodes the DSOC downlink signal through novel signal processing algorithms implemented on Xilinx UltraScale+ FPGAs, as well as Python-based software monitor and control routines. Exploiting the unique TDC-based architecture, the GSPA supports over four orders of magnitude of downlink data rates across multiple orders of magnitude of signal and background powers. In this paper we present an overview of the hardware, firmware and software architectures to implement this system, as well as performance analysis for links ranging from near-Earth to 2.8 AU.

Srinivasan, Meera↗

Bingo: A Customizable Framework for Symbolic Regression with Genetic Programming

In this paper, we introduce Bingo, a flexible and customizable yet performant Python framework for symbolic regression with genetic programming. Bingo maintains a modular code structure for simple abstraction and easily swappable components. Fitness functions, selection methods, and constant optimization methods allow for easy problem-specific customization. Bingo also maintains several features for increased efficiency such as parallelism, equation simplification, and a C++ backend. We compare Bingo’s performance to other genetic programming for symbolic regression (GPSR) methods to show that it is both competitive and flexible.

machine learning↗

Constructing a Knowledge Graph & Applying Graph Algorithms to Draw Insights about GES-DISC Jira Tickets

In order to assess the complexities of Jira tickets created by NASA Goddard Earth Sciences Data and Information Services Center (GES-DISC), it was beneficial to create a knowledge graph. The knowledge graph receives ticket data through the Jira API. The creation of a knowledge graph will help to answer high-level questions about internal structure, knowledge gaps, and team organization within GES-DISC. To work towards this goal, the knowledge graph was constructed in adockerizedNeo4j graph database. Once the graph had been created, graph algorithms were applied to answer high-level questions, such as exploring the role of staff in relation to projects, which qualities of a ticket contribute to the formation of communities within the graph, etc. To answer these questions, centrality and community detection algorithms were applied using Cypher querying language. The analysis of the results of the algorithms indicated that, as expected, certain individuals were more connected to some projects, while others were serving as hub nodes between two or more projects. Similarly, specific keywords are more likely to increase a Jira ticket’s centrality in the graph. In terms of community detection, when tickets in a community have certain qualities, it is more probable for them to be grouped together. To best visualize which nodes had higher centrality scores or were grouped into certain communities, interactive graphs were created in Python using Plotly and Matplotlib. Ultimately, the project was successful in creating and deploying a knowledge graph to better understand the relationships between data in GES-DISC Jira tickets

Rebecca Lipton↗

Enabling in-time Prognostics with Surrogate Modeling through Physics-enhanced Dynamic Mode Decomposition Method

Computational models provide essential quantitative tools for assessing and predicting the health and performance of physical systems. However, high-fidelity models are rarely used in real-time operations or large optimization loops, due to their time-intensive nature. A common approach to improving computational efficiency of prognosis is to employ surrogate models. Such models can significantly decrease computation time for some accuracy loss. In this context, use of Dynamic Mode Decomposition (DMD) is proposed to generate surrogate models for lithium-ion (Li-ion) battery discharge. DMD has been suggested and used successfully in the area of fluid dynamics for over a decade, but it has not been applied to the PHM domain, where far-ahead prediction of nonlinear behavior is crucial to propagate faults or predict Remaining Useful Life (RUL). For Li-ion battery health management, the standard application of DMD using only the observable quantities of interest was unable to capture the nonlinear discharge of batteries exhibited in lab testing. The Koopman theory, however, provides a mechanism to tradeoff low dimensional nonlinear models with high-dimensional linear ones in a DMD framework, by augmenting nonlinear state variables into the system representation. In this way, DMD allows for configurable simulation accuracy dependent on the dimensionality of the Koopman operator. For battery health management, we augmented the observable variables with the hidden states of a higher-fidelity physics model to build the DMD surrogate. In comparison to a high-fidelity model, the surrogate improved computational efficiency with only a minimal loss of accuracy, and enabled long-term prognostics horizons. A generalized method for this was implemented in the prog models python package.

prognostics and health management↗

Progress on Inverse Estimation Technique of Non-Linear Pitch Damping Coefficient Curves Using Free-Flight CFD Generated Trajectories

Characterization of entry vehicle pitch damping coefficient curves is crucial to ensure appropriate re-entry and overall mission success. The pitch damping coefficient (C_(m_q )+C_(m_α ̇ )) is used to encapsulate the oscillatory growth or decay of a body during a trajectory. The inverse estimation technique utilizes an existing Free-Flight CFD (FF-CFD) dataset and wraps a reconstruction algorithm in an optimizer. The reconstruction integrates the planar equations of motion derived by Schoenenberger, Queen [1] using Python’s scipy.integrate.solve_ivp. The optimizer’s objective function is the normalized 𝐿2 residual of the angle of attack peaks between the reconstructed trajectory and the original data produced with FF-CFD. Inclusion of the peak times in this residual calculation allows for simultaneous optimization of the pitch moment coefficient, C_(m_α ). This residual equation is shown below in Eq. 1. The optimizer scipy.optimize.minimize was used with the gradient-based Powell method for the analysis presented, however the differential evolution method was investigated as means of comparison, and was found to produce marginally lower residual values with prohibitively longer run times. Further, the pitch damping curve is found by fitting a cubic interpolation function to a set of (α, (C_(m_q )+C_(m_α ̇ ))) control points, where the α points are held constant and the (C_(m_q )+C_(m_α ̇ )) values are the optimized parameters. The pitch moment curve uses a linear interpolation between the minimum and maximum α in the dataset. FF-CFD generated trajectories using the Dragonfly capsule geometry with the Genesis ballistic range model parameters were simulated and used for this analysis. These FF-CFD trajectories simulate planar motion, as restricted by the reconstructing the equations of motion, of three different cases: 1-DoF (free-to-pitch), 2-DoF (free-to-pitch and heave), and 3-DoF (free-to-pitch, heave, and decelerate). Pitch damping coefficient curves generated using this inverse estimation curve technique with FF-CFD 1-DoF Dragonfly data are found in Fig. 1. Preliminary results reconstructing ballistic range shots using these FF-CFD derived predictions of the pitch damping curve (Fig. 1) are shown in Fig. 2. It should be noted that the ballistic range shot used a Genesis model whereas the FF-CFD data used a Dragonfly geometry, however these geometries are similar.

entry↗

Bingo: A Customizable Framework for Symbolic Regression with Genetic Programming

In this paper, we introduce Bingo, a flexible and customizable yet performant Python framework for symbolic regression with genetic programming. Bingo maintains a modular code structure for simple abstraction and easily swappable components. Fitness functions, selection methods, and constant optimization methods allow for easy problem-specific customization. Bingo also maintains several features for increased efficiency such as parallelism, equation simplification, and a C++ backend. We compare Bingo’s performance to other genetic programming for symbolic regression (GPSR) methods to show that it is both competitive and flexible.

David Randall↗

Building access and community standards for opacity data at the onset of next-generation atmosphere observations

The characterization of a diverse set of exoplanet atmosphere observations, ranging from hot gas giants to small temperate rocky worlds, will be one of the legacies of upcoming facilities such as the James Webb Space Telescope (JWST). Our understanding and interpretation of such observations will hinge on our ability to link observations with atmospheric theoretical studies that critically rely on fundamental molecular and atomic opacities. Computing such opacities is a highly non-trivial and inaccessible process which requires several terabytes of available disk space, hours of CPU time per pressure-temperature combination, and requires users to carefully aggregate line lists data from various sources, which limits access and intercomparison of opacity data in the exoplanet community. Here we present MAESTRO (Molecules and Atoms in Exoplanet Science: Tools and Resources for Opacities) an opacity database that can be accessed by the community via a web interface and python API. MAESTRO was built with community input to create a version-controlled opacity database that is easily queryable, includes informative metadata to ensure reproducibility, and exports relevant citations for inclusion in publications. Scheduled for community release in 2022, MAESTRO will prove to be an invaluable community resource in the era of JWST and beyond.

Natasha Batalha↗

Towards Plume Impingement Modeling in Space Environments

After 30 years human presence in low-earth orbit, NASA is returning to the moon and eventually will go to Mars. To this end, NASA is constructing the Lunar Gateway, an ISS-like space station to act as a home base for Lunar exploration. A large space station must be assembled while in orbit, using a “piecemeal” approach. In this context, it means that the different modules will arrive at different times and attach to what is already in service. The ISS provides an excellent example of this approach, and the proposed Lunar Gateway will undergo a similar assembly process. This assembly is achieved via “docking” maneuvers between modules, which are made possible by sequential firings of the onboard reaction control system (RCS) thrusters. They work by firing hot gases to produce adverse thrust and the needed change in velocity to safely finish the docking approach. The issue is that the gas from these thrusters' forms flow structures described as “plumes” and can impinge onto the outer surfaces of the space station, causing unwanted forces and moments, heat loads, sediment deposition, and in extreme cases, even surface erosion. All mechanisms that can damage the space station and must be avoided. Both permanent and visiting modules will have these RCS thruster exhaust impingement problems. Accurately and efficiently modeling these plume is an involved multi-physics calculation but also an important tool when designing the control algorithms of approaching modules. This poster presents progress towards this simulation on two fronts. First is the verification of OpenFOAM for rarefied plume impingement calculations by direct comparison to published DAC cases. Second is the estimation of plume impingement strikes over the time scale of an entire docking event. This is done by using a simple plume source flow model and a prescribed motion visualizer—coded in Python. Together these tools help push NASA's capabilities for simulating these plume impingement effects.

Rarefied Flows↗

MLtool++ package for machine learning and its applications to materials data

We are developing Mltool++ package of software programs for machine learning (ML). Given the MLtool Python code, we create a faster C++ code with the potential for parallelization. We have extracted materials data from the literature. One dataset contains melting temperatures of stoichiometric 1:1 metallic compounds XZ, composed by elements X={Al, Ti, V, Cr, Zr, Nb, Mo, Hf, Ta, W} and Z={Co, Ni, Cu, Rh, Pd, Ag, Ir, Pt, Au}, and another contains solid-solid symmetry-breaking phase transition temperatures. We studied dependences of temperatures on composition, found several correlations, and parametrized them by analytical functions. Mltool++ package is generic and applicable to any tabulated numeric data.

Pierce M. Pettit↗

Analysis and Optimization of Baseline Single Aisle Aircraft for Future Electrified Powertrain Flight Demonstrator Comparisons

The purpose of this study is to provide baseline single-aisle vehicles for future comparisons NASA’s Electrified Powertrain Flight Demonstrator (EPFD) turbofan powered Vision Systems. Both a large single-aisle (≈150 passenger) and a small single-aisle (≈100 passenger) vehicle will be analyzed using NASA’s General Aviation Synthesis Program and a modernized Python-based version of this program that enables efficient gradient-based optimization of both the airframe and propulsion that currently is being referred to as GASPy. A technology build-up will be conducted to bring the current State-of-the-art vehicles to a projected 2035 technology level by incorporating estimations for improvements in aerodynamics, structures, and propulsions. These vehicles can be used in NASA’s future EPFD project as baselines to measure the benefits of future hybrid and fully electric aircraft against. The advanced, large single-aisle will then be used to demonstrate the benefits of a coupled engine-airframe optimization for fuel burn reduction.

Carl J Recine↗

Lower Mekong Hydrological Decision Support system

The Lower Mekong Hydrological Decision Support system (LMHDSs) is a environmental data analysis tool developed at the NASA Goddard Space Flight Center with funding from the SERVIR Applied Sciences Team and technical support from SERVIR Science Coordination Office (SCO). The web application allows stakeholders and decision-makers to view and download the inputs and outputs to the Soil and Water Assessment Tool(SWAT) model temporally and spatially. The front end is developed using JavaScript libraries like OpenLayers and Stock charts and the backend uses Django, a Python-based web framework. The web app provides several features, including visualizing map products, time-series plots, land-use/land-cover and associated soil information, and a data cart for downloading data. In addition, LMHDSs incorporates the NASAaccess software package, which provides seamless access to various climate and weather data products from NASA’s Earth observations portfolio. The application is region agnostic (any valid SWAT model can be used), modular (different components of the applications can be customized), and open (anyone can download and run it on their end). The web app is currently in use by the Mekong River Commission (MRC), a treaty-based regional intergovernmental organization that is made up of Mekong countries, as part of its hydrological decision support.

Hydrology↗