Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “programming language”

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,333 records · Page 74

A common distributed language approach to software integration

An important objective in software integration is the development of techniques to allow programs written in different languages to function together. Several approaches are discussed toward achieving this objective and the Common Distributed Language Approach is presented as the approach of choice.

Antonelli, Charles J.↗

Interpretive computer simulator for the NASA Standard Spacecraft Computer-2 (NSSC-2)

An Interpretive Computer Simulator (ICS) for the NASA Standard Spacecraft Computer-II (NSSC-II) was developed as a code verification and testing tool for the Annular Suspension and Pointing System (ASPS) project. The simulator is written in the higher level language PASCAL and implented on the CDC CYBER series computer system. It is supported by a metal assembler, a linkage loader for the NSSC-II, and a utility library to meet the application requirements. The architectural design of the NSSC-II is that of an IBM System/360 (S/360) and supports all but four instructions of the S/360 standard instruction set. The structural design of the ICS is described with emphasis on the design differences between it and the NSSC-II hardware. The program flow is diagrammed, with the function of each procedure being defined; the instruction implementation is discussed in broad terms; and the instruction timings used in the ICS are listed. An example of the steps required to process an assembly level language program on the ICS is included. The example illustrates the control cards necessary to assemble, load, and execute assembly language code; the sample program to to be executed; the executable load module produced by the loader; and the resulting output produced by the ICS.

Smith, R. S.↗

Dynamic Altitude Simulation System Performance Modeling

The "Dynamic Altitude Simulation Prediction Program," DASSPP, is a program to predict the transient response of an engine, test cell, ejector system under engine shutdown conditions. These transients are important to know so that corrective modifications can be adapted to prevent any damage to the engine or test cell. The "Dynamic Altitude System Simulation Prediction Program," DASSPP, is a major rewrite of the existing program "RL-1000" written in BASIC. The RL-1000 program was written to analyze the transients of the RL-10 system only. The new program is written to run in Excell 97 and utilizes the Visual BASIC language in Excell. The program has many added features not included in the original "Rl-1000" program. The program utilizes the ejector models developed during the summer of 1997. The new program is very user friendly and utilizes a dialog box for data input.

LaFrance, Leo J.↗

Simit: A Language for Physical Simulation

With existing programming tools, writing high-performance simulation code is labor intensive and requires sacrificing readability and portability. Here, the alternative is to prototype simulations in a high-level language like Matlab, thereby sacrificing performance. The Matlab programming model naturally describes the behavior of an entire physical system using the language of linear algebra. However, simulations also manipulate individual geometric elements, which are best represented using linked data structures like meshes. Translating between the linked data structures and linear algebra comes at significant cost, both to the programmer and to the machine. High-performance implementations avoid the cost by rephrasing the computation in terms of linked or index data structures, leaving the code complicated and monolithic, often increasing its size by an order of magnitude. In this article, we present Simit, a new language for physical simulations that lets the programmer view the system both as a linked data structure in the form of a hypergraph and as a set of global vectors, matrices, and tensors depending on what is convenient at any given time. Simit provides a novel assembly construct that makes it conceptually easy and computationally efficient to move between the two abstractions. Using the information provided by the assembly construct, the compiler generates efficient in-place computation on the graph. We demonstrate that Simit is easy to use: a Simit program is typically shorter than a Matlab program; that it is high performance: a Simit program running sequentially on a CPU performs comparably to hand-optimized simulations; and that it is portable: Simit programs can be compiled for GPUs with no change to the program, delivering 4 to 20× speedups over our optimized CPU code.

97 MATHEMATICS AND COMPUTING↗

The Evolution of Dust in the Multiphase ISM: Grain Destruction Processes

This proposal covered year one of a long term project in which we acquired the necessary hardware and softwaxe needed to calculate grain destruction processes in the interstellar medium (ISM). The long term goal of this research is to develop a model for the dust evolution in the ISM capable of explaining observations of elemental depletions, the grain size distribution, and the emission characteristics of the ISM from the X-ray through the FIR. We purchased a SUN Ultra 10 workstation and peripheral devices including an Exabyte Tape drive, HP Laser Printer, and Seagate External Hard Disk. The PI installed the hardware and Solaris operating system on the workstation and integrated the hardware into the network. Software was also purchased to enable connections to the workstation from a PC (Hummingbird Exceed). Additional freeware required to carry out the proposed program was installed on the system including compilers (g77, gcc, g++), editors (emacs), a markup language (LaTeX), and display programs (WIP, XV, SAOtng). We have also successfully modified the required plot files to work with our system which display the results of grain processing.

Wolfire, Mark↗

TRASYS for Beginners

Self-teaching manual designed for first-time users of TRASYS (Thermal Radiation Analysis System), computer program widely used by engineers involved in thermodynamic analyses. Simpler than full TRASYS manual: Readers need no previous knowledge of program or of FORTRAN language in which it is written. Self-teaching manual gives specific instructions in operation of program and three step-by-step examples.

So, K. T.↗

STARS: An Integrated, Multidisciplinary, Finite-Element, Structural, Fluids, Aeroelastic, and Aeroservoelastic Analysis Computer Program

A multidisciplinary, finite element-based, highly graphics-oriented, linear and nonlinear analysis capability that includes such disciplines as structures, heat transfer, linear aerodynamics, computational fluid dynamics, and controls engineering has been achieved by integrating several new modules in the original STARS (STructural Analysis RoutineS) computer program. Each individual analysis module is general-purpose in nature and is effectively integrated to yield aeroelastic and aeroservoelastic solutions of complex engineering problems. Examples of advanced NASA Dryden Flight Research Center projects analyzed by the code in recent years include the X-29A, F-18 High Alpha Research Vehicle/Thrust Vectoring Control System, B-52/Pegasus Generic Hypersonics, National AeroSpace Plane (NASP), SR-71/Hypersonic Launch Vehicle, and High Speed Civil Transport (HSCT) projects. Extensive graphics capabilities exist for convenient model development and postprocessing of analysis results. The program is written in modular form in standard FORTRAN language to run on a variety of computers, such as the IBM RISC/6000, SGI, DEC, Cray, and personal computer; associated graphics codes use OpenGL and IBM/graPHIGS language for color depiction. This program is available from COSMIC, the NASA agency for distribution of computer programs.

Gupta, K. K.↗

Program for calculating optimum dimensions of alpha radioisotope capsules exposed to varying stress and temperature

A method and computer program were developed for calculating the creep and optimizing the dimensions of capsules filled with alpha-emitting radioisotopes. The method solves an integral equation that was developed assuming linear accumulation of partial creep lives and relating life to time-dependent stress and temperature using the Larson-Miller parameter. The computer program, CAPSUL, is written in Fortran language for the IBM 360/75 computer. The program makes a least squares fit of the creep life function using conventional constant stress, constant temperature creep data. Dimensions of capsules having maximum thermal power per unit of weight, volume, or area are calculated for a given creep life and pressure-temperature history using a numerical Lagrange Multiplier formulation. The program also calculates the life to a prescribed strain for capsules of given dimensions and pressure-temperature history. The method has been used to analyze creep data for the alloys 304 stainless steel, Hastelloy N, Cb-1% Zr, FS-85, and T-222.

J. P. Nichols↗

Digital simulation of dynamic processes in radiometer systems

The development and application of several computer programs for simulating different classes of microwave radiometers are described. The programs are dynamic in nature, and they may be used to determine the instantaneous behavior of system variables as a function of time. Some of the programs employ random variable models in the simulations so that the statistical nature of the results may be investigated. The programs have been developed to utilize either the Continuous System Modeling Program or the Advanced Continuous System Language. The validity of most of the programs was investigated using statistical tests, and the results show excellent correlation with theoretical predictions. The programs are currently being used in the investigation of new design techniques for microwave radiometers.

Stanley, W. D.↗

Distributed and parallel Ada and the Ada 9X recommendations

Recently, the DoD has sponsored work towards a new version of Ada, intended to support the construction of distributed systems. The revised version, often called Ada 9X, will become the new standard sometimes in the 1990s. It is intended that Ada 9X should provide language features giving limited support for distributed system construction. The requirements for such features are given. Many of the most advanced computer applications involve embedded systems that are comprised of parallel processors or networks of distributed computers. If Ada is to become the widely adopted language envisioned by many, it is essential that suitable compilers and tools be available to facilitate the creation of distributed and parallel Ada programs for these applications. The major languages issues impacting distributed and parallel programming are reviewed, and some principles upon which distributed/parallel language systems should be built are suggested. Based upon these, alternative language concepts for distributed/parallel programming are analyzed.

Volz, Richard A.↗

Automating software design system DESTA

'DESTA' is the acronym for the Dialogue Evolutionary Synthesizer of Turnkey Algorithms by means of a natural language (Russian or English) functional specification of algorithms or software being developed. DESTA represents the computer-aided and/or automatic artificial intelligence 'forgiving' system which provides users with software tools support for algorithm and/or structured program development. The DESTA system is intended to provide support for the higher levels and earlier stages of engineering design of software in contrast to conventional Computer Aided Design (CAD) systems which provide low level tools for use at a stage when the major planning and structuring decisions have already been taken. DESTA is a knowledge-intensive system. The main features of the knowledge are procedures, functions, modules, operating system commands, batch files, their natural language specifications, and their interlinks. The specific domain for the DESTA system is a high level programming language like Turbo Pascal 6.0. The DESTA system is operational and runs on an IBM PC computer.

Lovitsky, Vladimir A.↗

Development of a KSC test and flight engineering oriented computer language, Phase 1

Ten, primarily test oriented, computer languages reviewed during the phase 1 study effort are described. Fifty characteristics of ATOLL, ATLAS, and CLASP are compared. Unique characteristics of the other languages, including deficiencies, problems, safeguards, and checking provisions are identified. Programming aids related to these languages are reported, and the conclusions resulting from this phase of the study are discussed. A glossary and bibliography are included. For the reports on phase 2 of the study, see N71-35027 and N71-35029.

Case, C. W.↗

Analytical study of striated nozzle flow with small radius of curvature ratio throats

An analytical method was developed which is capable of estimating the chamber and throat conditions in a nozzle with a low radius of curvature throat. The method was programmed using standard FORTRAN 4 language and includes chemical equilibrium calculation subprograms (modified NASA Lewis program CEC71) as an integral part. The method determines detailed and gross rocket characteristics in the presence of striated flows and gives detailed results for the motor chamber and throat plane with as many as 20 discrete zones. The method employs a simultaneous solution of the mass, momentum, and energy equations and allows propellant types, 0/F ratios, propellant distribution, nozzle geometry, and injection schemes to be varied so to predict spatial velocity, density, pressure, and other thermodynamic variable distributions in the chamber as well as the throat. Results for small radius of curvature have shown good comparison to experimental results. Both gaseous and liquid injection may be considered with frozen or equilibrium flow calculations.

Norton, D. J.↗

Architecture-Adaptive Computing Environment: A Tool for Teaching Parallel Programming

Recently, networked and cluster computation have become very popular. This paper is an introduction to a new C based parallel language for architecture-adaptive programming, aCe C. The primary purpose of aCe (Architecture-adaptive Computing Environment) is to encourage programmers to implement applications on parallel architectures by providing them the assurance that future architectures will be able to run their applications with a minimum of modification. A secondary purpose is to encourage computer architects to develop new types of architectures by providing an easily implemented software development environment and a library of test applications. This new language should be an ideal tool to teach parallel programming. In this paper, we will focus on some fundamental features of aCe C.

Dorband, John E.↗

Program and charts for determining shock tube, and expansion tunnel flow quantities for real air

A computer program in FORTRAN 4 language was written to determine shock tube, expansion tube, and expansion tunnel flow quantities for real-air test gas. This program permits, as input data, a number of possible combinations of flow quantities generally measured during a test. The versatility of the program is enhanced by the inclusion of such effects as a standing or totally reflected shock at the secondary diaphragm, thermochemical-equilibrium flow expansion and frozen flow expansion for the expansion tube and expansion tunnel, attenuation of the flow in traversing the acceleration section of the expansion tube, real air as the acceleration gas, and the effect of wall boundary layer on the acceleration section air flow. Charts which provide a rapid estimation of expansion tube performance prior to a test are included.

Miller, C. G., III↗

Process Management and Exception Handling in Multiprocessor Operating Systems Using Object-Oriented Design Techniques

The programming of the interrupt handling mechanisms, process switching primitives, scheduling mechanism, and synchronization primitives of an operating system for a multiprocessor require both efficient code in order to support the needs of high- performance or real-time applications and careful organization to facilitate maintenance. Although many advantages have been claimed for object-oriented class hierarchical languages and their corresponding design methodologies, the application of these techniques to the design of the primitives within an operating system has not been widely demonstrated. To investigate the role of class hierarchical design in systems programming, the authors have constructed the Choices multiprocessor operating system architecture the C++ programming language. During the implementation, it was found that many operating system design concerns can be represented advantageously using a class hierarchical approach, including: the separation of mechanism and policy; the organization of an operating system into layers, each of which represents an abstract machine; and the notions of process and exception management. In this paper, we discuss an implementation of the low-level primitives of this system and outline the strategy by which we developed our solution.

Russo, Vincent↗

QA4, a language for artificial intelligence.

Introduction of a language for problem solving and specifically robot planning, program verification, and synthesis and theorem proving. This language, called question-answerer 4 (QA4), embodies many features that have been found useful for constructing problem solvers but have to be programmed explicitly by the user of a conventional language. The most important features of QA4 are described, and examples are provided for most of the material introduced. Language features include backtracking, parallel processing, pattern matching, set manipulation, and pattern-triggered function activation. The language is most convenient for use in an interactive way and has extensive trace and edit facilities.

Derksen, J. A. C.↗