Search NASA⌕ Search

SEARCH · Search NASA

Results for “application programming interface”

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 307 records · Page 17

Evaluation of the Trajectory Operations Applications Software Task (TOAST)

The Trajectory Operations Applications Software Task (TOAST) is a software development project under the auspices of the Mission Operations Directorate. Its purpose is to provide trajectory operation pre-mission and real-time support for the Space Shuttle program. As an Application Manager, TOAST provides an isolation layer between the underlying Unix operating system and the series of user programs. It provides two main services: a common interface to operating system functions with semantics appropriate for C or FORTRAN, and a structured input and output package that can be utilized by user application programs. In order to evaluate TOAST as an Application Manager, the task was to assess current and planned capabilities, compare capabilities to functions available in commercially-available off the shelf (COTS) and Flight Analysis Design System (FADS) users for TOAST implementation. As a result of the investigation, it was found that the current version of TOAST is well implemented and meets the needs of the real-time users. The plans for migrating TOAST to the X Window System are essentially sound; the Executive will port with minor changes, while Menu Handler will require a total rewrite. A series of recommendations for future TOAST directions are included.

Perkins, Sharon↗

Maneuver Automation Software

The Maneuver Automation Software (MAS) automates the process of generating commands for maneuvers to keep the spacecraft of the Cassini-Huygens mission on a predetermined prime mission trajectory. Before MAS became available, a team of approximately 10 members had to work about two weeks to design, test, and implement each maneuver in a process that involved running many maneuver-related application programs and then serially handing off data products to other parts of the team. MAS enables a three-member team to design, test, and implement a maneuver in about one-half hour after Navigation has process-tracking data. MAS accepts more than 60 parameters and 22 files as input directly from users. MAS consists of Practical Extraction and Reporting Language (PERL) scripts that link, sequence, and execute the maneuver- related application programs: "Pushing a single button" on a graphical user interface causes MAS to run navigation programs that design a maneuver; programs that create sequences of commands to execute the maneuver on the spacecraft; and a program that generates predictions about maneuver performance and generates reports and other files that enable users to quickly review and verify the maneuver design. MAS can also generate presentation materials, initiate electronic command request forms, and archive all data products for future reference.

Uffelman, Hal↗

TCP/IP Interface for the Satellite Orbit Analysis Program (SOAP)

The Transmission Control Protocol/ Internet protocol (TCP/IP) interface for the Satellite Orbit Analysis Program (SOAP) provides the means for the software to establish real-time interfaces with other software. Such interfaces can operate between two programs, either on the same computer or on different computers joined by a network. The SOAP TCP/IP module employs a client/server interface where SOAP is the server and other applications can be clients. Real-time interfaces between software offer a number of advantages over embedding all of the common functionality within a single program. One advantage is that they allow each program to divide the computation labor between processors or computers running the separate applications. Secondly, each program can be allowed to provide its own expertise domain with other programs able to use this expertise.

Carnright, Robert↗

Interfacing Computer Aided Parallelization and Performance Analysis

When porting sequential applications to parallel computer architectures, the program developer will typically go through several cycles of source code optimization and performance analysis. We have started a project to develop an environment where the user can jointly navigate through program structure and performance data information in order to make efficient optimization decisions. In a prototype implementation we have interfaced the CAPO computer aided parallelization tool with the Paraver performance analysis tool. We describe both tools and their interface and give an example for how the interface helps within the program development cycle of a benchmark code.

Jost, Gabriele↗

Applications of artificial intelligence to mission planning

The scheduling problem facing NASA-Marshall mission planning is extremely difficult for several reasons. The most critical factor is the computational complexity involved in developing a schedule. The size of the search space is large along some dimensions and infinite along others. It is because of this and other difficulties that many of the conventional operation research techniques are not feasible or inadequate to solve the problems by themselves. Therefore, the purpose is to examine various artificial intelligence (AI) techniques to assist conventional techniques or to replace them. The specific tasks performed were as follows: (1) to identify mission planning applications for object oriented and rule based programming; (2) to investigate interfacing AI dedicated hardware (Lisp machines) to VAX hardware; (3) to demonstrate how Lisp may be called from within FORTRAN programs; (4) to investigate and report on programming techniques used in some commercial AI shells, such as Knowledge Engineering Environment (KEE); and (5) to study and report on algorithmic methods to reduce complexity as related to AI techniques.

Ford, Donnie R.↗

PCIPS 2.0: Powerful multiprofile image processing implemented on PCs

Over the years, the processing power of personal computers has steadily increased. Now, 386- and 486-based PC's are fast enough for many image processing applications, and inexpensive enough even for amateur astronomers. PCIPS is an image processing system based on these platforms that was designed to satisfy a broad range of data analysis needs, while requiring minimum hardware and providing maximum expandability. It will run (albeit at a slow pace) even on a 80286 with 640K memory, but will take full advantage of bigger memory and faster CPU's. Because the actual image processing is performed by external modules, the system can be easily upgraded by the user for all sorts of scientific data analysis. PCIPS supports large format lD and 2D images in any numeric type from 8-bit integer to 64-bit floating point. The images can be displayed, overlaid, printed and any part of the data examined via an intuitive graphical user interface that employs buttons, pop-up menus, and a mouse. PCIPS automatically converts images between different types and sizes to satisfy the requirements of various applications. PCIPS features an API that lets users develop custom applications in C or FORTRAN. While doing so, a programmer can concentrate on the actual data processing, because PCIPS assumes responsibility for accessing images and interacting with the user. This also ensures that all applications, even custom ones, have a consistent and user-friendly interface. The API is compatible with factory programming, a metaphor for constructing image processing procedures that will be implemented in future versions of the system. Several application packages were created under PCIPS. The basic package includes elementary arithmetics and statistics, geometric transformations and import/export in various formats (FITS, binary, ASCII, and GIF). The CCD processing package and the spectral analysis package were successfully used to reduce spectra from the Nordic Telescope at La Palma. A photometry package is also available, and other packages are being developed. A multitasking version of PCIPS that utilizes the factory programming concept is currently under development. This version will remain compatible (on the source code level) with existing application packages and custom applications.

Smirnov, O. M.↗

XPI: The Xanadu Parameter Interface

XPI is a table driven parameter interface which greatly simplifies both command driven programs such as BROWSE and XIMAGE as well as stand alone single-task programs. It moves all of the syntax and semantic parsing of commands and parameters out of the users code into common code and externally defined tables. This allows the programmer to concentrate on writing the code unique to the application rather than reinventing the user interface and for external graphical interfaces to interface with no changes to the command driven program. XPI also includes a compatibility library which allows programs written using the IRAF host interface (Mandel and Roll) to use XPI in place of the IRAF host interface.

White, N.↗

Design and Implementation of a Mechanical Control System for the Scanning Microwave Limb Sounder

The Scanning Microwave Limb Sounder (SMLS) will use technological improvements in low noise mixers to provide precise data on the Earth's atmospheric composition with high spatial resolution. This project focuses on the design and implementation of a real time control system needed for airborne engineering tests of the SMLS. The system must coordinate the actuation of optical components using four motors with encoder readback, while collecting synchronized telemetric data from a GPS receiver and 3-axis gyrometric system. A graphical user interface for testing the control system was also designed using Python. Although the system could have been implemented with a FPGA-based setup, we chose to use a low cost processor development kit manufactured by XMOS. The XMOS architecture allows parallel execution of multiple tasks on separate threads-making it ideal for this application and is easily programmed using XC (a subset of C). The necessary communication interfaces were implemented in software, including Ethernet, with significant cost and time reduction compared to an FPGA-based approach. For these reasons, the XMOS technology is an attractive, cost effective, alternative to FPGA-based technologies for this design and similar rapid prototyping projects.

Mars Science Laboratory Robotics↗

Social Tagging of Mission Data

Mars missions will generate a large amount of data in various forms, such as daily plans, images, and scientific information. Often, there is a semantic linkage between images that cannot be captured automatically. Software is needed that will provide a method for creating arbitrary tags for this mission data so that items with a similar tag can be related to each other. The tags should be visible and searchable for all users. A new routine was written to offer a new and more flexible search option over previous applications. This software allows users of the MSLICE program to apply any number of arbitrary tags to a piece of mission data through a MSLICE search interface. The application of tags creates relationships between data that did not previously exist. These tags can be easily removed and changed, and contain enough flexibility to be specifically configured for any mission. This gives users the ability to quickly recall or draw attention to particular pieces of mission data, for example: Give a semantic and meaningful description to mission data; for example, tag all images with a rock in them with the tag "rock." Rapidly recall specific and useful pieces of data; for example, tag a plan as"driving template." Call specific data to a user s attention; for example, tag a plan as "for:User." This software is part of the MSLICE release, which was written in Java. It will run on any current Windows, Macintosh, or Linux system.

Norris, Jeffrey S.↗

or-topas: Operations Research Toolkit for Pyomo Alternative Solutions

SAND2026-16702O OR-TOPAS: Operations Research Toolkit for Pyomo Alternative Solutions is a tool that enhances optimization applications defined by the Pyomo modeling library. It offers functions to generate optimal or near-optimal solutions, operating independently of Pyomo’s solver interface. Users can configure these functions with specific solver names and options, resulting in a custom solution object that returns a list of solutions. The OR-TOPAS library includes methods tailored to the properties of the model, such as binary integer programs versus linear programs, and specific solver interfaces like Gurobi. It does not provide models for specific applications, but it is applicable to a wide range of Pyomo optimization models. 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.

Siirola, John [Sandia National Lab. (SNL-CA), Live↗

Bolt Analysis Program

In designing and testing bolted joints there are multiple parameters to be considered and calculations that must be performed to predict the joint behavior. Each different set of parameters may call for a different set of equations. Determining every parameter in each bolted joint is impractical and in many cases impossible. On the other hand, it is much easier to reduce these calculations to a universal set that can be used for all bolted joints. This is the purpose of the Bolt Analysis Program. My project under the Mechanical and Rotating Systems branch of the Engineering Development and Analysis Division was to take the Bolt Analysis Program Version 2.0 and update the program to a modem and user-friendly format. Version 2.0 of the Bolt Analysis Program is a useful program, but lacks the dynamic capabilities that are needed for current applications. Version 2.0 of the Bolt Analysis Program was written in 1993 using the Pascal programming language in a DOS format. This program allows you to input data in a step-by-step format, calculates the data, and then on a final screen displays the input and the output fiom the calculations. Version 2.0 is still applicable for all bolted joint anaiysis, but has updates that are desired. First, the program runs in DOS format. With the applications available today, my mentor decided it would be best to update the program into Excel using Visual Basic for Applications (VBA). This would allow the program to have multiple Graphical User Interfaces (GUI s) while retaining all functions of the previous program. Version 2.0 only allows you to input data in a step-by-step process. If you make a mistake and need to go back, you must run through the entire program before you can return to fix your error. This becomes tedious when needing to change one parameter or test multiple sets of data. In Version 3.0, the program allows you to enter and change data at any time while displaying real-time output data. If you realize an error, it is as simple as scrolling back to your mistake and changing the data. Additional information is included in the original extended abstract.

Travis, Brandon E.↗

A convertor and user interface to import CAD files into worldtoolkit virtual reality systems

Virtual Reality (VR) is a rapidly developing human-to-computer interface technology. VR can be considered as a three-dimensional computer-generated Virtual World (VW) which can sense particular aspects of a user's behavior, allow the user to manipulate the objects interactively, and render the VW at real-time accordingly. The user is totally immersed in the virtual world and feel the sense of transforming into that VW. NASA/MSFC Computer Application Virtual Environments (CAVE) has been developing the space-related VR applications since 1990. The VR systems in CAVE lab are based on VPL RB2 system which consists of a VPL RB2 control tower, an LX eyephone, an Isotrak polhemus sensor, two Fastrak polhemus sensors, a folk of Bird sensor, and two VPL DG2 DataGloves. A dynamics animator called Body Electric from VPL is used as the control system to interface with all the input/output devices and to provide the network communications as well as VR programming environment. The RB2 Swivel 3D is used as the modelling program to construct the VW's. A severe limitation of the VPL VR system is the use of RB2 Swivel 3D, which restricts the files to a maximum of 1020 objects and doesn't have the advanced graphics texture mapping. The other limitation is that the VPL VR system is a turn-key system which does not provide the flexibility for user to add new sensors and C language interface. Recently, NASA/MSFC CAVE lab provides VR systems built on Sense8 WorldToolKit (WTK) which is a C library for creating VR development environments. WTK provides device drivers for most of the sensors and eyephones available on the VR market. WTK accepts several CAD file formats, such as Sense8 Neutral File Format, AutoCAD DXF and 3D Studio file format, Wave Front OBJ file format, VideoScape GEO file format, Intergraph EMS stereolithographics and CATIA Stereolithographics STL file formats. WTK functions are object-oriented in their naming convention, are grouped into classes, and provide easy C language interface. Using a CAD or modelling program to build a VW for WTK VR applications, we typically construct the stationary universe with all the geometric objects except the dynamic objects, and create each dynamic object in an individual file.

Wang, Peter Hor-Ching↗

Mission design applications of QUICK

An overview of an interactive software environment for space mission design termed QUICK is presented. This stand-alone program provides a programmable FORTRAN-like calculator interface to a wide range of both built-in and user defined functions. QUICK has evolved into a general-purpose software environment that can be intrinsically and dynamically customized for a wide range of mission design applications. Specific applications are described for some space programs, e.g., the earth-Venus-Mars mission, the Cassini mission to Saturn, the Mars Observer, the Galileo Project, and the Magellan Spacecraft.

Skinner, David L.↗

Flexibility and Performance of Parallel File Systems

As we gain experience with parallel file systems, it becomes increasingly clear that a single solution does not suit all applications. For example, it appears to be impossible to find a single appropriate interface, caching policy, file structure, or disk-management strategy. Furthermore, the proliferation of file-system interfaces and abstractions make applications difficult to port. We propose that the traditional functionality of parallel file systems be separated into two components: a fixed core that is standard on all platforms, encapsulating only primitive abstractions and interfaces, and a set of high-level libraries to provide a variety of abstractions and application-programmer interfaces (API's). We present our current and next-generation file systems as examples of this structure. Their features, such as a three-dimensional file structure, strided read and write interfaces, and I/O-node programs, are specifically designed with the flexibility and performance necessary to support a wide range of applications.

Kotz, David↗

Increasing productivity of the McAuto CAD/CAE system by user-specific applications programming

Significant improvements in the productivity of the McAuto Computer-Aided Design/Computer-Aided Engineering (CAD/CAE) system were achieved by applications programming using the system's own Graphics Interactive Programming language (GRIP) and the interface capabilities with the main computer on which the system resides. The GRIP programs for creating springs, bar charts, finite element model representations and aiding management planning are presented as examples.

Plotrowski, S. M.↗

Sixth Annual Users' Conference

Conference papers and presentation outlines which address the use of the Transportable Applications Executive (TAE) and its various applications programs are compiled. Emphasis is given to the design of the user interface and image processing workstation in general. Alternate ports of TAE and TAE subsystems are also covered.

Szczur, Martha↗

An electromagnetic noncontacting sensor for thickness measurement in a dispersive medium

This paper describes a general purpose imaging technology developed by the U.S. Bureau of Mines (USBM) that, when fully implemented, will solve the general problem of 'seeing into the earth.' A first-generation radar coal thickness sensor, the RCTS-1, has been developed and field-tested in both underground and highwall mines. The noncontacting electromagnetic technique uses spatial modulation created by moving a simple sensor antenna in a direction along each axis to be measured while the complex reflection coefficient is measured at multiple frequencies over a two-to-one bandwidth. The antenna motion imparts spatial modulation to the data that enables signal processing to solve the problems of media, target, and antenna dispersion. Knowledge of the dielectric constant of the media is not necessary because the electrical properties of the media are determined automatically along with the distance to the target and thickness of each layer of the target. The sensor was developed as a navigation guidance sensor to accurately detect the coal/noncoal interface required for the USBM computer-assisted mining machine program. Other mining applications include the location of rock fractures, water-filled voids, and abandoned gas wells. These hazards can be detected in advance of the mining operation. This initiating technology is being expanded into a full three-dimensional (3-D) imaging system that will have applications in both the underground and surface environment.

Chufo, Robert L.↗

Portability Support for High Performance Computing

While a large number of tools have been developed to support application portability, high performance application developers often prefer to use vendor-provided, non-portable programming interfaces. This phenomena indicates the mismatch between user priorities and tool capabilities. This paper summarizes the results of a user survey and a developer survey. The user survey has revealed the user priorities and resulted in three criteria for evaluating tool support for portability. The developer survey has resulted in the evaluation of portability support and indicated the possibilities and difficulties of improvements.

Cheng, Doreen Y.↗