Search NASA⌕ Search

SEARCH · Search NASA

Results for “adaptive program execution”

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 19 records

Prevention and treatment of space sickness in Shuttle-Orbiter missions

A status report is presented on assessments of antimotion sickness drugs in slow-rotation rooms and, particularly, with two candidate medications - fixed-dose combinations of promethazine plus ephedrine and a transdermal therapeutic system-scopalamine - that are efficacious over long periods with acceptable side effects. Attention is given to evaluating the use of free fall in parabolic flight as a model for orbital flight to assess the efficacy of antimotion sickness drugs. Experience in slow-rotation rooms suggests that programming adaptation (executing head movements) is significantly superior to random head movements when performing required tasks.

Graybiel, A.↗

STAR adaptation of QR algorithm

The QR algorithm used on a serial computer and executed on the Control Data Corporation 6000 Computer was adapted to execute efficiently on the Control Data STAR-100 computer. How the scalar program was adapted for the STAR-100 and why these adaptations yielded an efficient STAR program is described. Program listings of the old scalar version and the vectorized SL/1 version are presented in the appendices. Execution times for the two versions applied to the same system of linear equations, are compared.

Shah, S. N.↗

A Low Cost Spacecraft Architecture for Robotic Lunar Exploration Projects

A program of frequent, capable, but affordable lunar robotic missions prior to return of humans to the moon can contribute to the Vision for Space Exploration (VSE) NASA is tasked to execute. The Lunar Reconnaissance Orbiter (LRO) and its secondary payload are scheduled to orbit the moon, and impact it, respectively, in 2008. It is expected that the sequence of missions occurring for approximately the decade after 2008 will place an increasing emphasis on soft landed payloads. These missions are requited to explore intrinsic characteristics of the moon, such as hydrogen distribution in the regolith, and levitated dust, to demonstrate the ability to access and process in-situ resources, and to demonstrate functions critical to supporting human presence, such as automated precision navigation and landing. Additional factors governing the design of spacecraft to accomplish this diverse set of objectives are: operating within a relatively modest funding profile, the need tb visit multiple sites (both polar and equatorial) repeatedly, and to use the current generation of launch vehicles. In the US, this implies use of the Evolved Expendable Launch Vehicles, or EELVs, although this design philosophy may be extended to launch vehicles of other nations, as well. Many of these factors are seemingly inconsistent with each other. For example, the cost of a spacecraft usually increases with mass; therefore the desire to fly frequent, modestly priced spacecraft seems to imply small spacecraft (< 1 Mt, injected mass). On the other hand, the smallest of the EELVs will inject approx. 3 Mt. on a Trans Lunar Injection (TLI) trajectory md would therefore be wasteful or launching a single, small spacecraft. Increasing the technical capability of a spacecraft (such as autonomous navigation and soft landing) also usually increases cost. A strategy for spacecraft design that meets these conflicting requirements is presented. Taken together, spacecraft structure and propulsion subsystems constitute the majority of spacecraft mass; saving development and integration cost on these elements is critical to controlling cost. Therefore, a low cost, modular design for spacecraft structure and propulsion subsystems is presented which may be easily scaled up or down for either insertion into lunar orbit or braking for landing on the lunar surface. In order to effectively use the approx.3 Mt mass-to-TLI of the EELV, two low cost spacecraft will be manifested on the same launch. One spacecraft will be located on top of the other for launch and the two will have to be released in sequence in order to achieve all mission objectives. The two spacecraft could both be landers, both orbiters, or one lander and one orbiter. In order to achieve mass efficiency, the body of the spacecraft will serve the dual purposes of carrying launch loads and providing attachment points for all the spacecraft subsystems. In order to avoid unaffordable technology development costs, small liquid propulsion components and autonomous, scene-matching navigation cameras may be adapted from military missile programs in order to execute precision soft landings.

Lemke, Lawrence G.↗

Aeroservoelasticity in HiSAIR

The High Speed Airframe Integration Research project is a multidisciplinary effort to bridge disciplinary boundaries in the analysis and design of aircraft. Aeroservoelasticity provides calculations of various critical speeds (such as flutter, divergence, and control reversal), of hump mode dampings, and of the effects of flexibility on vehicle stability and control derivatives. For design iterations, sensitivity derivatives of these characteristics with respect to structural design variables are also calculated. For executing this function, a set of computer programs was developed or adapted to perform routine calculations of basic aeroelastic characteristics. This set of programs, named the Aeroelastic Vehicle Analysis system, has also become a useful tool within the Aeroservoelasticity Branch of NASA's Langley Research Center.

Zeiler, Thomas A.↗

Users manual for flight control design programs

Computer programs for the design of analog and digital flight control systems are documented. The program DIGADAPT uses linear-quadratic-gaussian synthesis algorithms in the design of command response controllers and state estimators, and it applies covariance propagation analysis to the selection of sampling intervals for digital systems. Program SCHED executes correlation and regression analyses for the development of gain and trim schedules to be used in open-loop explicit-adaptive control laws. A linear-time-varying simulation of aircraft motions is provided by the program TVHIS, which includes guidance and control logic, as well as models for control actuator dynamics. The programs are coded in FORTRAN and are compiled and executed on both IBM and CDC computers.

Nalbandian, J. Y.↗

Software packager user's guide

Software integration is a growing area of concern for many programmers and software managers because the need to build new programs quickly from existing components is greater than ever. This includes building versions of software products for multiple hardware platforms and operating systems, building programs from components written in different languages, and building systems from components that must execute on different machines in a distributed network. The goal of software integration is to make building new programs from existing components more seamless -- programmers should pay minimal attention to the underlying configuration issues involved. Libraries of reusable components and classes are important tools but only partial solutions to software development problems. Even though software components may have compatible interfaces, there may be other reasons, such as differences between execution environments, why they cannot be integrated. Often, components must be adapted or reimplemented to fit into another application because of implementation differences -- they are implemented in different programming languages, dependent on different operating system resources, or must execute on different physical machines. The software packager is a tool that allows programmers to deal with interfaces between software components and ignore complex integration details. The packager takes modular descriptions of the structure of a software system written in the package specification language and produces an integration program in the form of a makefile. If complex integration tools are needed to integrate a set of components, such as remote procedure call stubs, their use is implied by the packager automatically and stub generation tools are invoked in the corresponding makefile. The programmer deals only with the components themselves and not the details of how to build the system on any given platform.

Callahan, John R.↗

Advancements in Remote Ground Control Station Operator Pilot in Command Training Program for Beyond Visual Line of Sight Flight Operations

The training program for a Remote Ground Control Station Operator Pilot in Command (R-GCSO PIC) at NASA Langley Research Center marks a pivotal evolution in preparing operators for Beyond Visual Line of Sight (BVLOS) operations. This program, developed within the Advanced Air Mobility (AAM) project High Density Vertiplex (HDV) subproject, was crafted to bridge the gap between traditional Ground Control Station Operators (GCSO) and R-GCSO PICs, focusing on uncrewed aircraft systems (UAS). It encompassed extensive theoretical and practical training, including hands-on experience with advanced simulators and live flight operations, while ensuring a deep understanding of BVLOS complexities. The training leveraged NASA technologies like the MPATH (Measuring Performance for Autonomy Teaming with Humans) ground control station software and incorporated human factors principles to enhance operational readiness. This paper details the program's development, execution, and the critical insights gained, emphasizing the necessity of continuous adaptation in training methodologies to meet the evolving demands of UAS operations in the National Airspace System.

Ground control station operator↗

Software Reduces Radio-Interference Effects in Radar Data

A computer program suppresses the effects of narrow-band radio-frequency interference (RFI) on the data collected by a wide-band radar system. The need for this program arises because some advanced wide-band synthetic-aperture radar systems utilize frequency bands that include frequencies used by other radio services. In this program, the RFI environment is represented by an auto-regressive process, the frequency band of which is narrow relative to that of the radar. Most of the RFI signals, both narrow- and wide-band, are estimated in one pass of a least-mean-square (LMS) adaptive filter. The program implements three popular LMS algorithms: the time-domain LMS, the frequency-domain LMS, and the filter-bank LMS adaptive-filter algorithms. The program can be run in a manual or automatic mode. In the manual mode, the user selects the filter parameters prior to execution. In the automatic mode, the program utilizes median-filter and spectral-estimation techniques plus the variable-step-size LMS algorithm for automatic determination of filter parameters, and the parameters are adaptively changed as functions of the inputs, resulting in better overall performance.

Le, Charles T-C↗

Web Program for Development of GUIs for Cluster Computers

WIGLAF (a Web Interface Generator and Legacy Application Facade) is a computer program that provides a Web-based, distributed, graphical-user-interface (GUI) framework that can be adapted to any of a broad range of application programs, written in any programming language, that are executed remotely on any cluster computer system. WIGLAF enables the rapid development of a GUI for controlling and monitoring a specific application program running on the cluster and for transferring data to and from the application program. The only prerequisite for the execution of WIGLAF is a Web-browser program on a user's personal computer connected with the cluster via the Internet. WIGLAF has a client/server architecture: The server component is executed on the cluster system, where it controls the application program and serves data to the client component. The client component is an applet that runs in the Web browser. WIGLAF utilizes the Extensible Markup Language to hold all data associated with the application software, Java to enable platform-independent execution on the cluster system and the display of a GUI generator through the browser, and the Java Remote Method Invocation software package to provide simple, effective client/server networking.

Czikmantory, Akos↗

Systems improved numerical differencing analyzer

Program solves physical problems governed by diffusion-type equations, provided that equations can be modeled by lumped-parameter representation. Program is used for thermal analysis, and could be adapted to solve Fourier, Poisson, and Laplace differential equations. Program is in FORTRAN IV and Assembler for execution on UNIVAC 1100-series or CYBER 175.

Source record↗

Reusable, Extensible High-Level Data-Distribution Concept

A framework for high-level specification of data distributions in data-parallel application programs has been conceived. [As used here, distributions signifies means to express locality (more specifically, locations of specified pieces of data) in a computing system composed of many processor and memory components connected by a network.] Inasmuch as distributions exert a great effect on the performances of application programs, it is important that a distribution strategy be flexible, so that distributions can be adapted to the requirements of those programs. At the same time, for the sake of productivity in programming and execution, it is desirable that users be shielded from such error-prone, tedious details as those of communication and synchronization. As desired, the present framework enables a user to refine a distribution type and adjust it to optimize the performance of an application program and conceals, from the user, the low-level details of communication and synchronization. The framework provides for a reusable, extensible, data-distribution design, denoted the design pattern, that is independent of a concrete implementation. The design pattern abstracts over coding patterns that have been found to be commonly encountered in both manually and automatically generated distributed parallel programs. The following description of the present framework is necessarily oversimplified to fit within the space available for this article. Distributions are among the elements of a conceptual data-distribution machinery, some of the other elements being denoted domains, index sets, and data collections (see figure). Associated with each domain is one index set and one distribution. A distribution class interface (where "class" is used in the object-oriented-programming sense) includes operations that enable specification of the mapping of an index to a unit of locality. Thus, "Map(Index)" specifies a unit, while "LocalLayout(Index)" specifies the local address within that unit. The distribution class can be extended to enable specification of commonly used distributions or novel user-defined distributions. A data collection can be defined over a domain. The term "data collection" in this context signifies, more specifically, an abstraction of mappings from index sets to variables. Since the index set is distributed, the addresses of the variables are also distributed.

James, Mark↗

An adaptive maneuvering logic computer program for the simulation of one-on-one air-to-air combat. Volume 1: General description

A technique for computer simulation of air combat is described. Volume 1 decribes the computer program and its development in general terms. Two versions of the program exist. Both incorporate a logic for selecting and executing air combat maneuvers with performance models of specific fighter aircraft. In the batch processing version the flight paths of two aircraft engaged in interactive aerial combat and controlled by the same logic are computed. The realtime version permits human pilots to fly air-to-air combat against the adaptive maneuvering logic (AML) in Langley Differential Maneuvering Simulator (DMS). Volume 2 consists of a detailed description of the computer programs.

Burgin, G. H.↗

Understanding software faults and their role in software reliability modeling

This study is a direct result of an on-going project to model the reliability of a large real-time control avionics system. In previous modeling efforts with this system, hardware reliability models were applied in modeling the reliability behavior of this system. In an attempt to enhance the performance of the adapted reliability models, certain software attributes were introduced in these models to control for differences between programs and also sequential executions of the same program. As the basic nature of the software attributes that affect software reliability become better understood in the modeling process, this information begins to have important implications on the software development process. A significant problem arises when raw attribute measures are to be used in statistical models as predictors, for example, of measures of software quality. This is because many of the metrics are highly correlated. Consider the two attributes: lines of code, LOC, and number of program statements, Stmts. In this case, it is quite obvious that a program with a high value of LOC probably will also have a relatively high value of Stmts. In the case of low level languages, such as assembly language programs, there might be a one-to-one relationship between the statement count and the lines of code. When there is a complete absence of linear relationship among the metrics, they are said to be orthogonal or uncorrelated. Usually the lack of orthogonality is not serious enough to affect a statistical analysis. However, for the purposes of some statistical analysis such as multiple regression, the software metrics are so strongly interrelated that the regression results may be ambiguous and possibly even misleading. Typically, it is difficult to estimate the unique effects of individual software metrics in the regression equation. The estimated values of the coefficients are very sensitive to slight changes in the data and to the addition or deletion of variables in the regression equation. Since most of the existing metrics have common elements and are linear combinations of these common elements, it seems reasonable to investigate the structure of the underlying common factors or components that make up the raw metrics. The technique we have chosen to use to explore this structure is a procedure called principal components analysis. Principal components analysis is a decomposition technique that may be used to detect and analyze collinearity in software metrics. When confronted with a large number of metrics measuring a single construct, it may be desirable to represent the set by some smaller number of variables that convey all, or most, of the information in the original set. Principal components are linear transformations of a set of random variables that summarize the information contained in the variables. The transformations are chosen so that the first component accounts for the maximal amount of variation of the measures of any possible linear transform; the second component accounts for the maximal amount of residual variation; and so on. The principal components are constructed so that they represent transformed scores on dimensions that are orthogonal. Through the use of principal components analysis, it is possible to have a set of highly related software attributes mapped into a small number of uncorrelated attribute domains. This definitively solves the problem of multi-collinearity in subsequent regression analysis. There are many software metrics in the literature, but principal component analysis reveals that there are few distinct sources of variation, i.e. dimensions, in this set of metrics. It would appear perfectly reasonable to characterize the measurable attributes of a program with a simple function of a small number of orthogonal metrics each of which represents a distinct software attribute domain.

Munson, John C.↗

Using an architectural approach to integrate heterogeneous, distributed software components

Many computer programs cannot be easily integrated because their components are distributed and heterogeneous, i.e., they are implemented in diverse programming languages, use different data representation formats, or their runtime environments are incompatible. In many cases, programs are integrated by modifying their components or interposing mechanisms that handle communication and conversion tasks. For example, remote procedure call (RPC) helps integrate heterogeneous, distributed programs. When configuring such programs, however, mechanisms like RPC must be used explicitly by software developers in order to integrate collections of diverse components. Each collection may require a unique integration solution. This paper describes improvements to the concepts of software packaging and some of our experiences in constructing complex software systems from a wide variety of components in different execution environments. Software packaging is a process that automatically determines how to integrate a diverse collection of computer programs based on the types of components involved and the capabilities of available translators and adapters in an environment. Software packaging provides a context that relates such mechanisms to software integration processes and reduces the cost of configuring applications whose components are distributed or implemented in different programming languages. Our software packaging tool subsumes traditional integration tools like UNIX make by providing a rule-based approach to software integration that is independent of execution environments.

Callahan, John R.↗

SPOT Program

A Spacecraft Position Optimal Tracking (SPOT) program was developed to process Global Positioning System (GPS) data, sent via telemetry from a spacecraft, to generate accurate navigation estimates of the vehicle position and velocity (state vector) using a Kalman filter. This program uses the GPS onboard receiver measurements to sequentially calculate the vehicle state vectors and provide this information to ground flight controllers. It is the first real-time ground-based shuttle navigation application using onboard sensors. The program is compact, portable, self-contained, and can run on a variety of UNIX or Linux computers. The program has a modular objec-toriented design that supports application-specific plugins such as data corruption remediation pre-processing and remote graphics display. The Kalman filter is extensible to additional sensor types or force models. The Kalman filter design is also strong against data dropouts because it uses physical models from state and covariance propagation in the absence of data. The design of this program separates the functionalities of SPOT into six different executable processes. This allows for the individual processes to be connected in an a la carte manner, making the feature set and executable complexity of SPOT adaptable to the needs of the user. Also, these processes need not be executed on the same workstation. This allows for communications between SPOT processes executing on the same Local Area Network (LAN). Thus, SPOT can be executed in a distributed sense with the capability for a team of flight controllers to efficiently share the same trajectory information currently being computed by the program. SPOT is used in the Mission Control Center (MCC) for Space Shuttle Program (SSP) and International Space Station Program (ISSP) operations, and can also be used as a post -flight analysis tool. It is primarily used for situational awareness, and for contingency situations.

Smith, Jason T.↗

Star adaptation for two-algorithms used on serial computers

Two representative algorithms used on a serial computer and presently executed on the Control Data Corporation 6000 computer were adapted to execute efficiently on the Control Data STAR-100 computer. Gaussian elimination for the solution of simultaneous linear equations and the Gauss-Legendre quadrature formula for the approximation of an integral are the two algorithms discussed. A description is given of how the programs were adapted for STAR and why these adaptations were necessary to obtain an efficient STAR program. Some points to consider when adapting an algorithm for STAR are discussed. Program listings of the 6000 version coded in 6000 FORTRAN, the adapted STAR version coded in 6000 FORTRAN, and the STAR version coded in STAR FORTRAN are presented in the appendices.

Howser, L. M.↗

Atmosphere explorer /AE-C/ adaptive mission design and trajectory performance

The preflight mission design and in-flight execution are presented to illustrate the actual utilization of the adaptive nature of this mission. Spacecraft systems (propulsion, attitude, accelerometer) and software (maneuver program) features which contribute to the adaptive trajectory flexibility are discussed. Descriptions of procedures used to handle low perigee maneuver operations (to 130 km), for achieving ground track control and orbit phasing, for making a transition from elliptical to circular orbits, and for circular orbit restoration and maintenance are presented in detail. The 85 maneuvers made during the first 17 months of the mission are summarized.

Barbieri, R. W.↗