Search NASA⌕ Search

SEARCH · Search NASA

Results for “code generation”

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

Benefits and Challenges of Model-based Software Engineering: Lessons Learned based on Qualitative and Quantitative Findings

Even though Model-based Software Engineering (MBSwE) techniques and Autogenerated Code (AGC) have been increasingly used to produce complex software systems, there is only anecdotal knowledge about the state-of-thepractice. Furthermore, there is a lack of empirical studies that explore the potential quality improvements due to the use of these techniques. This paper presents in-depth qualitative findings about development and Software Assurance (SWA) practices and detailed quantitative analysis of software bug reports of a NASA mission that used MBSwE and AGC. The mission’s flight software is a combination of handwritten code and AGC developed by two different approaches: one based on state chart models (AGC-M) and another on specification dictionaries (AGC-D). The empirical analysis of fault proneness is based on 380 closed bug reports created by software developers. Our main findings include: (1) MBSwE and AGC provide some benefits, but also impose challenges. (2) SWA done only at a model level is not sufficient. AGC code should also be tested and the models and AGC should always be kept in-sync. AGC must not be changed manually. (3) Fixes made to address an individual bug report were spread both across multiple modules and across multiple files. On average, for each bug report 1.4 modules, that is, 3.4 files were fixed. (4) Most bug reports led to changes in more than one type of file. The majority of changes to auto-generated source code files were made in conjunction to changes in either file with state chart models or XML files derived from dictionaries. (5) For newly developed files, AGC-M and handwritten code were of similar quality, while AGC-D files were the least fault prone.

Goseva-Popstojanova, Katerina↗

Design of shock-free compressor cascades including viscous boundary layer effects

A computer code that generates shock-free transonic compressor cascade shapes while taking into account viscosity effects is developed. The mathematical model for the inviscid flow field is the full potential equation. The Kutta-Joukowski condition is satisfied by varying the free stream angle at downstream infinity. A boundary fitted computational grid of C-type is generated using a sequence of conformal mapping and nonorthogonal coordinate stretching and shearing transformations. The inviscid calculation is performed sequentially on up to four consecutively refined grids thereby accelerating the convergence of the solution process. The full potential equation is solved using a finite area technique and rotated, type-dependent finite differencing. Artificial viscosity of the first order is added in a fully conservative form. Shock-free cascade airfoil shapes are obtained using the fictitious gas concept of Sobieczky and the method of characteristics in the rheograph plane. Viscosity effects are incorporated via a boundary layer displacement thickness. The integral boundary layer code is based on Rotta's turbulence model and assumes transition region of zero length.

Dulikravich, G. S.↗

THRSTER: A Three-Stream Ejector Ramjet Analysis and Design Tool

An engineering tool for analyzing ejectors in rocket based combined cycle (RBCC) engines has been developed. A key technology for multi-cycle RBCC propulsion systems is the ejector which functions as the compression stage of the ejector ramjet cycle. The THRee STream Ejector Ramjet analysis tool was developed to analyze the complex aerothermodynamic and combustion processes that occur in this device. The formulated model consists of three quasi-one-dimensional streams, one each for the ejector primary flow, the secondary flow, and the mixed region. The model space marches through the mixer, combustor, and nozzle to evaluate the solution along the engine. In its present form, the model is intended for an analysis mode in which the diffusion rates of the primary and secondary into the mixed stream are stipulated. The model offers the ability to analyze the highly two-dimensional ejector flowfield while still benefits from the simplicity and speed of an engineering tool. To validate the developed code, wall static pressure measurements from the Penn-State and NASA-ART RBCC experiments were used to compare with the results generated by the code. The calculated solutions were generally found to have satisfactory agreement with the pressure measurements along the engines, although further modeling effort may be required when a strong shock train is formed at the rocket exhaust. The range of parameters in which the code would generate valid results are presented and discussed.

Chue, R. S.↗

THRSTER: A THRee-STream Ejector Ramjet Analysis and Design Tool

An engineering tool for analyzing ejectors in rocket based combined cycle (RBCC) engines has been developed. A key technology for multi-cycle RBCC propulsion systems is the ejector which functions as the compression stage of the ejector ramjet cycle. The THRee STream Ejector Ramjet analysis tool was developed to analyze the complex aerothermodynamic and combustion processes that occur in this device. The formulated model consists of three quasi-one-dimensional streams, one each for the ejector primary flow, the secondary flow, and the mixed region. The model space marches through the mixer, combustor, and nozzle to evaluate the solution along the engine. In its present form, the model is intended for an analysis mode in which the diffusion rates of the primary and secondary into the mixed stream are stipulated. The model offers the ability to analyze the highly two-dimensional ejector flowfield while still benefits from the simplicity and speed of an engineering tool. To validate the developed code, wall static pressure measurements from the Penn-State and NASA-ART RBCC experiments were used to compare with the results generated by the code. The calculated solutions were generally found to have satisfactory agreement with the pressure measurements along the engines, although further modeling effort may be required when a strong shock train is formed at the rocket exhaust. The range of parameters in which the code would generate valid results are presented and discussed.

Chue, R. S.↗

Subreflector program

Computer program generating binary coded decimal punched cards for scattering program describing subreflector figure of revolution

COMPUTER PROGRAM↗

Correction of burst errors containing bit slippages for cyclic block codes

A technique is presented for correction of an (n,k) cyclic block code subjected to a noise disturbance consisting of an arbitrary number of both bit deletions and bit inversions contained within a single error burst. Following the procedure described by Meggitt (1961), the correction of a b-bit burst is attempted by first loading the initial error syndrome into an (n-k) order feedback shift register with taps selected for the code's generating polynomial; the register is then successively shifted one bit position in the direction of lower order. The discussion covers burst correction with m-bit deletion, burst/deletion decoder implementation, false correction probability, and bit slippage involving bit insertions. The principal elements of the burst/deletion correction decoder are presented in schematic form.

Green, E. P.↗

A user oriented microcomputer facility for designing linear quadratic Gaussian feedback compensators

A laboratory design facility for digital microprocessor implementation of linear-quadratic-Gaussian feedback compensators is described. Outputs from user interactive programs for solving infinite time horizon LQ regulator and Kalman filter problems were conditioned for implementation on the laboratory microcomputer system. The software consisted of two parts: an offline high-level program for solving the LQ Ricatti equations and generating associated feedback and filter gains and a cross compiler/macro assembler which generates object code for the target microprocessor system. A PDP 11/70 with a UNIX operating system was used for all high level program and data management, and the target microprocessor system is an Intel MDS (8080-based processor). Application to the control of a two dimensional inverted pendulum is presented and issues in expanding the design/prototyping system to other target machine architectures are discussed.

Houpt, P. K.↗

A user oriented microcomputer facility for designing linear quadratic Gaussian feedback compensators

The paper describes a laboratory design facility for digital microprocessor implementation of Linear-Quadratic-Gaussian feedback compensators. Outputs from user interactive programs for solving infinite time horizon LQ regulator and Kalman filter problems are conditioned for implementation on a laboratory microcomputer system. The software consists of two parts: (1) an off-line high-level program for solving the LQ Ricatti equations and generating associated feedback and filter gains, and (2) a cross compiler/macro assembler which generates object code for the target microprocessor system. Application to the control of a two dimensional inverted pendulum and expanding the design/prototyping system to other target machine architectures are discussed.

Houpt, P. K.↗

Model verification studies using accurate measurements of spin up

The reliability and accuracy of the numerical code for spin up flows in a cylinder by comparing the numerical results against high resolution laser Doppler velocimeter (LDV) measurements of the azimuthal flows were checked. A computer code to generate numerical solution for axisymmetric rotating fluid in a cylinder was obtained and amended for routine use at MSFC. The numerical simulations used the Navier-Stokes equations in axisymmetric form and employed finite difference techniques on both constant and variable grids. The numerical solutions are analyzed to gain further insight into the fundamental questions analyzed in rotating fluid dynamics.

Hyun, J. M.↗

User's manual for Axisymmetric Diffuser Duct (ADD) code. Volume 1: General ADD code description

This User's Manual contains a complete description of the computer codes known as the AXISYMMETRIC DIFFUSER DUCT code or ADD code. It includes a list of references which describe the formulation of the ADD code and comparisons of calculation with experimental flows. The input/output and general use of the code is described in the first volume. The second volume contains a detailed description of the code including the global structure of the code, list of FORTRAN variables, and descriptions of the subroutines. The third volume contains a detailed description of the CODUCT code which generates coordinate systems for arbitrary axisymmetric ducts.

Anderson, O. L.↗

PASCAL/48 reference manual

PASCAL/48 is a programming language for the Intel MCS-48 series of microcomputers. In particular, it can be used with the Intel 8748. It is designed to allow the programmer to control most of the instructions being generated and the allocation of storage. The language can be used instead of ASSEMBLY language in most applications while allowing the user the necessary degree of control over hardware resources. Although it is called PASCAL/48, the language differs in many ways from PASCAL. The program structure and statements of the two languages are similar, but the expression mechanism and data types are different. The PASCAL/48 cross-compiler is written in PASCAL and runs on the CDC CYBER NOS system. It generates object code in Intel hexadecimal format that can be used to program the MCS-48 series of microcomputers. This reference manual defines the language, describes the predeclared procedures, lists error messages, illustrates use, and includes language syntax diagrams.

Knight, J. C.↗

Implementation of the Sun Position Calculation in the PDC-1 Control Microprocessor

The several computational approaches to providing the local azimuth and elevation angles of the Sun as a function of local time and then the utilization of the most appropriate method in the PDC-1 microprocessor are presented. The full algorithm, the FORTRAN form, is felt to be very useful in any kind or size of computer. It was used in the PDC-1 unit to generate efficient code for the microprocessor with its floating point arithmetic chip. The balance of the presentation consists of a brief discussion of the tracking requirements for PPDC-1, the planetary motion equations from the first to the final version, and the local azimuth-elevation geometry.

Stallkamp, J. A.↗

A comparative study of the parabolized Navier-Stokes code using various grid-generation techniques

The parabolized Navier-Stokes (PNS) equations are used to calculate the flow-field characteristics about the hypersonic research aircraft X-24C. A comparison of the results obtained using elliptic, hyperbolic, and algebraic grid generators is presented. The outer bow shock is treated as a sharp discontinuity, and the discontinuities within the shock layer are captured. Surface pressures and heat-transfer results at angles of attack of 6 deg and 20 deg, obtained using the three grid generators, are compared. The PNS equations are marched downstream over the body in both Cartesian and cylindrical base coordinate systems, and the results are compared. A robust marching procedure is demonstrated by successfully using large marching step sizes with the implicit shock fitting procedure. A correlation is found between the marching step size, Reynolds number, and the angle of attack at fixed values of smoothing and stability coefficients for the marching scheme.

Kaul, U. K.↗

Applications of array processors in the analysis of remote sensing images

The architectures, programming characteristics, and ranges of application of past, present, and planned array processors for the digital processing of remote-sensing images are compared. Such functions as radiometric and geometric corrections, principal-components analysis, cluster coding, histogram generation, grey-level mapping, convolution, classification, and mensuration and modeling operations are considered, and both pipeline-type and single-instruction/multiple-data-stream (SIMD) arrays are evaluated. Numerical results are presented in a table, and it is found that the pipeline-type arrays normally used with minicomputers increase their speed significantly at low cost, while even further gains are provided by the more expensive SIMD arrays. Most image-processing operations become I/O-limited when SIMD arrays are used with current I/O devices.

Ramapriyan, H. K.↗

A comparative study of the parabolized Navier-Stokes code using various grid-generation techniques

The parabolized Navier-Stokes (PNS) equations are used to calculate the flow-field characteristics about the hypersonic research aircraft X-24C. A comparison of the results obtained using elliptic, hyperbolic and algebraic grid generators is presented. The outer bow shock is treated as a sharp discontinuity, and the discontinuities within the shock layer are captured. Surface pressures and heat-transfer results at angles of attack of 6 deg and 20 deg, obtained using the three grid generators, are compared. The PNS equations are marched downstream over the body in both Cartesian and cylindrical base coordinate systems, and the results are compared. A robust marching procedure is demonstrated by successfully using large marching-step sizes with the implicit shock fitting procedure. A correlation is found between the marching-step size, Reynolds number and the angle of attack at fixed values of smoothing and stability coefficients for the marching scheme.

Kaul, U. K.↗

Exploiting loop level parallelism in nonprocedural dataflow programs

Discussed are how loop level parallelism is detected in a nonprocedural dataflow program, and how a procedural program with concurrent loops is scheduled. Also discussed is a program restructuring technique which may be applied to recursive equations so that concurrent loops may be generated for a seemingly iterative computation. A compiler which generates C code for the language described below has been implemented. The scheduling component of the compiler and the restructuring transformation are described.

Gokhale, Maya B.↗

SINDA-NASTRAN interfacing program theoretical description and user's manual

The task of converting SINDA finite difference thermal model temperature results into NASTRAN finite element model thermal loads can be very labor intensive if there is not one node-to-one element, or systematic node-to-element. correlation between models. This paper describes the SINDA-NASTRAN Interfacing Program (SNIP), a FORTRAN computer code that generates NASTRAN structural model thermal load cards given by SINDA (or similar thermal model) temperature results and thermal model geometric data. SNIP generates NASTRAN thermal load cards for NASTRAN plate, shell, bar, and beam elements. The paper describes the interfacing procedures used by SNIP, and discusses set-up and operation of the program. Sample cases are included to demonstrate use of the program and show its performance under a variety of conditions. SNIP can provide structural model thermal loads that accurately reflect thermal model results while reducing the time required to interface thermal and structural models when compared to other methods.

Winegar, Steven R.↗