Search NASASearch

SEARCH · Search NASA

Results for “software development framework”

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 127 records · Page 7

A Software Framework for Aircraft Simulation

The National Aeronautics and Space Administration Dryden Flight Research Center has a long history in developing simulations of experimental fixed-wing aircraft from gliders to suborbital vehicles on platforms ranging from desktop simulators to pilot-in-the-loop/aircraft-in-the-loop simulators. Regardless of the aircraft or simulator hardware, much of the software framework is common to all NASA Dryden simulators. Some of this software has withstood the test of time, but in recent years the push toward high-fidelity user-friendly simulations has resulted in some significant changes. This report presents an overview of the current NASA Dryden simulation software framework and capabilities with an emphasis on the new features that have permitted NASA to develop more capable simulations while maintaining the same staffing levels.

Curlett, Brian P.

Improving Flight Software Module Validation Efforts : a Modular, Extendable Testbed Software Framework

Ever since Explorer-1, the United States' first Earth satellite, was developed and launched in 1958, JPL has developed many more spacecraft, including landers and orbiters. While these spacecraft vary greatly in their missions, capabilities,and destination, they all have something in common. All of the components of these spacecraft had to be comprehensively tested. While thorough testing is important to mitigate risk, it is also a very expensive and time consuming process. Thankfully,since virtually all of the software testing procedures for SMAP are computer controlled, these procedures can be automated. Most people testing SMAP flight software (FSW) would only need to write tests that exercise specific requirements and then check the filtered results to verify everything occurred as planned. This gives developers the ability to automatically launch tests on the testbed, distill the resulting logs into only the important information, generate validation documentation, and then deliver the documentation to management. With many of the steps in FSW testing automated, developers can use their limited time more effectively and can validate SMAP FSW modules quicker and test them more rigorously. As a result of the various benefits of automating much of the testing process, management is considering this automated tools use in future FSW validation efforts.

flight software testing

An Approach to Automate tools for the Risk Assessment of Digital Instrumentation and Control Systems

Reliable digital instrumentation and control systems (DI&C) are integral for sustaining the continued operation of nuclear power plants. These systems ensure that nuclear reactors operate safely, efficiently, and within regulatory requirements. Yet, the cost of designing and licensing new nuclear DI&C can be prohibitively expensive. Under the U.S. Department of Energy Light Water Reactor Sustainability Program, Idaho National Laboratory has developed a framework for supporting the risk-informed design of DI&C systems by offering methods to support the identification, quantification, and evaluation of risks for various DI&C design architectures. The framework indicates potential software failure modes and provides pathways for quantifying the potential for these software failures, including common cause failures. Using the framework’s systematic approach, challenges for assessing risks within new and existing nuclear DI&C systems can be reduced. Nevertheless, the current framework can be further improved using the convenience of automation. This paper introduces the development of Software for the Hazard Identification and Evaluation of Digital Systems (SHIELDS). SHIELDS is an engineering software package that enables the identification, elimination, and mitigation of potential risks and reduces the burden of deploying reliable DI&C systems. This work introduces plans and techniques to digitize and improve the manual risk assessment modules of the framework. These improvements will save time and increase the repeatability and usability of the framework, making it more accessible to a wider range of users. Ultimately, this introduces SHIELDS and how its modules support efficient development of safe and reliable DI&C systems.

46 - INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AN

Recent Developments to the Porous Microstructure Analysis (PuMA) Software

The Porous Microstructure Analysis (PuMA) software is an open source framework for image-based simulation, primarily used to determine effective properties based on material microstructure. PuMA was originally developed for the study of NASA thermal protection materials; however, many of the solvers in PuMA have applicability to a broad range of materials science applications. PuMA version 3.2 computes material surface area, pore diameters, effective thermal conductivity, continuum and rarefied tortuosity, and permeability. For anisotropic materials, PuMA can estimate material orientation and compute anisotropic thermal conductivity and elasticity. In this talk, a brief overview of the PuMA software and underlying methods will be presented, as well as some recent and ongoing developments, including the use of immersed boundary methods for image-based simulation and the development of a new weave segmentation tool, called TomoSAM. Cut-Cell method for heat and mass transfer For simulations on complex microstructures, traditional unstructured meshing techniques often prove to be difficult and time-intensive. Voxel-based solvers, which represent the surface as a staircase structure, are relatively simple to implement but can lose accuracy when feature resolution is poor. In this work, we present a novel 3D cut-cell method for solving the variable coefficient Poisson equation on complex microstructures, suitable for the determination of effective thermal conductivity or tortuosity of a material. The method uses a Marching Cubes/Marching Squares surface reconstruction to create cut-cells and determine geometric quantities. A flux-correction method is extended to 3D, with least squares gradient reconstruction, to solve for the boundary fluxes in the cut-cells. Verification cases show the solver achieves globally 2nd order accuracy on complex microstructures. TomoSAM TomoSAM, a module of the PuMA software, has been developed as a plugin for 3D Slicer, a software platform used for 3D image processing and visualization. It utilizes the Segment Anything Model (SAM), a deep learning model capable of identifying objects and generating image masks based on minimal user input. This feature enables efficient segmentation of complex 3D datasets, particularly of woven materials, from tomography or similar imaging methods, reducing the need for manual segmentation.

Tomography

Virtual Engineering: Python framework for engineering process design

Virtual Engineering (VE) is a Python software framework designed to accelerate the research and development of engineering processes that are fundamentally defined by multiple unit operations executed in series. VE supports a wide variety of different multi-physics models and integrates them to simulate a complete end-to-end process. To automate the execution of this model sequence, VE provides (i) a robust method to communicate between models, (ii) a high-level, user-friendly interface to set model parameters and enable optimization, and (iii) an overall model-agnostic approach that allows new computational units to be swapped in and out of workflows. Although the VE framework was developed to support the biochemical conversion of biomass to fuel, we have designed each component to easily accommodate new domains and unit models.

09 BIOMASS FUELS

Experience with a software engineering environment framework

Experience with a software engineering environment framework tool called the Automated Product Control Environment (APCE) is described. The goals of the framework design, an overview of the major functions and features of the framework, and implementation and use of the framework are presented. Aspects of the framework discussed include automation and control; portability, distributability, and interoperability; cost/benefit analysis; and productivity. Results of using the framework are discussed and the framework approach is briefly compared to other software development environment approaches.

Blumberg, R.

Software life cycle methodologies and environments

Products of this project will significantly improve the quality and productivity of Space Station Freedom Program software processes by: improving software reliability and safety; and broadening the range of problems that can be solved with computational solutions. Projects brings in Computer Aided Software Engineering (CASE) technology for: Environments such as Engineering Script Language/Parts Composition System (ESL/PCS) application generator, Intelligent User Interface for cost avoidance in setting up operational computer runs, Framework programmable platform for defining process and software development work flow control, Process for bringing CASE technology into an organization's culture, and CLIPS/CLIPS Ada language for developing expert systems; and methodologies such as Method for developing fault tolerant, distributed systems and a method for developing systems for common sense reasoning and for solving expert systems problems when only approximate truths are known.

Fridge, Ernest

Loci-STREAM Version 0.9

Loci-STREAM is an evolving computational fluid dynamics (CFD) software tool for simulating possibly chemically reacting, possibly unsteady flows in diverse settings, including rocket engines, turbomachines, oil refineries, etc. Loci-STREAM implements a pressure- based flow-solving algorithm that utilizes unstructured grids. (The benefit of low memory usage by pressure-based algorithms is well recognized by experts in the field.) The algorithm is robust for flows at all speeds from zero to hypersonic. The flexibility of arbitrary polyhedral grids enables accurate, efficient simulation of flows in complex geometries, including those of plume-impingement problems. The present version - Loci-STREAM version 0.9 - includes an interface with the Portable, Extensible Toolkit for Scientific Computation (PETSc) library for access to enhanced linear-equation-solving programs therein that accelerate convergence toward a solution. The name "Loci" reflects the creation of this software within the Loci computational framework, which was developed at Mississippi State University for the primary purpose of simplifying the writing of complex multidisciplinary application programs to run in distributed-memory computing environments including clusters of personal computers. Loci has been designed to relieve application programmers of the details of programming for distributed-memory computers.

Wright, Jeffrey

Development of a software safety process and a case study of its use

The goal of this research is to continue the development of a comprehensive approach to software safety and to evaluate the approach with a case study. The case study is a major part of the project, and it involves the analysis of a specific safety-critical system from the medical equipment domain. The particular application being used was selected because of the availability of a suitable candidate system. We consider the results to be generally applicable and in no way particularly limited by the domain. The research is concentrating on issues raised by the specification and verification phases of the software lifecycle since they are central to our previously-developed rigorous definitions of software safety. The theoretical research is based on our framework of definitions for software safety. In the area of specification, the main topics being investigated are the development of techniques for building system fault trees that correctly incorporate software issues and the development of rigorous techniques for the preparation of software safety specifications. The research results are documented. Another area of theoretical investigation is the development of verification methods tailored to the characteristics of safety requirements. Verification of the correct implementation of the safety specification is central to the goal of establishing safe software. The empirical component of this research is focusing on a case study in order to provide detailed characterizations of the issues as they appear in practice, and to provide a testbed for the evaluation of various existing and new theoretical results, tools, and techniques. The Magnetic Stereotaxis System is summarized.

Knight, John C.

Recent Developments to the Porous Microstructure Analysis (PuMA) Software

Introduction The Porous Microstructure Analysis (PuMA) software is an open source framework for image-based simulation, primarily used to determine effective properties based on material microstructure. PuMA was originally developed for the study of NASA thermal protection materials; however, many of the solvers in PuMA have applicability to a broad range of materials science applications. PuMA version 3.2 computes material surface area, pore diameters, effective thermal conductivity, continuum and rarefied tortuosity, and permeability. For anisotropic materials, PuMA can estimate material orientation and compute anisotropic thermal conductivity and elasticity. In this talk, a brief overview of the PuMA software and underlying methods will be presented, as well as some recent and ongoing developments, including the use of immersed boundary methods for image-based simulation and the development of a new weave segmentation tool, called TomoSAM. Cut-Cell method for heat and mass transfer For simulations on complex microstructures, traditional unstructured meshing techniques often prove to be difficult and time-intensive. Voxel-based solvers, which represent the surface as a staircase structure, are relatively simple to implement but can lose accuracy when feature resolution is poor. In this work, we present a novel 3D cut-cell method for solving the variable coefficient Poisson equation on complex microstructures, suitable for the determination of effective thermal conductivity or tortuosity of a material. The method uses a Marching Cubes/Marching Squares surface reconstruction to create cut-cells and determine geometric quantities. A flux-correction method is extended to 3D, with least squares gradient reconstruction, to solve for the boundary fluxes in the cut-cells. Verification cases show the solver achieves globally 2nd order accuracy on complex microstructures. TomoSAM TomoSAM, a module of the PuMA software, has been developed as a plugin for 3D Slicer, a software platform used for 3D image processing and visualization. It utilizes the Segment Anything Model (SAM), a deep learning model capable of identifying objects and generating image masks based on minimal user input. This feature enables efficient segmentation of complex 3D datasets, particularly of woven materials, from tomography or similar imaging methods, reducing the need for manual segmentation.

Tomography

Porous Microstructure Analysis (PuMA) software

The Porous Microstructure Analysis (PuMA) software was developed to provide a robust and efficient framework for computing material properties based on their microstructures. The development was motivated by advancements in X-ray microtomography, an imaging technology that can resolve the structure of a material at a sub-micron scale, in 3D and even in 4D (over time). PuMA provides the capability of computing a comprehensive spectrum of properties, from the most fundamental geometric features of a microstructure, to advanced anisotropic thermo-elastic properties. In addition, the software can generate artificial microstructures, ranging from simple analytical shapes to complex fibrous woven and non- woven geometries, which can be used in performance optimization studies. This presentation will highlight many of the capabilities of the recent open-source release.

microtomography

The development and technology transfer of software engineering technology at NASA. Johnson Space Center

The United State's big space projects of the next decades, such as Space Station and the Human Exploration Initiative, will need the development of many millions of lines of mission critical software. NASA-Johnson (JSC) is identifying and developing some of the Computer Aided Software Engineering (CASE) technology that NASA will need to build these future software systems. The goal is to improve the quality and the productivity of large software development projects. New trends are outlined in CASE technology and how the Software Technology Branch (STB) at JSC is endeavoring to provide some of these CASE solutions for NASA is described. Key software technology components include knowledge-based systems, software reusability, user interface technology, reengineering environments, management systems for the software development process, software cost models, repository technology, and open, integrated CASE environment frameworks. The paper presents the status and long-term expectations for CASE products. The STB's Reengineering Application Project (REAP), Advanced Software Development Workstation (ASDW) project, and software development cost model (COSTMODL) project are then discussed. Some of the general difficulties of technology transfer are introduced, and a process developed by STB for CASE technology insertion is described.

Pitman, C. L.

Launch Control System Software Development System Automation Testing

The Spaceport Command and Control System (SCCS) is the National Aeronautics and Space Administration's (NASA) launch control system for the Orion capsule and Space Launch System, the next generation manned rocket currently in development. This system requires high quality testing that will measure and test the capabilities of the system. For the past two years, the Exploration and Operations Division at Kennedy Space Center (KSC) has assigned a group including interns and full-time engineers to develop automated tests to save the project time and money. The team worked on automating the testing process for the SCCS GUI that would use streamed simulated data from the testing servers to produce data, plots, statuses, etc. to the GUI. The software used to develop automated tests included an automated testing framework and an automation library. The automated testing framework has a tabular-style syntax, which means the functionality of a line of code must have the appropriate number of tabs for the line to function as intended. The header section contains either paths to custom resources or the names of libraries being used. The automation library contains functionality to automate anything that appears on a desired screen with the use of image recognition software to detect and control GUI components. The data section contains any data values strictly created for the current testing file. The body section holds the tests that are being run. The function section can include any number of functions that may be used by the current testing file or any other file that resources it. The resources and body section are required for all test files; the data and function sections can be left empty if the data values and functions being used are from a resourced library or another file. To help equip the automation team with better tools, the Project Lead of the Automated Testing Team, Jason Kapusta, assigned the task to install and train an optical character recognition (OCR) tool to Brandon Echols, a fellow intern, and I. The purpose of the OCR tool is to analyze an image and find the coordinates of any group of text. Some issues that arose while installing the OCR tool included the absence of certain libraries needed to train the tool and an outdated software version. We eventually resolved the issues and successfully installed the OCR tool. Training the tool required many images and different fonts and sizes, but in the end the tool learned to accurately decipher the text in the images and their coordinates. The OCR tool produced a file that contained significant metadata for each section of text, but only the text and coordinates of the text was required for our purpose. The team made a script to parse the information we wanted from the OCR file to a different file that would be used by automation functions within the automated framework. Since a majority of development and testing for the automated test cases for the GUI in question has been done using live simulated data on the workstations at the Launch Control Center (LCC), a large amount of progress has been made. As of this writing, about 60% of all of automated testing has been implemented. Additionally, the OCR tool will help make our automated tests more robust due to the tool's text recognition being highly scalable to different text fonts and text sizes. Soon we will have the whole test system automated, allowing for more full-time engineers working on development projects.

Automation

Cluster Dynamics Modeling Needs for the Advanced Materials and Manufacturing Technologies Program

This milestone report aims to identify and assess the cluster dynamics (CD) modeling requirements within the Department of Energy's Office of Nuclear Energy (DOE-NE) Advanced Materials and Manufacturing Technologies (AMMT) program and to communicate these needs to the DOE-NE Nuclear Energy Advanced Modeling and Simulation (NEAMS) program. The goal is to ensure NEAMS is well-informed about the CD modeling requirements to support AMMT's mission of accelerating the development, qualification, demonstration, and deployment of advanced structural materials and manufacturing for nuclear energy applications. CD modeling is an essential tool for predicting the degradation of structural materials under irradiation, which is a key component of AMMT's accelerated qualification process. The AMMT program focuses on both additively manufactured and wrought structural alloys, such as laser powder-bed fusion 316H austenitic stainless steel, alloy 709, Haynes 244, and alloy 617. These materials require a generalized CD modeling framework to facilitate rapid model development and computational simulation. A flexible, generalized CD software, similar to the Multiphysics Object-Oriented Simulation Environment (MOOSE) finite element framework, would enable modeling of various cluster types, including defect clusters, defect-solute clusters, and multicomponent clusters, incorporating thermodynamics and kinetics parameters. Radiation effects, microstructural feature evolution, and multi-dimensional modeling are critical considerations for the CD model. The usability of the CD code should allow for easy modification and coupling with MOOSE-based simulations. Additionally, the software should adhere to Nuclear Quality Assurance-1 standards, include a testing suite for verification and validation, and be version-controlled within a national laboratory-managed Git repository. Benchmark problems are needed to assess code predictions and performance.

11 - NUCLEAR FUEL CYCLE AND FUEL MATERIALS

Towards Test Driven Development for Computational Science with pFUnit

Developers working in Computational Science & Engineering (CSE)/High Performance Computing (HPC) must contend with constant change due to advances in computing technology and science. Test Driven Development (TDD) is a methodology that mitigates software development risks due to change at the cost of adding comprehensive and continuous testing to the development process. Testing frameworks tailored for CSE/HPC, like pFUnit, can lower the barriers to such testing, yet CSE software faces unique constraints foreign to the broader software engineering community. Effective testing of numerical software requires a comprehensive suite of oracles, i.e., use cases with known answers, as well as robust estimates for the unavoidable numerical errors associated with implementation with finite-precision arithmetic. At first glance these concerns often seem exceedingly challenging or even insurmountable for real-world scientific applications. However, we argue that this common perception is incorrect and driven by (1) a conflation between model validation and software verification and (2) the general tendency in the scientific community to develop relatively coarse-grained, large procedures that compound numerous algorithmic steps.We believe TDD can be applied routinely to numerical software if developers pursue fine-grained implementations that permit testing, neatly side-stepping concerns about needing nontrivial oracles as well as the accumulation of errors. We present an example of a successful, complex legacy CSE/HPC code whose development process shares some aspects with TDD, which we contrast with current and potential capabilities. A mix of our proposed methodology and framework support should enable everyday use of TDD by CSE-expert developers.

pFUnit

A Framework for Integrating Quantum Simulation and High Performance Computing

Scientific applications are starting to explore the viability of quantum computing. This exploration typically begins with quantum simulations that can run on existing classical platforms, albeit without the performance advantages of real quantum resources. In the context of high-performance computing (HPC), the incorporation of simulation software can often take advantage of the powerful resources to help scale-up the simulation size. The configuration, installation and operation of these quantum simulation packages on HPC resources can often be rather daunting and increases friction for experimentation by scientific application developers. We describe a framework to help streamline access to quantum simulation software running on HPC resources. This includes an interface for circuit-based quantum computing tasks, as well as the necessary resource management infrastructure to make effective use of the underlying HPC resources. The primary contributions of this work include a classification of different usage models for quantum simulation in an HPC context, a review of the software architecture for our approach and a detailed description of the prototype implementation to experiment with these ideas using two different simulators (TNQVM & NWQ-Sim). We include initial experimental results running on the Frontier supercomputer at the Oak Ridge Leadership Computing Facility (OLCF) using a synthetic workload generated via the SupermarQ quantum benchmarking framework.

Shehata, Amir [ORNL] (ORCID:0000000224531426)

The K9 On-Board Rover Architecture

This paper describes the software architecture of NASA Ames Research Center s K9 rover. The goal of the onboard software architecture team was to develop a modular, flexible framework that would allow both high- and low-level control of the K9 hardware. Examples of low-level control are the simple drive or pan/tilt commands which are handled by the resource managers, and examples of high-level control are the command sequences which are handled by the conditional executive. In between these two control levels are complex behavioral commands which are handled by the pilot, such as drive to goal with obstacle avoidance or visually servo to a target. This paper presents the design of the architecture as of Fall 2000. We describe the state of the architecture implementation as well as its current evolution. An early version of the architecture was used for K9 operations during a dual-rover field experiment conducted by NASA Ames Research Center (ARC) and the Jet Propulsion Laboratory (JPL) from May 14 to May 16, 2000.

Bresina, John L.

Computation of Effective Mechanical Properties and Mechanical Erosion Modeling of TPS Materials

The goal of this presentation is to provide a general overview of the multi-scale modeling formulation to determine if there is additional surface recession in Thermal Protection Systems (TPS) materials as a result of mechanical erosion due to high shear conditions during atmospheric entry. This modeling process is performed at different scales by leveraging two computational frameworks developed at NASA: the Porous Microstructure Analysis (PuMA) software, and the Porous material Analysis Toolbox based on OpenFOAM (PATO). PuMA specializes in computing effective macro-scale material properties by performing material response simulations on 3D digital micro-scale representations of porous micro-structures. The modeling of TPS materials at the micro-scale is essential to understand how they behave as part of a heat shield assembly. The first part of the presentation will detail the implementation of PuMA’s cell-centered finite volume elasticity solver, which allows the computation of macro-scale effective mechanical properties of heterogeneous and anisotropic materials such as fibrous and woven TPS composites. These homogenized mechanical properties are used by PATO’s mechanical erosion model to predict the TPS material’s recession at a larger scale. This work will also provide some examples of multi-scale analysis from the fiber level up to the unit cell. The second part of the presentation will focus on the macro-scale approach to determine if erosion at the heat shield’s surface occurs due to mechanical and thermal loads experienced during atmospheric entry. To accomplish this, a solid mechanics module was integrated within PATO enabling it to model the potential mechanical erosion in three steps: first, after obtaining the effective mechanical properties with PuMA, the implemented stress analysis solver computes the stress and the displacement fields for the TPS material using the wall shear stress tensor, computed using a CFD solver, as boundary conditions; then, regions on the surface where the stress meets the failure criteria are identified; finally, the failed material is removed and the mesh is redistributed accordingly. The outcome is a model capable of predicting the total recession in the material due to surface chemistry and mechanical erosion.

Mechanical Properties