Search NASASearch

SEARCH · Search NASA

Results for “Python Programming”

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 37 records · Page 2

Alabama Disasters: Leveraging NASA EOS to Explore the Environmental and Economic Impact of the April 27 Tornado Outbreak

The disastrous tornado outbreak in Alabama on April 27, 2011 greatly impacted the economy of the state. On record, the tornado outbreak was the second deadliest tornado outbreak in U.S. When considering the agricultural and value-added activities such as food and timber processing, farm inputs, manufacturing, transportation, and retail sales, the dollar value of Alabama agribusiness annually exceeds $40 billion (NASS, 2011). This research aims to examine how the timber and agriculture damage affected the state economy of Alabama and will be used to aid in long-term economic recovery. ASTER imagery was used along with ground-truthed NASS (National Agriculture Statistics Service) crop location records to verify the economic impact tornadoes had on the agricultural economy of the state. This swath damage can be calculated by correlating tornado path with NASS statistics on crop yield, precisely showing the fields affected and dollars lost to this disaster. Not only can this be executed manually using ENVI and ArcGIS, but also through the use of Python, a programming language that has the ability to automate the process, creating a product for initial damage assessment.

Herdy, Claire

Alabama Disasters: Leveraging NASA EOS to Explore the Environmental and Economic Impact of the April 27 Tornado Outbreak

The disastrous tornado outbreak in Alabama on April 27, 2011 greatly impacted the economy of the state. On record, the tornado outbreak was the second deadliest tornado outbreak in U.S. When considering the agricultural and value-added activities such as food and timber processing, farm inputs, manufacturing, transportation, and retail sales, the dollar value of Alabama agribusiness annually exceeds $40 billion (NASS, 2011). This research aims to examine how the timber and agriculture damage affected the state economy of Alabama and will be used to aid in long-term economic recovery. ASTER imagery was used along with ground-truthed NASS (National Agriculture Statistics Service) crop location records to verify the economic impact tornadoes had on the agricultural economy of the state. This swath damage can be calculated by correlating tornado path with NASS statistics on crop yield, precisely showing the fields affected and dollars lost to this disaster. Not only can this be executed manually using ENVI and ArcGIS, but also through the use of Python, a programming language that has the ability to automate the process, creating a product for initial damage assessment.

Herdy, Claire

Software Tool for Tracking & Mapping the NASA Orion AA-2 Test Flight Ejectable Data Recorders in Real Time

On 2 July 2019, the NASA Ascent Abort 2 flight took place off the Florida coast to test the emergency systems to separate the Orion Crew Module (CM) from the future Space Launch System rocket in the event of a malfunction. During this high-altitude test, instrumentation data was recorded on twelve customized buoyant Ejectable Data Recorders (EDRs) and subsequently jettisoned from the CM in mid-air. Upon release, the EDRs activated their GPS-Iridium beacon systems and began transmitting Short Burst Data (SBD) messages via the Iridium satellite network to relay their individual location and system health information. To locate, track and retrieve each EDR from the ocean surface in real-time, multiple open-source programming tools (Python and Linux shells) were developed for parsing the incoming Iridium binary SBD messages. For this, a Linux laptop was used to receive the Iridium-generated emails containing the SBD messages and autonomously execute the parsing tools. The received SBD data contained location, timestamp and health status information that was translated, saved, and subsequently used for simultaneously generating a continuously updated color-coded tabular display summary and unique KML files used with Google Earth to track their locations. Once their locations were known, dedicated recovery vessels retrieved all EDRs from the ocean. An additional tool was also developed in order to generate 5- and 10-minute geolocation predictions for each EDR by deriving the displacement distance, elapsed time, displacement heading and velocity based on the latest known information available. The recovery vessels were also tracked with the use of a separate commercial GPS beacon system. After jettison, 67% of the EDRs transmitted valid data by the time they were retrieved from the ocean. However, the real-time information presented by the plotting tool allowed for the ready depiction of EDR dispersal patterns and reference drift trajectories, which contributed to the recovery of all twelve EDRs and the AA-2 flight data. Lastly, the available data showed that the distance between the software’s reported drift/predicted locations and the recovery locations did not exceed 38 meters, therefore demonstrating the advantages of this software tool for supporting real-time tracking and recovery efforts of beacon devices.

Moxey, Lucas

LaRC SmartLab Apps For Instrument Control And Data Processing: Optical Micrometer Data Visualizer

The LaRC Smart Lab applications are a series of software tools to greatly enhance researcher efficiency by streamlining and automating workflows. Python scripts and applications are increasingly being used in scientific workflows, including for instrument control and data processing. Interactive Python scripting environments such as Jupyter Lab provide powerful tools for using Python. In some use cases, the development of standalone applications with dedicated graphical user interfaces (GUIs) can enhance the utility of the code and open it up to more users, including non-programmers. Here, we describe a GUI based optical micrometer data visualization application developed as part of the LaRC SmartLab project. We highlight its use in visualizing experimental data and briefly discuss its implementation to give pointers to programmers who wish develop work based on this application's or similar co de.

LaRC SmartLab

LaRC SmartLab Apps For Instrument Control and Data Processing: Laboratory Environment Monitor

The LaRC SmartLab applications are a series of software tools to greatly enhance researcher efficiency by streamlining and automating workflows. Python scripts and applications are increasingly being used in scientific workflows, including for instrument control and data processing. Interactive Python scripting environments such as JupyterLab provide powerful tools for using Python. In some use cases, the development of standalone applications with dedicated graphical user interfaces can enhance the utility of the code and open it up to more users, including non-programmers. Here, we describe a Python based application for communicating with, and displaying data from, iTHX Temperature, Humidity, and Dew Point probes. We discuss the set up and use of the application as well as its implementation. We also highlight the use of Simulated probes to enable users and developers to familiarize with or debug the application, even when they do not have access to the physical hardware in the laboratory.

LaRC SmartLab

Tonlé Sap Food Security and Agriculture II: Evaluating Changes in Ecosystem Vitality and Freshwater Healthin the Tonlé Sap Basin using Remotely Sensed Data

The Tonlé Sap Lake and river basin in central Cambodia provide critical ecosystem services to the region, including fisheries, agricultural irrigation, hydropower, and biodiverse habitats. Deforestation, increased pumping for farming, and effects of climate change such as droughts and forest fires threaten the health of the lake and food security in the region. This project built upon the previous term through a partnership with Conservation International (CI), the Cambodian Ministry of Water Resources and Meteorology, and the Tonlé Sap Authority to assess ecosystem vitality and implement CI’s Freshwater Health Index (FHI) tool, in an effort to prioritize resource expenditure and highlight areas of concern. Due to the COVID-19 pandemic and related travel restrictions, partners had not been able to readily collect in situ data for the past year, which make up the majority of FHI inputs. To help fill this data gap, we developed a methodology for using Gravity Recovery and Climate Experiment (GRACE) satellite data to calculate groundwater storage depletion, and a Python Application Programming Interface for processing and formatting remotely-sensed data for the Soil and Water Assessment Tool (SWAT) model. We then used SWAT to model nutrient flows and of phosphorous, nitrogen and suspended sediments amounts in the basin from October 2000 to December 2020. These outputs served as inputs for the FHI and provided policy makers with robust monitoring information to aid decision-making in the area and safeguard the lake’s vital fisheries and biodiversity.

Justine Spore

Kamodo’s Model-Agnostic Satellite Flythrough: Lowering the Utilization Barrier for Heliophysics Model Outputs

Heliophysics model outputs are increasingly accessible, but typically are not usable by the majority of the community unless directly collaborating with the relevant model developers. Prohibitive factors include complex file output formats, cryptic metadata, unspecified and often customized coordinate systems, and non-linear coordinate grids. Some pockets of progress exist, giving interfaces to various simulation outputs, but only for a small set of outputs and typically not with open-source, freely available packages. Additionally, the increasing array of tools built upon these sporadic interfaces are typically model-specific. We present Kamodo’s model-agnostic satellite flythrough capabilities as the solution to the utilization barrier for heliophysics model outputs. Developed at the Community Coordinated Modeling Center, these flythrough capabilities are built in Python upon a network of model-agnostic interfaces developed in collaboration with model developers, providing interpolation results the community can trust. Kamodo’s flythrough capabilities present the user with a growing variety of flythrough tools based upon a rapidly expanding library of heliophysics model outputs in several domains, currently including a variety of Ionosphere-Thermosphere-Mesosphere and global magnetosphere model outputs. Each capability is designed to be easily accessible via simplistic model-agnostic syntax, with the entire package freely available in the cloud on Github. Here, we describe the tools developed, include several sample applications for common science questions, demonstrate interoperability with selected packages, and summarize ongoing developments.

Software

PY4 Four-CubeSat Swarm of PyCubed-Based Spacecraft

PY4 is a low-cost, rapid-turn-around, four-satellite technology demonstration based on the open-source PyCubed avionics framework. PyCubed is an open-source, radiation-tested CubeSat avionics platform that integrates power, computing, communication, and attitude determination and control functionality into a single low-cost module programmable entirely in the programming language Python.

Jan Michael Stupl

The SunPy Project: An Interoperable Ecosystem for Solar Data Analysis

The SunPy Project is a community of scientists and software developers creating an ecosystem of Python packages for solar physics. The project includes the sunpy core package as well as a set of affiliated packages. The sunpy core package provides general purpose tools to access data from different providers, read image and time series data, and transform between commonly used coordinate systems. Affiliated packages perform more specialized tasks that do not fall within the more general scope of the sunpy core package. In this article, we give a high-level overview of the SunPy Project, how it is broader than the sunpy core package, and how the project curates and fosters the affiliated package system. We demonstrate how components of the SunPy ecosystem, including sunpy and several affiliated packages, work together to enable multi-instrument data analysis workflows. We also describe members of the SunPy Project and how the project interacts with the wider solar physics and scientific Python communities. Finally, we discuss the future direction and priorities of the SunPy Project.

Solar physics

The Profile Envision and Splicing Tool (PRESTO): Developing an Atmospheric Wind Analysis Tool for Space Launch Vehicles Using Python

Launch vehicle programs require vertically complete atmospheric profiles. Many systems at the ER to make the necessary measurements, but all have different EVR, vertical coverage, and temporal coverage. MSFC Natural Environments Branch developed a tool to create a vertically complete profile from multiple inputs using Python. Forward work: Finish Formal Testing Acceptance Testing, End-to-End Testing. Formal Release

Orcutt, John M.

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

PYSAT: Python Satellite Data Analysis Toolkit

A common problem in space science data analysis is combining complementary data sources that are provided and analyzed in different formats and programming languages. The Python Satellite Data Analysis Toolkit (pysat) addresses this issue by providing an open source toolkit that implements the general process of space science data analysis, from beginning to end, in an instrumentindependent manner. This toolkit uses an Instrument object that enables systematic analysis of science data from a variety of platforms within a single interface. Basic functions such as downloading, loading, and cleaning are included for all supported instruments. Common analysis routines are also included, which are instrument and data source independent. A nanokernel is used to provide instrument independence, it is attached to the Instrument object and mediates the systematic and arbitrary modification of loaded data. Pysat uses the nanokernel to improve the rigor of time series analysis, support onthefly orbit determination, and cleanly span file breaks. Pysat's functions and higherlevel scientific analysis features are validated through the use of unit testing. Further adoption by the community provides a set of scientific results produced by a common core, constituting a distributed heritage that supports the validity of the underlying processing and scientific output. These features are used to demonstrate consistency between derived electron density profiles and measured ion drifts, particularly downward ion drifts in the afternoon hours during extreme solar minimum. Pysat builds upon open source Python software that is freely available and encourages communitydriven development.

Stoneback, R.A.

Estimating Thruster Impulses From IMU and Doppler Data

A computer program implements a thrust impulse measurement (TIM) filter, which processes data on changes in velocity and attitude of a spacecraft to estimate the small impulsive forces and torques exerted by the thrusters of the spacecraft reaction control system (RCS). The velocity-change data are obtained from line-of-sight-velocity data from Doppler measurements made from the Earth. The attitude-change data are the telemetered from an inertial measurement unit (IMU) aboard the spacecraft. The TIM filter estimates the threeaxis thrust vector for each RCS thruster, thereby enabling reduction of cumulative navigation error attributable to inaccurate prediction of thrust vectors. The filter has been augmented with a simple mathematical model to compensate for large temperature fluctuations in the spacecraft thruster catalyst bed in order to estimate thrust more accurately at deadbanding cold-firing levels. Also, rigorous consider-covariance estimation is applied in the TIM to account for the expected uncertainty in the moment of inertia and the location of the center of gravity of the spacecraft. The TIM filter was built with, and depends upon, a sigma-point consider-filter algorithm implemented in a Python-language computer program.

Lisano, Michael E.

Benefits of using Electronic Data Sheets (EDS) with coreFlight Systems (cFS) - A Project Example

Recently there has been interest in the incorporation of core Flight Systems (cFS) with Spacecraft Onboard Interface Services (SOIS) Electronic Data Sheets (EDS) in the spaceflight software community. The Regenerative Fuel Cell project at the Glenn Research Center is using cFS architecture with EDS support for its monitoring and control software. The presentation will outline the benefits to using cFS with EDS support: First, EDS establishes a single source of truth for the definitions of data structures used throughout an entire mission that may otherwise be programmed in different languages and designed with different processor architectures. Not only does this help with inter-application communication via the software bus, but it also greatly simplifies communication between systems. An EDS Application Programming Interface (API) library allows the conversion of EDS data structures to and from native data structures. Second, bindings for other programming languages (e.g. Lua, Python, JSON) have been written to allow the creation and manipulation of EDS data objects within those languages. The RFC project uses Lua scripts to automatically generate binary configuration files at build time to be loaded into our cFS programs. We also use Python bindings in a graphical user interface (GUI) to allow an operator to send commands and view telemetry messages sent from cFS instances. Finally, using Lua scripts we can set up specific simulation scenarios to perform automatic functional testing. During the development of the RFC software, the software team put together a generic python GUI called “cFS-EDS-GroundStation” that provides a basic interface to an instance of cFS with EDS support. The GUI includes a basic telecommand and telemetry system that reads directly from the generated EDS databases. In the telecommand system, dropdown menus are populated with all user commands that are defined in EDS. In the telemetry system, telemetry messages are automatically decoded, written to the screen, and saved to a binary file. Additional Python scripts have been written to convert the binary data files into a comma separated value (CSV) format for further processing. We will demonstrate the basic use of the cFS-EDS-GroundStation software including adding additional commands and telemetry payload values in EDS and see them appear automatically in the cFS-EDS-Groundstation software. About the RFC project: The Regenerative Fuel Cell project is tasked with developing and demonstrating a power system consisting of a fuel cell and electrolyzer to provide power during a lunar day/night cycle. During the night, the fuel cell takes Hydrogen and Oxygen gasses and converts them into electricity, water, and heat. During the day, the electrolyzer takes input power (e.g. from a photovoltaic array) and converts water back into Hydrogen and Oxygen gasses.

Mathew Mccaskey

Dtest Testing Software

This software runs a suite of arbitrary software tests spanning various software languages and types of tests (unit level, system level, or file comparison tests). The dtest utility can be set to automate periodic testing of large suites of software, as well as running individual tests. It supports distributing multiple tests over multiple CPU cores, if available. The dtest tool is a utility program (written in Python) that scans through a directory (and its subdirectories) and finds all directories that match a certain pattern and then executes any tests in that directory as described in simple configuration files.

Jain, Abhinandan

Computational Approaches to Simulation and Optimization of Global Aircraft Trajectories

This study examines three possible approaches to improving the speed in generating wind-optimal routes for air traffic at the national or global level. They are: (a) using the resources of a supercomputer, (b) running the computations on multiple commercially available computers and (c) implementing those same algorithms into NASAs Future ATM Concepts Evaluation Tool (FACET) and compares those to a standard implementation run on a single CPU. Wind-optimal aircraft trajectories are computed using global air traffic schedules. The run time and wait time on the supercomputer for trajectory optimization using various numbers of CPUs ranging from 80 to 10,240 units are compared with the total computational time for running the same computation on a single desktop computer and on multiple commercially available computers for potential computational enhancement through parallel processing on the computer clusters. This study also re-implements the trajectory optimization algorithm for further reduction of computational time through algorithm modifications and integrates that with FACET to facilitate the use of the new features which calculate time-optimal routes between worldwide airport pairs in a wind field for use with existing FACET applications. The implementations of trajectory optimization algorithms use MATLAB, Python, and Java programming languages. The performance evaluations are done by comparing their computational efficiencies and based on the potential application of optimized trajectories. The paper shows that in the absence of special privileges on a supercomputer, a cluster of commercially available computers provides a feasible approach for national and global air traffic system studies.

global air traffic optimization

Computational Approaches to Simulation and Optimization of Global Aircraft Trajectories

This study examines three possible approaches to improving the speed in generating wind-optimal routes for air traffic at the national or global level. They are: (a) using the resources of a supercomputer, (b) running the computations on multiple commercially available computers and (c) implementing those same algorithms into NASA’s Future ATM Concepts Evaluation Tool (FACET) and compares those to a standard implementation run on a single CPU. Wind-optimal aircraft trajectories are computed using global air traffic schedules. The run time and wait time on the supercomputer for trajectory optimization using various numbers of CPUs ranging from 80 to 10,240 units are compared with the total computational time for running the same computation on a single desktop computer and on multiple commercially available computers for potential computational enhancement through parallel processing on the computer clusters. This study also re-implements the trajectory optimization algorithm for further reduction of computational time through algorithm modifications and integrates that with FACET to facilitate the use of the new features which calculate time-optimal routes between worldwide airport pairs in a wind field for use with existing FACET applications. The implementations of trajectory optimization algorithms use MATLAB, Python, and Java programming languages. The performance evaluations are done by comparing their computational efficiencies and based on the potential application of optimized trajectories. The paper shows that in the absence of special privileges on a supercomputer, a cluster of commercially available computers provides a good option for computing wind-optimal trajectories for national and global air traffic system studies.

Ng, Hok K.

Radiometer Calibrations: Saving Time by Automating the Gathering and Analysis Procedures

Mr. Abtahi custom-designs radiometers for Mr. Hook's research group. Inherently, when the radiometers report the temperature of arbitrary surfaces, the results are affected by errors in accuracy. This problem can be reduced if the errors can be accounted for in a polynomial. This is achieved by pointing the radiometer at a constant-temperature surface. We have been using a Hartford Scientific WaterBath. The measurements from the radiometer are collected at many different temperatures and compared to the measurements made by a Hartford Chubb thermometer with a four-decimal point resolution. The data is analyzed and fit to a fifth-order polynomial. This formula is then uploaded into the radiometer software, enabling accurate data gathering. Traditionally, Mr. Abtahi has done this by hand, spending several hours of his time setting the temperature, waiting for stabilization, taking measurements, and then repeating for other temperatures. My program, written in the Python language, has enabled the data gathering and analysis process to be handed off to a less-senior member of the team. Simply by entering several initial settings, the program will simultaneously control all three instruments and organize the data suitable for computer analyses, thus giving the desired fifth-order polynomial. This will save time, allow for a more complete calibration data set, and allow for base calibrations to be developed. The program is expandable to simultaneously take any type of measurement from up to nine distinct instruments.

Sadino, Jeffrey L.