Search NASASearch

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 109 records · Page 6

Program Computes Thermodynamic Functions

PAC91 is latest in PAC (Properties and Coefficients) series. Two principal features are to provide means of (1) generating theoretical thermodynamic functions from molecular constants and (2) least-squares fitting of these functions to empirical equations. PAC91 written in FORTRAN 77 to be machine-independent.

Mcbride, Bonnie J.

The geography and human cultural resources working group of the EROS program

The functions, activities, and objectives of the Geography and Human-Cultural Resources Working Group of the EROS program are outlined. The Group's primary function is to coordinate remote sensing experiments of physical scientists and the needs of socioeconomic and culturally orientated planners, policy makers, administrators, and other user groups. Other functions of the Group include land use analysis, resource mapping, and development of an operational automatic information system receptive to land use and environmental data.

Gerlach, A. C.

Logic Programming with Extensible Types

Logic programming allows structuring code in terms of predicates or relations, rather than functions. Although logic programming languages present advantages in terms of declarativeness and conciseness, the introduction of static types has not become part of most popular logic programming languages, increasing the difficulty of testing and debugging of logic programming code. This paper demonstrates how to implement logic programming in Haskell, thus empowering logic programs with types, and functional programs with relations or predicates. We do so by combining three ideas. First, we use extensible types to generalize a type by a parameter type function. Second, we use a sum type as an argument to introduce optional variables in extensible types. Third, we implement a unification algorithm capable of working with any data structure, provided that certain operations are implemented for the given type. We demonstrate our proposal via a series of increasingly complex examples inspired by educational texts in logic programming, and leverage the host language's features to make new notation convenient for users, showing that the proposed approach is not just technically possible but also practical.

logic programming

The MSFC Program Control Development Program

It is the policy of the Marshall Space Flight Center (MSFC) that employees be given the opportunity to develop their individual skills and realize their full potential consistent with their selected career path and with the overall Center's needs and objectives. The MSFC Program Control Development Program has been designed to assist individuals who have selected Program Control or Program Analyst Program Control as a career path to achieve their ultimate career goals. Individuals selected to participate in the MSFC Program Control Development Program will be provided with development training in the various Program Control functional areas identified in the NASA Program Control Model. The purpose of the MSFC Program Control Development Program is to develop individual skills in the various Program Control functions by on-the-job and classroom instructional training on the various systems, tools, techniques, and processes utilized in these areas.

Source record

Programs for Testing Processor-in-Memory Computing Systems

The Multithreaded Microbenchmarks for Processor-In-Memory (PIM) Compilers, Simulators, and Hardware are computer programs arranged in a series for use in testing the performances of PIM computing systems, including compilers, simulators, and hardware. The programs at the beginning of the series test basic functionality; the programs at subsequent positions in the series test increasingly complex functionality. The programs are intended to be used while designing a PIM system, and can be used to verify that compilers, simulators, and hardware work correctly. The programs can also be used to enable designers of these system components to examine tradeoffs in implementation. Finally, these programs can be run on non-PIM hardware (either single-threaded or multithreaded) using the POSIX pthreads standard to verify that the benchmarks themselves operate correctly. [POSIX (Portable Operating System Interface for UNIX) is a set of standards that define how programs and operating systems interact with each other. pthreads is a library of pre-emptive thread routines that comply with one of the POSIX standards.]

Katz, Daniel S.

Computer program reduces calculation time of normal response functions

FORTRAN 2 computer program rapidly calculates parameters of maximum likelihood estimates from sensitivity experiment data populations. The program uses the Newton-Raphson iterative procedure to calculate the mean and standard deviation of portions of the cumulative normal response function.

Alexander, M. J.

A computer program to calculate zeroes, extrema, and interval integrals for the associated Legendre functions

A computer program is described for the calculation of the zeroes of the associated Legendre functions, Pnm, and their derivatives, for the calculation of the extrema of Pnm and also the integral between pairs of successive zeroes. The program has been run for all n,m from (0,0) to (20,20) and selected cases beyond that for n up to 40. Up to (20,20), the program (written in double precision) retains nearly full accuracy, and indications are that up to (40,40) there is still sufficient precision (4-5 decimal digits for a 54-bit mantissa) for estimation of various bounds and errors involved in geopotential modelling, the purpose for which the program was written.

Payne, M. H.

X-29A technology demonstrator flight test program overview

An overview of the X-29A functional flight program and concept evaluation program is presented, including some of the unique and different preparations for the first flight. Included are a discussion of the many organizational responsibilities and a description of the program management structure for the test team. Also discussed are preflight ground, flight functional envelope expansion, and flight research test objectives and qualitive results to date for both a limited-envelope flight control system and an expanded-envelope system. The aircraft, including the instrumentation system and measurements, is described. In addition, a discussion is included regarding the use of major support facilities, such as ground and flight simulators, the NASA Western Aeronautical Test Range and mission control center, and the Grumman automated telemetry station. An overview of the associated real-time and postflight batch data processing software approaches is presented. The use of hardware-in-the-loop simulation for independent verification and validation and mission planning and practice is discussed. Also included is a description of the flight-readiness review, the airworthiness and flight safety review, work scheduling, technical briefings, and preflight and postflight crew briefings. The configuration control process used on the X-29A program is described, and its relationship to both simulation and aircraft operations is discussed. An X-29A schedule overview is presented with an outline of a proposed follow-on program.

Sefic, W. J.

Substructuring techniques

The substructure function generator program is discussed. Input to this program consists of a definition of a finite element model of a substructure, and specification of the type and number of displacement functions to be generated. Primary output is a substructure data file containing the substructure mass and stiffness matrices expressing kinetic and potential energies as quadratic forms in coefficients of the displacement functions, etc. The substructure synthesis program forms complete system mass, stiffness, and damping matrices, computes system modes and frequencies, and executes transient response calculations. Input to this program consists of the array of substructure data files generated by the function generator program for individual substructures, and data cards defining the position and interconnection of the substructures, damping data, forcing function details, and function control parameters.

Whetstone, W. D.

Data synthesis and display programs for wave distribution function analysis

At the National Space Science Data Center (NSSDC) software was written to synthesize and display artificial data for use in developing the methodology of wave distribution analysis. The software comprises two separate interactive programs, one for data synthesis and the other for data display.

Storey, L. R. O.

Transfer-function parameters

Computer program fits linear-factored form transfer function to given frequency-response data. Program is based on conjugate-gradient search procedure that minimizes error between given frequency-response data and frequency response of transfer function that is supplied by user.

Seidel, R. C.

Software engineering environment tool set integration

Space Transportation System Division (STSD) Engineering has a program to promote excellence within the engineering function. This program resulted in a capital funded facility based on a VAX cluster called the Rockwell Operational Engineering System (ROSES). The second phase of a three phase plan to establish an integrated software engineering environment for ROSES is examined. It discusses briefly phase one which establishes the basic capability for a modern software development environment to include a tool set, training and standards. Phase two is a tool set integration. The tool set is primarily off-the-shelf tools acquired through vendors or government agencies (public domain). These tools were placed into categories of software development. These categories are: requirements, design, and construction support; verification and validation support; and software management support. The integration of the tool set is being performed through concept prototyping and development of tools specifically designed to support the life cycle and provide transition from one phase to the next.

Selfridge, William P.