Search NASA⌕ Search

SEARCH · Search NASA

Results for “programming tools”

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,171 records · Page 65

Developing CORBA-Based Distributed Scientific Applications from Legacy Fortran Programs

Recent progress in distributed object technology has enabled software applications to be developed and deployed easily such that objects or components can work together across the boundaries of the network, different operating systems, and different languages. A distributed object is not necessarily a complete application but rather a reusable, self-contained piece of software that co-operates with other objects in a plug-and-play fashion via a well-defined interface. The Common Object Request Broker Architecture (CORBA), a middleware standard defined by the Object Management Group (OMG), uses the Interface Definition Language (IDL) to specify such an interface for transparent communication between distributed objects. Since IDL can be mapped to any programming language, such as C++, Java, Smalltalk, etc., existing applications can be integrated into a new application and hence the tasks of code re-writing and software maintenance can be reduced. Many scientific applications in aerodynamics and solid mechanics are written in Fortran. Refitting these legacy Fortran codes with CORBA objects can increase the codes reusability. For example, scientists could link their scientific applications to vintage Fortran programs such as Partial Differential Equation(PDE) solvers in a plug-and-play fashion. Unfortunately, CORBA IDL to Fortran mapping has not been proposed and there seems to be no direct method of generating CORBA objects from Fortran without having to resort to manually writing C/C++ wrappers. In this paper, we present an efficient methodology to integrate Fortran legacy programs into a distributed object framework. Issues and strategies regarding the conversion and decomposition of Fortran codes into CORBA objects are discussed. The following diagram shows the conversion and decomposition mechanism we proposed. Our goal is to keep the Fortran codes unmodified. The conversion- aided tool takes the Fortran application program as input and helps programmers generate C/C++ header file and IDL file for wrapping the Fortran code. Programmers need to determine by themselves how to decompose the legacy application into several reusable components based on the cohesion and coupling factors among the functions and subroutines. However, programming effort still can be greatly reduced because function headings and types have been converted to C++ and IDL styles. Most Fortran applications use the COMMON block to facilitate the transfer of large amount of variables among several functions. The COMMON block plays the similar role of global variables used in C. In the CORBA-compliant programming environment, global variables can not be used to pass values between objects. One approach to dealing with this problem is to put the COMMON variables into the parameter list. We do not adopt this approach because it requires modification of the Fortran source code which violates our design consideration. Our approach is to extract the COMMON blocks and convert them into a structure-typed attribute in C++. Through attributes, each component can initialize the variables and return the computation result back to the client. We have tested successfully the proposed conversion methodology based on the f2c converter. Since f2c only translates Fortran to C, we still needed to edit the converted code to meet the C++ and IDL syntax. For example, C++/IDL requires a tag in the structure type, while C does not. In this paper, we identify the necessary changes to the f2c converter in order to directly generate the C++ header and the IDL file. Our future work is to add GUI interface to ease the decomposition task by simply dragging and dropping icons.

Sang, Janche↗

Rapid Diagnostics of Onboard Sequences

Keeping track of sequences onboard a spacecraft is challenging. When reviewing Event Verification Records (EVRs) of sequence executions on the Mars Exploration Rover (MER), operators often found themselves wondering which version of a named sequence the EVR corresponded to. The lack of this information drastically impacts the operators diagnostic capabilities as well as their situational awareness with respect to the commands the spacecraft has executed, since the EVRs do not provide argument values or explanatory comments. Having this information immediately available can be instrumental in diagnosing critical events and can significantly enhance the overall safety of the spacecraft. This software provides auditing capability that can eliminate that uncertainty while diagnosing critical conditions. Furthermore, the Restful interface provides a simple way for sequencing tools to automatically retrieve binary compiled sequence SCMFs (Space Command Message Files) on demand. It also enables developers to change the underlying database, while maintaining the same interface to the existing applications. The logging capabilities are also beneficial to operators when they are trying to recall how they solved a similar problem many days ago: this software enables automatic recovery of SCMF and RML (Robot Markup Language) sequence files directly from the command EVRs, eliminating the need for people to find and validate the corresponding sequences. To address the lack of auditing capability for sequences onboard a spacecraft during earlier missions, extensive logging support was added on the Mars Science Laboratory (MSL) sequencing server. This server is responsible for generating all MSL binary SCMFs from RML input sequences. The sequencing server logs every SCMF it generates into a MySQL database, as well as the high-level RML file and dictionary name inputs used to create the SCMF. The SCMF is then indexed by a hash value that is automatically included in all command EVRs by the onboard flight software. Second, both the binary SCMF result and the RML input file can be retrieved simply by specifying the hash to a Restful web interface. This interface enables command line tools as well as large sophisticated programs to download the SCMF and RMLs on-demand from the database, enabling a vast array of tools to be built on top of it. One such command line tool can retrieve and display RML files, or annotate a list of EVRs by interleaving them with the original sequence commands. This software has been integrated with the MSL sequencing pipeline where it will serve sequences useful in diagnostics, debugging, and situational awareness throughout the mission.

Starbird, Thomas W.↗

Electron Coherence and Interactions in Nanostructures (Final Report)

The goal of this program was to develop the tools of quantum many-body theory suitable for studying electronic properties of nanostructures, to apply them to recent or contemporaneous experiments, and to chart the directions of future development in the physics of low-dimensional quantum materials and devices. Over the duration of this Program, we introduced and developed the notion of Nonlinear Luttinger liquid, which is viewed by peers as one of a few major developments in the theory of one-dimensional quantum liquids since the notion of Tomonaga-Luttinger liquids was introduced by Tomonaga in 1950. Later, motivated by the raise of the ideas of topological quantum computing, we contributed to the theory of structure and dynamics of Majorana states in superconducting devices. In parallel, we worked to understand the sources of decoherence of experimentally-implemented superconducting qubits. Over time, we developed a comprehensive theory of the qubit relaxation by quasiparticles. This theory is widely used in the interpretation of experiments and in developing practical ways to mitigate the qubit decoherence.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

Software analysis handbook: Software complexity analysis and software reliability estimation and prediction

This handbook documents the three software analysis processes the Space Station Software Analysis team uses to assess space station software, including their backgrounds, theories, tools, and analysis procedures. Potential applications of these analysis results are also presented. The first section describes how software complexity analysis provides quantitative information on code, such as code structure and risk areas, throughout the software life cycle. Software complexity analysis allows an analyst to understand the software structure, identify critical software components, assess risk areas within a software system, identify testing deficiencies, and recommend program improvements. Performing this type of analysis during the early design phases of software development can positively affect the process, and may prevent later, much larger, difficulties. The second section describes how software reliability estimation and prediction analysis, or software reliability, provides a quantitative means to measure the probability of failure-free operation of a computer program, and describes the two tools used by JSC to determine failure rates and design tradeoffs between reliability, costs, performance, and schedule.

Computer systems design↗

An Evaluation of Operational Airspace Sectorization Integrated System (OASIS) Advisory Tool

In January 2013, a human-in-the-loop evaluation of the Operational Airspace Sectorization Integrated System (OASIS) was conducted in the Airspace Operations Laboratory of the Human Systems Integration Division (Code TH) in conjunction with the Aviation Systems Division (Code AF). The development of OASIS is a major activity of the Dynamic Airspace Configuration (DAC) research focus area within the Aeronautics Research Mission Directorate (ARMD) Airspace Systems Program. OASIS is an advisory tool to assist Federal Aviation Administration (FAA) En Route Area Supervisors in their planning of sector combinedecombine operations as well as opening closing of Data-side (D-side) control positions. These advisory solutions are tailored to the predicted traffic demand over the next few hours. During the experiment, eight retired FAA personnel served as participants for a part-task evaluation of OASIS functionality, covering the user interface as well as the underlying algorithm. Participants gave positive feedback on both the user interface and the algorithm solutions for airspace configuration, including an excellent average rating of 94 on the tool usability scales. They also suggested various enhancements to the OASIS tool, which will be incorporated into the next tool development cycle for the full-scale human-in-the-loop evaluation to be conducted later this year.

decision support tools↗

Final Report

The purpose of this project was to develop tools and techniques to improve the ability of computational scientists to investigate and correct problems (bugs) in their programs. Specifically, the University of Maryland component of this project focused on the problems associated with the finite number of bits available in a computer to represent numeric values. In large scale scientific computation, numbers are frequently added to and multiplied with each other billions of times. Thus even small errors due to the representation of numbers can accumulate into big errors. However, using too many bits to represent a number results in additional computation, memory, and energy costs. Thus it is critical to find the right size for numbers. This project focused on several aspects of this general problem. First, we developed a tool to look for cancelations, the catastrophic loss of precision in numbers due to the addition of two numbers whose actual values are close to each other, but whose representation in a computer is identical or nearly so. Second, we developed a suite of tools to allow programmers to identify exactly how much precision is required for each operation in their program. This tool allows programmers to both verify that enough precision is available, but more importantly find cases where extra precision could be eliminated to allow the program to use less memory, computer time, or energy. These tools use advanced binary modification techniques to allow the analysis of actual optimized code. The system, called Craft, has been applied to a number of benchmarks and real applications.

97 MATHEMATICS AND COMPUTING↗

Uncertainty Evaluation of Computational Model Used to Support the Integrated Powerhead Demonstration Project

NASA and the U.S. Air Force are working on a joint project to develop a new hydrogen-fueled, full-flow, staged combustion rocket engine. The initial testing and modeling work for the Integrated Powerhead Demonstrator (IPD) project is being performed by NASA Marshall and Stennis Space Centers. A key factor in the testing of this engine is the ability to predict and measure the transient fluid flow during engine start and shutdown phases of operation. A model built by NASA Marshall in the ROCket Engine Transient Simulation (ROCETS) program is used to predict transient engine fluid flows. The model is initially calibrated to data from previous tests on the Stennis E1 test stand. The model is then used to predict the next run. Data from this run can then be used to recalibrate the model providing a tool to guide the test program in incremental steps to reduce the risk to the prototype engine. In this paper, they define this type of model as a calibrated model. This paper proposes a method to estimate the uncertainty of a model calibrated to a set of experimental test data. The method is similar to that used in the calibration of experiment instrumentation. For the IPD example used in this paper, the model uncertainty is determined for both LOX and LH flow rates using previous data. The successful use of this model is then demonstrated to predict another similar test run within the uncertainty bounds. The paper summarizes the uncertainty methodology when a model is continually recalibrated with new test data. The methodology is general and can be applied to other calibrated models.

Steele, W. G.↗

Automated Verification of Specifications with Typestates and Access Permissions

We propose an approach to formally verify Plural specifications based on access permissions and typestates, by model-checking automatically generated abstract state-machines. Our exhaustive approach captures all the possible behaviors of abstract concurrent programs implementing the specification. We describe the formal methodology employed by our technique and provide an example as proof of concept for the state-machine construction rules. The implementation of a fully automated algorithm to generate and verify models, currently underway, provides model checking support for the Plural tool, which currently supports only program verification via data flow analysis (DFA).

Siminiceanu, Radu I.↗

KLOKKOS: Automated test generation for performance-portable programs

SAND2024-13830O The KLOKKOS project provides a suite of test generation and validation tools to increase maintainability and portability of Kokkos programs. KLOKKOS, a portmanteau of Klee and Kokkos, is developing an automated test generation for performance-portable programs using Clang/low-level virtual machine (LLVM) and formal methods. KLOKKOS is based on several topics in computer science: the development of symbolic and concolic analysis of LLVM and C++ codes, formal semantics and type theory, C++ templates and language features, LLVM compiler infrastructure, and data parallel primitives. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525

SciDAC↗

Software Management System

Transportable Applications Environment (TAE), a Goddard Space Flight Center developed software management system, organizes multiple computer programs by providing user interface development tools and a stable framework for a system. It binds applications into an easily operated whole and interfaces with users. The program also lowers system development and software conversion costs by providing software and structures for commonly recurring user requirements. Originally developed to support image processing and remote sensing applications, TAE is now used in scientific analysis and defense systems, and as a teaching tool by private industry and government. A support office assists users. New development areas are anticipated.

Source record↗

Designers' unified cost model

The Structures Technology Program Office (STPO) at NASA LaRC has initiated development of a conceptual and preliminary designers' cost prediction model. The model will provide a technically sound method for evaluating the relative cost of different composite structural designs, fabrication processes, and assembly methods that can be compared to equivalent metallic parts or assemblies. The feasibility of developing cost prediction software in a modular form for interfacing with state-of-the-art preliminary design tools and computer aided design programs is being evaluated. The goal of this task is to establish theoretical cost functions that relate geometric design features to summed material cost and labor content in terms of process mechanics and physics. The output of the designers' present analytical tools will be input for the designers' cost prediction model to provide the designer with a database and deterministic cost methodology that allows one to trade and synthesize designs with both cost and weight as objective functions for optimization. This paper presents the team members, approach, goals, plans, and progress to date for development of COSTADE (Cost Optimization Software for Transport Aircraft Design Evaluation).

Freeman, W.↗

RISMC Advanced Safety Analysis Project Plan – FY 2015 - FY 2019

In this report, a project plan is developed, focused on industry applications, using Risk-Informed Safety Margin Characterization (RISMC) tools and methods applied to realistic, relevant, and current interest issues to the operating nuclear fleet. RISMC focuses on modernization of nuclear power safety analysis (tools, methods and data); implementing state-of-the-art modeling techniques (which include, for example, enabling incorporation of more detailed physics as they become available); taking advantage of modern computing hardware; and combining probabilistic and mechanistic analyses to enable a risk informed safety analysis process. The modernized tools will maintain the current high level of safety in our nuclear power plant fleet, while providing an improved understanding of safety margins and the critical parameters that affect them. Thus, the set of tools will provide information to inform decisions on plant modifications, refurbishments, and surveillance programs, while improving economics. This set of tools will also benefit the design of new reactors, enhancing safety per unit cost of a nuclear plant. The proposed plan will focus on application of the RISMC toolkit, in particular, solving realistic problems of important current issues to the nuclear industry, in collaboration with plant owners and operators to demonstrate the usefulness of these tools in decision making.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Optical tools and techniques for aligning solar payloads with the SPARCS control system

The success of a rocket-borne experiment depends not only on the pointing of the attitude control system, but on the alignment of the attitude control system to the payload. To ensure proper alignment, special optical tools and alignment techniques are required. Those that were used in the SPARCS program are described and discussed herein. These tools include theodolites, autocollimators, a 38-cm diameter solar simulator, a high-performance 1-m heliostat to provide a stable solar source during the integration of the rocket payload, a portable 75-cm sun tracker for use at the launch site, and an innovation called the Solar Alignment Prism. Using the real sun as the primary reference under field conditions, the Solar Alignment Prism facilitates the coalignment of the attitude sun sensor with the payload. The alignment techniques were developed to ensure the precise alignment of the solar payloads to the SPARCS attitude sensors during payload integration and to verify the required alignment under field conditions just prior to launch.

Thomas, N. L.↗

Live from Space Station Learning Technologies Project

This is the Final Report for the Live From Space Station (LFSS) project under the Learning Technologies Project FY 2001 of the MSFC Education Programs Department. AZ Technology, Inc. (AZTek) has developed and implemented science education software tools to support tasks under the LTP program. Initial audience consisted of 26 TreK in the Classroom schools and thousands of museum visitors to the International Space Station: The Earth Tour exhibit sponsored by Discovery Place museum.

Source record↗

The cryogenics analysis program for Apollo mission planning and analysis

The cryogenics analysis program was developed as a simplified tool for use in premission planning operations for the Apollo command service module. Through a dynamic development effort, the program has been extended to include real time and postflight analysis capabilities with nominal and contingency planning features. The technical aspects of the program and a comparison of ground test and mission data with data generated by using the cryogenics analysis program are presented. The results of the program capability to predict flight requirements also are presented. Comparisons of data from the program with data from flight results, from a tank qualifications program, and from various system anomalies that have been encountered are discussed. Future plans and additional considerations for the program also are included. Among these plans are a three tank management scheme for hydrogen, venting profile generation for Skylab, and a capability for handling two gas atmospheres. The plan for two gas atmospheres will involve the addition of the capability to handle nitrogen as well as oxygen and hydrogen.

Scott, W.↗

DORCA 2 computer program. Volume 1: User's guide

The Dynamic Operational Requirements and Cost Analysis Program (DORCA 2) is described. The computer program provides a top level analysis tool for NASA and relies on a man machine interaction to optimize results based on external criteria. The computer program relies heavily on outside sources to provide cost information and vehicle parameters. Given data describing mission, vehicles, payloads, containers, space facilities, schedules, cost values, and costing procedures, the program computes flight schedules, cargo manifests, vehicle fleet requirements, acquisition schedules, and cost summaries. The program is designed to consider earth orbit, lunar, interplanetary, and automated satellite missions.

Wray, S. T., Jr.↗

Users' guide for the tabular display report generator program (TABDIS)

The tabular display report generator (TABDIS) program is described. The program functions as a document generation tool that provides tabular displays of data stored on a data file which has been generated by a user program. The main features of the program are outlined and all necessary inputs are detailed.

Braley, D. M.↗

Software For Genetic Algorithms

SPLICER computer program is genetic-algorithm software tool used to solve search and optimization problems. Provides underlying framework and structure for building genetic-algorithm application program. Written in Think C.

Wang, Lui↗