Search NASA⌕ Search

SEARCH · Search NASA

Results for “functional programming”

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 343 records · Page 19

Earth Viewing Applications Laboratory (EVAL). Instrument catalog

There were 87 instruments described that are used in earth observation, with an additional 51 instruments containing references to programs and their major functions. These instruments were selected from such sources as: (1) earth observation flight program, (2) operational satellite improvement programs, (3) advanced application flight experiment program, (4) shuttle experiment definition program, and (5) earth observation aircraft program.

Source record↗

Utilities for master source code distribution: MAX and Friends

MAX is a program for the manipulation of FORTRAN master source code (MSC). This is a technique by which one maintains one and only one master copy of a FORTRAN program under a program developing system, which for MAX is assumed to be VAX/VMS. The master copy is not intended to be directly compiled. Instead it must be pre-processed by MAX to produce compilable instances. These instances may correspond to different code versions (for example, double precision versus single precision), different machines (for example, IBM, CDC, Cray) or different operating systems (i.e., VAX/VMS versus VAX/UNIX). The advantage os using a master source is more pronounced in complex application programs that are developed and maintained over many years and are to be transported and executed on several computer environments. The version lag problem that plagues many such programs is avoided by this approach. MAX is complemented by several auxiliary programs that perform nonessential functions. The ensemble is collectively known as MAX and Friends. All of these programs, including MAX, are executed as foreign VAX/VMS commands and can easily be hidden in customized VMS command procedures.

Felippa, Carlos A.↗

Gateway Program Safety and Mission Assurance Integration - The Future of Safe Deep Space Human Exploration

As a foundational element of the National Aeronautics and Space Administration (NASA) Artemis Campaign, the Gateway is an incrementally built cislunar spacecraft that will serve as a platform for deep space human exploration, science, and technology demonstration. The Gateway will be a unifying catalyst for partners around the world to establish sustained deep space scientific investigations, lunar surface access, and missions to Mars. As human exploration moves farther from Earth, spacecraft designs must optimize mass and volume while minimizing human and spacecraft risk. To accomplish this, the Gateway Program Safety and Mission Assurance (S&MA) office develops, implements, and ensures compliance with requirements, in concert with the accurate characterization and transparent communication of residual hazard risks, for integrated safety, reliability and maintainability, and quality assurance. This paper will detail the evolution of the Gateway Program S&MA integration functions, and provide its current status and lessons learned for future human spaceflight programs.

Helen Vaccaro↗

A cost effective data management subsystem for the LST

The paper outlines the approach used in developing DMS (Data Management Subsystem) alternatives for the LST (Large Space Telescope) and in selecting the concept considered to be the most cost effective means of implementing the LST DMS requirements. Two candidate DMS concepts are discussed: a functionally integrated and a functionally separated one. For the single vehicle LST program, separation of the DMS functions best provides high reliability, operations flexibility, minimal interface complexity, and the least complex software development and verification task. The use of available hardware and NASA standard components is stressed.

Dougherty, J. A.↗

Constellation Program: Lessons Learned: Executive Summary - Volume 1

This document (Volume I) provides an executive summary of the lessons learned from the Constellation Program. A companion Volume II provides more detailed analyses for those seeking further insight and information. In this volume, Section 1.0 introduces the approach in preparing and organizing the content to enable rapid assimilation of the lessons. Section 2.0 describes the contextual framework in which the Constellation Program was formulated and functioned that is necessary to understand most of the lessons. Context of a former program may seem irrelevant in the heady days of new program formulation. However, readers should take some time to understand the context. Many of the lessons would be different in a different context, so the reader should reflect on the similarities and differences in his or her current circumstances. Section 3.0 summarizes key findings developed from the significant lessons learned at the program level that appear in Section 4.0. Readers can use the key findings in Section 3.0 to peruse for particular topics, and will find more supporting detail and analyses in Section 4.0 in a topical format. Appendix A contains a white paper describing the Constellation Program formulation that may be of use to readers wanting more context or background information. The reader will no doubt recognize some very similar themes from previous lessons learned, blue-ribbon committee reviews, National Academy reviews, and advisory panel reviews for this and other large-scale human spaceflight programs; including Apollo, Space Shuttle, Shuttle/Mir, and the ISS. This could represent an inability to learn lessons from previous generations; however, it is more likely that similar challenges persist in the Agency structure and approach to program formulation, budget advocacy, and management. Perhaps the greatest value of these Constellation lessons learned can be found in viewing them in context with these previous efforts to guide and advise the Agency and its stakeholders.

Constellation Program↗

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↗

Europa Clipper Payload Verification and Validation: Test and Analysis Program Design

NASA’s Europa Clipper mission – which is planned to launch in the mid-2020s – is designed to investigate the habitability of the jovian moon Europa with a state-of-the-art suite of over 10 sensors and instruments. Now past its project critical design review, Europa Clipper is starting the execution of its verification and validation (V&V) program. The payload V&V function in particular is responsible for designing and coordinating a thorough test and analysis program that will confirm the proper functioning and performance of our payload instruments. Given the large number of instruments to manage, we have developed a suite of standardized tests and analyses that are designed to cover all of the common interfaces across instruments, while allowing for flexibility to support the unique needs of individual instruments. This suite of activities, coordinated and/or performed by the payload team, forms the bulk of our payload verification and validation campaign. This paper provides a detailed summary of the full set of V&V activities in that suite, covering the four categories of activities: analysis of lower-level evidence, analysis via simulation, testing in the system testbeds, and testing in assembly, test, and launch operations (ATLO). We will describe the purpose of each activity type, how the activities are developed, and the review process for each type of activity. We then define the complete list of activities written for each instrument and how subtleties specific to certain instruments are managed. The discussion will provide a comprehensive understanding of the activities in the payload V&V purview and how various interfaces with different levels of the project are managed. This paper also describes key metrics the payload team uses to track V&V progress and some insights into the teaming design and division of labor we use to ensure consistency and completeness across the entire payload suite. Finally, the paper will offer a snapshot of the status of the Payload V&V program prior to instrument delivery and offer insights into the upcoming phase of instrument delivery and the start of ATLO.

Lee, Dennis↗

SSME structural computer program development. Volume 2: BOPACE users manual

A computer program for use with a thermal-elastic-plastic-creep structural analyzer is presented. The following functions of the computer program are discussed: (1) analysis of very high temperature and large plastic-creep effects, (2) treatment of cyclic thermal and mechanical loads, (3) development of constitutive theory which closely follows actual behavior under variable temperature conditions, (4) stable numerical solution approach which avoids cumulative errors, and (5) capability of handling up to 1000 degrees of freedom. The computer program is written in FORTRAN IV and has been run on the IBM 360 and UNIVAC 1108 computer systems.

Vos, R. G.↗

Lower atmospheric composition of Jupiter from Voyager infrared measurements

The observed spectrum of Jovian atmosphere exhibits spectral features of H2, CH4, C2H6, NH3, H2O, GeH4 and CH3D. Analytical programs were developed for radiative transfer calculations and for retrieval of lower atmospheric composition of Jupiter from the observed infrared spectrum. The program models developed are based line by line transmittance calculations with appropriate convolution of the instrument function. The constituent inversion programs were evaluated for accuracy by analyzing synthetic data for retrievals of NH3 profiles. The inversion programs were employed for retrieval of NH3 profiles from the Voyager infared data with results generally in agreement with the accepted values.

Abbas, M. M.↗

User's Manual for FSLIP-3, FLEXSTAB Loads Integration Program

The FSLIP program documentation and user's manual is presented. As a follow on program to the FLEXSTAB computer analysis system, the primary function of this FORTRAN IV program is to integrate panel pressure coefficients computed by FLEXSTAB to obtain total shear, bending, and torque airloads on various surfaces, summed relative to user specified axes. The program essentially replaces the ALOADS module in FLEXSTAB with expanded capabilities and flexibility. As such, FSLIP is generalized to work on any FLEXSTAB model or other pressure data if in a compatible format.

Sims, R. L.↗

Integrating computer programs for engineering analysis and design

The design of a third-generation system for integrating computer programs for engineering and design has been developed for the Aerospace Vehicle Interactive Design (AVID) system. This system consists of an engineering data management system, program interface software, a user interface, and a geometry system. A relational information system (ARIS) was developed specifically for the computer-aided engineering system. It is used for a repository of design data that are communicated between analysis programs, for a dictionary that describes these design data, for a directory that describes the analysis programs, and for other system functions. A method is described for interfacing independent analysis programs into a loosely-coupled design system. This method emphasizes an interactive extension of analysis techniques and manipulation of design data. Also, integrity mechanisms exist to maintain database correctness for multidisciplinary design tasks by an individual or a team of specialists. Finally, a prototype user interface program has been developed to aid in system utilization.

Wilhite, A. W.↗

Application-Program-Installer Builder

A computer program builds application programming interfaces (APIs) and related software components for installing and uninstalling application programs in any of a variety of computers and operating systems that support the Java programming language in its binary form. This program is partly similar in function to commercial (e.g., Install-Shield) software. This program is intended to enable satisfaction of a quasi-industry-standard set of requirements for a set of APIs that would enable such installation and uninstallation and that would avoid the pitfalls that are commonly encountered during installation of software. The requirements include the following: 1) Properly detecting prerequisites to an application program before performing the installation; 2) Properly registering component requirements; 3) Correctly measuring the required hard-disk space, including accounting for prerequisite components that have already been installed; and 4) Correctly uninstalling an application program. Correct uninstallation includes (1) detecting whether any component of the program to be removed is required by another program, (2) not removing that component, and (3) deleting references to requirements of the to-be-removed program for components of other programs so that those components can be properly removed at a later time.

Wolgast, Paul↗

S-Band POSIX Device Drivers for RTEMS

This is a set of POSIX device driver level abstractions in the RTEMS RTOS (Real-Time Executive for Multiprocessor Systems real-time operating system) to SBand radio hardware devices that have been instantiated in an FPGA (field-programmable gate array). These include A/D (analog-to-digital) sample capture, D/A (digital-to-analog) sample playback, PLL (phase-locked-loop) tuning, and PWM (pulse-width-modulation)-controlled gain. This software interfaces to Sband radio hardware in an attached Xilinx Virtex-2 FPGA. It uses plug-and-play device discovery to map memory to device IDs. Instead of interacting with hardware devices directly, using direct-memory mapped access at the application level, this driver provides an application programming interface (API) offering that easily uses standard POSIX function calls. This simplifies application programming, enables portability, and offers an additional level of protection to the hardware. There are three separate device drivers included in this package: sband_device (ADC capture and DAC playback), pll_device (RF front end PLL tuning), and pwm_device (RF front end AGC control).

Lux, James P.↗

THE ECONOMIC EFFECTS OF THE SPACE PROGRAM

The purpose of this paper is to discuss the economic impact of the amazing space program presented in the preceding papers. My function is to view the space program objectively as an economist so as to assess its impact upon the Nation's economy as a whole and upon certain regions in particular. In order to be objective, I will not take the extreme view that our entire lives will be changed by this program overnight-we will not all be wearing air-conditioned Moonsuits in 2 years and commuting to work by individual miniaturized Rocketpacks. An attempt will be made to avoid the other extreme of thinking that the space program is the greatest boondoggle since the Pyramids; it is not merely a form of scientific leaf-raking on a gigantic scale. My definition of the space program includes the program of the National Aeronautics and Space Administration (NASA) and some work of other agencies doing related space exploration, particularly the Department of Defense. In essence, I hope to answer the question: What will NASA's program mean to the participants in the Nation's economy?

ECONOMICS↗

Method Of Predicting Size Of Software Under Development

Method of estimating size and complexity of large computer program under development based on metric called "function mass." Simplification of Demarco's "function bang" metric. Size of completed program usually expressed in terms of number of lines of code (SLOC), shown in previous research to be highly correlated with amount of development effort and therefore important predictor of development cost. Proposed method of estimating ultimate size of program is intermediate product of continuing research on estimation of size and structured analysis of developmental software.

Hihn, Jairus M.↗