Search NASASearch

SEARCH · Search NASA

Results for “Software Library”

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 235 records · Page 13

The M68HC11 gripper controller software

This thesis discusses the development of firmware for the 68HC11 gripper controller. A general description of the software and hardware interfaces is given. The C library interface for the gripper is then described and followed by a detailed discussion of the software architecture of the firmware. A procedure to assemble and download 68HC11 programs is presented in the form of a tutorial. The tools used to implement this environment are then described. Finally, the implementation of the configuration management scheme used to manage all CIRSSE software is presented.

Tsai, Jodi Wei-Duk

The Implementation of Satellite Control System Software Using Object Oriented Design

NASA established the Small Explorer (SMEX) program in 1988 to provide frequent opportunities for highly focused and relatively inexpensive space science missions that can be launched into low earth orbit by small expendable vehicles. The development schedule for each SMEX spacecraft was three years from start to launch. The SMEX program has produced five satellites; Solar Anomalous and Magnetospheric Particle Explorer (SAMPEX), Fast Auroral Snapshot Explorer (FAST), Submillimeter Wave Astronomy Satellite (SWAS), Transition Region and Coronal Explorer (TRACE) and Wide-Field Infrared Explorer (WIRE). SAMPEX and FAST are on-orbit, TRACE is scheduled to be launched in April of 1998, WIRE is scheduled to be launched in September of 1998, and SWAS is scheduled to be launched in January of 1999. In each of these missions, the Attitude Control System (ACS) software was written using a modular procedural design. Current program goals require complete spacecraft development within 18 months. This requirement has increased pressure to write reusable flight software. Object-Oriented Design (OOD) offers the constructs for developing an application that only needs modification for mission unique requirements. This paper describes the OOD that was used to develop the SMEX-Lite ACS software. The SMEX-Lite ACS is three-axis controlled, momentum stabilized, and is capable of performing sub-arc-minute pointing. The paper first describes the high level requirements which governed the architecture of the SMEX-Lite ACS software. Next, the context in which the software resides is explained. The paper describes the benefits of encapsulation, inheritance and polymorphism with respect to the implementation of an ACS software system. This paper will discuss the design of several software components that comprise the ACS software. Specifically, Object-Oriented designs are presented for sensor data processing, attitude control, attitude determination and failure detection. The paper addresses the benefits of the OOD versus a conventional procedural design. The final discussion in this paper will address the establishment of the ACS Foundation Class (AFC) Library. The AFC is a large software repository, requiring a minimal amount of code modifications to produce ACS software for future projects, saving production time and costs.

Anderson, Mark O.

Multi-Mission Power Analysis Tool (MMPAT) Version 3

The Multi-Mission Power Analysis Tool (MMPAT) simulates a spacecraft power subsystem including the power source (solar array and/or radioisotope thermoelectric generator), bus-voltage control, secondary battery (lithium-ion or nickel-hydrogen), thermostatic heaters, and power-consuming equipment. It handles multiple mission types including heliocentric orbiters, planetary orbiters, and surface operations. Being parametrically driven along with its user-programmable features can reduce or even eliminate any need for software modifications when configuring it for a particular spacecraft. It provides multiple levels of fidelity, thereby fulfilling the vast majority of a project s power simulation needs throughout the lifecycle. It can operate in a stand-alone mode with a graphical user interface, in batch mode, or as a library linked with other tools. This software can simulate all major aspects of a spacecraft power subsystem. It is parametrically driven to reduce or eliminate the need for a programmer. Added flexibility is provided through user-designed state models and table-driven parameters. MMPAT is designed to be used by a variety of users, such as power subsystem engineers for sizing power subsystem components; mission planners for adjusting mission scenarios using power profiles generated by the model; system engineers for performing system- level trade studies using the results of the model during the early design phases of a spacecraft; and operations personnel for high-fidelity modeling of the essential power aspect of the planning picture.

Wood, Eric G.

Repository-Based Software Engineering Program: Working Program Management Plan

Repository-Based Software Engineering Program (RBSE) is a National Aeronautics and Space Administration (NASA) sponsored program dedicated to introducing and supporting common, effective approaches to software engineering practices. The process of conceiving, designing, building, and maintaining software systems by using existing software assets that are stored in a specialized operational reuse library or repository, accessible to system designers, is the foundation of the program. In addition to operating a software repository, RBSE promotes (1) software engineering technology transfer, (2) academic and instructional support of reuse programs, (3) the use of common software engineering standards and practices, (4) software reuse technology research, and (5) interoperability between reuse libraries. This Program Management Plan (PMP) is intended to communicate program goals and objectives, describe major work areas, and define a management report and control process. This process will assist the Program Manager, University of Houston at Clear Lake (UHCL) in tracking work progress and describing major program activities to NASA management. The goal of this PMP is to make managing the RBSE program a relatively easy process that improves the work of all team members. The PMP describes work areas addressed and work efforts being accomplished by the program; however, it is not intended as a complete description of the program. Its focus is on providing management tools and management processes for monitoring, evaluating, and administering the program; and it includes schedules for charting milestones and deliveries of program products. The PMP was developed by soliciting and obtaining guidance from appropriate program participants, analyzing program management guidance, and reviewing related program management documents.

Source record

The NASA Auralization Framework and Plugin Architecture

NASA has a long history of investigating human response to aircraft flyover noise and in recent years has developed a capability to fully auralize the noise of aircraft during their design. This capability is particularly useful for unconventional designs with noise signatures significantly different from the current fleet. To that end, a flexible software architecture has been developed to facilitate rapid integration of new simulation techniques for noise source synthesis and propagation, and to foster collaboration amongst researchers through a common releasable code base. The NASA Auralization Framework (NAF) is a skeletal framework written in C++ with basic functionalities and a plugin architecture that allows users to mix and match NAF capabilities with their own methods through the development and use of dynamically linked libraries. This paper presents the NAF software architecture and discusses several advanced auralization techniques that have been implemented as plugins to the framework.

Aumann, Aric R.

Freddie Software Security Patching

Software applications become more complicated over time as they depend on many third-party, open-source libraries. The Freddie Platform Services team actively improves software security by addressing software bugs and vulnerabilities that negatively impact software applications, especially those providing real-time operations and services for the federal partners and industries. In order to detect bugs and patch vulnerabilities in software development and maintenance cycles, an automated and systematic approach is needed. This document describes what bugs and vulnerabilities are, and how they can be detected by using static code analyzers and software composition analysis tools. Once vulnerabilities are detected, the patching approaches, such as upgrading direct and transitive dependencies and loading custom classes first, are presented together with their strengths and weaknesses. In addition, patching walkthrough, example code, lessons learned throughout the vulnerability patching process and the recommended practices are discussed.

Chok Fung Lai

Software Helps Retrieve Information Relevant to the User

The Adaptive Indexing and Retrieval Agent (ARNIE) is a code library, designed to be used by an application program, that assists human users in retrieving desired information in a hypertext setting. Using ARNIE, the program implements a computational model for interactively learning what information each human user considers relevant in context. The model, called a "relevance network," incrementally adapts retrieved information to users individual profiles on the basis of feedback from the users regarding specific queries. The model also generalizes such knowledge for subsequent derivation of relevant references for similar queries and profiles, thereby, assisting users in filtering information by relevance. ARNIE thus enables users to categorize and share information of interest in various contexts. ARNIE encodes the relevance and structure of information in a neural network dynamically configured with a genetic algorithm. ARNIE maintains an internal database, wherein it saves associations, and from which it returns associated items in response to a query. A C++ compiler for a platform on which ARNIE will be utilized is necessary for creating the ARNIE library but is not necessary for the execution of the software.

Mathe, Natalie

Software For Generating Graphs And Charts

Common Graphics Library (CGL) computer program designed to enable users to generate graphs and charts of quality sufficient for publication or optical projection. Quickly and easily generates linear, logarithmic, bar, pie, and composite charts. Features of linear charts include automatic scaling, increasing or decreasing numerical axes, and character axes. Features of pie charts include segment labels, exploded segments, and chart keys. One of general features, horizontal or vertical orientation of figures. Written in ANSI FORTRAN 77.

Hammond, Dana P.

General-Purpose Software For Computer Graphics

NASA Device Independent Graphics Library (NASADIG) is general-purpose computer-graphics package for computer-based engineering and management applications which gives opportunity to translate data into effective graphical displays for presentation. Features include two- and three-dimensional plotting, spline and polynomial interpolation, control of blanking of areas, multiple log and/or linear axes, control of legends and text, control of thicknesses of curves, and multiple text fonts. Included are subroutines for definition of areas and axes of plots; setup and display of text; blanking of areas; setup of style, interpolation, and plotting of lines; control of patterns and of shading of colors; control of legends, blocks of text, and characters; initialization of devices; and setting of mixed alphabets. Written in FORTRAN 77.

Rogers, Joseph E.

GstLAL: A software framework for gravitational wave discovery

The GstLAL library, derived from Gstreamer and the LIGO Algorithm Library, supports a stream-based approach to gravitational-wave data processing. Although GstLAL was primarily designed to search for gravitational-wave signatures of merging black holes and neutron stars, it has also contributed to other gravitational-wave searches, data calibration, and detector-characterization efforts. GstLAL has played an integral role in all of the LIGO-Virgo collaboration detections, and its low-latency configuration has enabled rapid electromagnetic follow-up for dozens of compact binary candidates.

Gravitational waves

Automated software development workstation

A workstation is being developed that provides a computational environment for all NASA engineers across application boundaries, which automates reuse of existing NASA software and designs, and efficiently and effectively allows new programs and/or designs to be developed, catalogued, and reused. The generic workstation is made domain specific by specialization of the user interface, capturing engineering design expertise for the domain, and by constructing/using a library of pertinent information. The incorporation of software reusability principles and expert system technology into this workstation provide the obvious benefits of increased productivity, improved software use and design reliability, and enhanced engineering quality by bringing engineering to higher levels of abstraction based on a well tested and classified library.

Prouty, Dale A.

Potential medical applications of TAE

In cooperation with scientists in the University of Washington Medical School, a microcomputer-based image processing system for quantitative microscopy, called DMD1 (Digital Microdensitometer 1) was constructed. In order to make DMD1 transportable to different hosts and image processors, we have been investigating the possibility of rewriting the lower level portions of DMD1 software using Transportable Applications Executive (TAE) libraries and subsystems. If successful, we hope to produce a newer version of DMD1, called DMD2, running on an IBM PC/AT under the SCO XENIX System 5 operating system, using any of seven target image processors available in our laboratory. Following this implementation, copies of the system will be transferred to other laboratories with biomedical imaging applications. By integrating those applications into DMD2, we hope to eventually expand our system into a low-cost general purpose biomedical imaging workstation. This workstation will be useful not only as a self-contained instrument for clinical or research applications, but also as part of a large scale Digital Imaging Network and Picture Archiving and Communication System, (DIN/PACS). Widespread application of these TAE-based image processing and analysis systems should facilitate software exchange and scientific cooperation not only within the medical community, but between the medical and remote sensing communities as well.

Fahy, J. Ben

Representation of Serendipitous Scientific Data

A computer program defines and implements an innovative kind of data structure than can be used for representing information derived from serendipitous discoveries made via collection of scientific data on long exploratory spacecraft missions. Data structures capable of collecting any kind of data can easily be implemented in advance, but the task of designing a fixed and efficient data structure suitable for processing raw data into useful information and taking advantage of serendipitous scientific discovery is becoming increasingly difficult as missions go deeper into space. The present software eases the task by enabling definition of arbitrarily complex data structures that can adapt at run time as raw data are transformed into other types of information. This software runs on a variety of computers, and can be distributed in either source code or binary code form. It must be run in conjunction with any one of a number of Lisp compilers that are available commercially or as shareware. It has no specific memory requirements and depends upon the other software with which it is used. This program is implemented as a library that is called by, and becomes folded into, the other software with which it is used.

James, Mark

The Keck keyword layer

Each Keck instrument presents a consistent software view to the user interface programmer. The view consists of a small library of functions, which are identical for all instruments, and a large set of keywords, that vary from instrument to instrument. All knowledge of the underlying task structure is hidden from the application programmer by the keyword layer. Image capture software uses the same function library to collect data for the image header. Because the image capture software and the instrument control software are built on top of the same keyword layer, a given observation can be 'replayed' by extracting keyword-value pairs from the image header and passing them back to the control system. The keyword layer features non-blocking as well as blocking I/O. A non-blocking keyword write operation (such as setting a filter position) specifies a callback to be invoked when the operation is complete. A non-blocking keyword read operation specifies a callback to be invoked whenever the keyword changes state. The keyword-callback style meshes well with the widget-callback style commonly used in X window programs. The first keyword library was built for the two Keck optical instruments. More recently, keyword libraries have been developed for the infrared instruments and for telescope control. Although the underlying mechanisms used for inter-process communication by each of these systems vary widely (Lick MUSIC, Sun RPC, and direct socket I/O, respectively), a basic user interface has been written that can be used with any of these systems. Since the keyword libraries are bound to user interface programs dynamically at run time, only a single set of user interface executables is needed. For example, the same program, 'xshow', can be used to display continuously the telescope's position, the time left in an instrument's exposure, or both values simultaneously. Less generic tools that operate on specific keywords, for example an X display that controls optical instrument exposures, have also been written using the keyword layer.

Conrad, A. R.

Initial Ada components evaluation

The SAIC has the responsibility for independent test and validation of the SSE. They have been using a mathematical functions library package implemented in Ada to test the SSE IV and V process. The library package consists of elementary mathematical functions and is both machine and accuracy independent. The SSE Ada components evaluation includes code complexity metrics based on Halstead's software science metrics and McCabe's measure of cyclomatic complexity. Halstead's metrics are based on the number of operators and operands on a logical unit of code and are compiled from the number of distinct operators, distinct operands, and total number of occurrences of operators and operands. These metrics give an indication of the physical size of a program in terms of operators and operands and are used diagnostically to point to potential problems. McCabe's Cyclomatic Complexity Metrics (CCM) are compiled from flow charts transformed to equivalent directed graphs. The CCM is a measure of the total number of linearly independent paths through the code's control structure. These metrics were computed for the Ada mathematical functions library using Software Automated Verification and Validation (SAVVAS), the SSE IV and V tool. A table with selected results was shown, indicating that most of these routines are of good quality. Thresholds for the Halstead measures indicate poor quality if the length metric exceeds 260 or difficulty is greater than 190. The McCabe CCM indicated a high quality of software products.

Moebes, Travis

Efficient Xml Interchange (exi) For Python (expy)

EXPy provides a native Python interface into the LF Energy EVerest V2G protocol stack. The protocol stack is implemented in C/C++ and compiled into shared object libraries. EXPy provides the Python Ctypes translation of the C/C++ libraries for use with pure Python software. This project eliminates the need for integrating Python with third-party communications applications and greatly reduces the code base and improves performance. The other major benefit is the ability for EXPy to support new EXI based protocols as additional V2G standards are produced (e.g. upgrade from ISO 15118-2 to ISO 15118-20).

Rohde, Kenneth [Idaho National Laboratory (INL), I

Multiscale and Machine Learning Modeling for Process-informed Microstructure Prediction in Additively Manufactured Materials Using MALAMUTE

Advanced Materials and Manufacturing Technologies (AMMT) program under the Department of Energy Office of Nuclear Energy, aims to develop and qualify additively-manufactured materials for nuclear applications. The key challenges to these efforts are the microstructural variabilities observed on the AM products and their impact on the properties and performance of the material in extreme environments. AMMT is using a combination of high-through-put experimental and modeling techniques to accelerate the qualification efforts. Conventionally, in-situ and ex-situ characterizations and testing are performed to correlate different aspects of the AM process to the final product and its performance. However, adopting a trial-and-error approach to experimentally evaluate the vast range of process parameters required to capture the microstructural variabilities is cost-prohibitive. Modeling and simulation provide a comparatively inexpensive way to understand and correlate the microstructural evolution to the processing conditions. The modeling and simulation work-packages within the AMMT program aims to use physics-based and machine learning modeling capabilities to develop a digital twin for AM that can correlate the process conditions to the final product and establish a process-structure-property-performance (PSPP) correlation for AM materials. The melting and subsequent solidification that occurs during the AM process is a complex phenomenon that requires multiscale multiphysics analysis. Idaho National Laboratory’s (INL) Multiphysics Object-Oriented Simulation Environment (MOOSE), specifically the MOOSE Application Library for Advanced Manufacturing UTilitiEs (MALAMUTE) software, provides an ideal platform for developing the multiphysics multiscale model to explore the intricacies of the microstructural evolution during the AM processes within a single framework. Furthermore, given that such full-fidelity simulations can be computationally intensive, reduced order models are necessary to explore the PSPP space for AM materials in an efficient, reliable, and cost-effective way. This work package focuses on understanding the role of process variabilities on the various microstructural characteristics of the AM materials. Microstructures unique to AM materials, such as compositional micro-heterogeneity and dislocation cells, are of particular interest here since they can influence the creep properties and radiation performance. In fiscal year (FY) 24, we significantly advanced upon our work in the last fiscal year, both on physics-based and ML models. The alloy solidification model available in MOOSE has been extended to incorporate the thermodynamic properties and free energy relevant to 316SS. The model demonstrates the Cr segregation that occurs during solidifcation. It is demonstrated that rate of solidification and solute segregation is primarily influence by the cooling rate dictating the level of freezing. This work captures the microstructural variabilities at the subgrain level that are often missing in the part-scale models. With an aim to connect the microstructural evolution model to realistic process conditions, a reduced order model is developed for predicting the thermal conditions around meltpool from high-fidelity process simulations. Furthermore, machine learning approach is used to accelerate the temperature prediction during the AM process. In the following years, MALAMUTE will be used to connect different aspects of the models and quantitatively predict the microstructural evolution. The developed ML-based surrogate model will consider the process conditions as the input to predict the microstructural features in a cost-effective way. The generated microstructures can be used by other work packages under AMMT to evaluate the properties and environmental response of the material at the mesoscale. Thus, this work help identify the key microstructural features at the subgrain level that are significant in property/performance prediction of the AM products. This work will provide inputs to the large-scale process variability models to reevaluate and validate assumptions/simplifications made in the part-scale models. Furthermore, through active learning this work will help identify the data need from both modeling and experimental sides for development of a robust digital twin for AM.

36 MATERIALS SCIENCE

Multiscale and Machine Learning Modeling for Process-informed Microstructure Prediction in Additively Manufactured Materials using MALAMUTE

The Advanced Materials and Manufacturing Technologies (AMMT) program under the Department of Energy Office of Nuclear Energy aims to develop and qualify additively manufactured materials for nuclear applications. One key challenge to this is the microstructural variability observed in the additively manufactured products and their impact on the properties and performance of the material in extreme environments. AMMT is using a combination of high-throughput experimental and modeling techniques to accelerate qualification. Conventionally, in-situ and ex-situ characterizations and testing are performed to correlate different aspects of the additive manufacturing process to the final product and its performance. However, adopting a trial-and-error approach to experimentally evaluate the vast range of process parameters required to capture microstructural variability is cost-prohibitive. Modeling and simulation provide a comparatively inexpensive way to understand and correlate the microstructural evolution to the processing conditions. The modeling and simulation work-packages within the AMMT program aims to use physics-based and machine learning models to develop a digital twin for additive manufacturing that can correlate the process conditions to the final product and establish a process-structure-property-performance (PSPP) correlation. The melting and subsequent solidification that occurs during the additive process is a complex phenomenon that requires multiscale multiphysics analysis. This work package focuses on understanding the role of process variabilities on the unique microstructural characteristics of additively manufactured materials. Microstructural features at the subgrain level, such as compositional micro-heterogeneity and dislocation cells, are of particular interest here since they can influence the creep properties and radiation performance. Idaho National Laboratory’s Multiphysics Object-Oriented Simulation Environment (MOOSE), specifically the MOOSE Application Library for Advanced Manufacturing UTilitiEs (MALAMUTE) software, provides an ideal platform for developing the multiphysics multiscale model to explore the intricacies of the microstructural evolution during the AM processes within a single framework. Furthermore, given that such full-fidelity simulations can be computationally intensive, reduced order models are necessary to explore the PSPP space for additively manufactured materials in an efficient, reliable, and cost-effective way. This work focuses on capturing the microstructural variabilities at the subgrain level that are often missing in the part-scale models. In fiscal year 2025, we significantly advanced upon our work in the last fiscal year, in terms of the predictive capabilities of the physics-based and ML models, by adding the capabilities to capture subgrain-level micro-segregation during solidification using phase-field model and to predict the time-dependent dynamics of the AM process through the MOGPAR model. The alloy solidification model in MOOSE incorporates the thermodynamic properties and free energy relevant to 316 stainless steel. The model demonstrates the Cr and Ni segregation that occurs during solidification, including that the rate of solidification. The microstructural evolution model is connected to the process conditions via the surrogate model developed in this work. This enables predictions of the final microstructure in conjunctions with the manufacturing process. This work supports AMMT's rapid qualification goals by laying the foundation for an efficient and cost-effective model establishing the PSPP correlation for AM. The generated microstructures and predicted micro-segregation can be used by other work packages under AMMT to evaluate the properties and environmental response of the material at the mesoscale. Thus, this work helps to identify the key microstructural features at the subgrain level that are significant in property and performance predictions of additively manufactured components. This work will also provide inputs to the large-scale process variability models to reevaluate and validate assumptions and simplifications made in the part-scale models. Furthermore, through active learning this work can help identify the data need from both modeling and experimental sides for development of a robust digital twin for additive manufacturing and accelerate the AMMT's qualification efforts.

36 - MATERIALS SCIENCE