Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Software Construction”

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

Transportable Applications Environment Plus

Transportable Applications Environment Plus (TAE+) is integrated, portable program providing environment for developing and running interactive window, text, and graphical object-based application software systems. Enables construction of custom application interface and moving applications to different computers. Components are WorkBench, tool for design of user interface; WPT's (Window Programming Tools) package, set of callable subroutines controlling user interface; and TAE Command Language (TCL), providing ways to develop executable application prototype with run-time-interpreted language. Uses MIT X-Window System, WorkBench and WPT's written in C++, remaining code in C.

Source record↗

Generating effective project scheduling heuristics by abstraction and reconstitution

A project scheduling problem consists of a finite set of jobs, each with fixed integer duration, requiring one or more resources such as personnel or equipment, and each subject to a set of precedence relations, which specify allowable job orderings, and a set of mutual exclusion relations, which specify jobs that cannot overlap. No job can be interrupted once started. The objective is to minimize project duration. This objective arises in nearly every large construction project--from software to hardware to buildings. Because such project scheduling problems are NP-hard, they are typically solved by branch-and-bound algorithms. In these algorithms, lower-bound duration estimates (admissible heuristics) are used to improve efficiency. One way to obtain an admissible heuristic is to remove (abstract) all resources and mutual exclusion constraints and then obtain the minimal project duration for the abstracted problem; this minimal duration is the admissible heuristic. Although such abstracted problems can be solved efficiently, they yield inaccurate admissible heuristics precisely because those constraints that are central to solving the original problem are abstracted. This paper describes a method to reconstitute the abstracted constraints back into the solution to the abstracted problem while maintaining efficiency, thereby generating better admissible heuristics. Our results suggest that reconstitution can make good admissible heuristics even better.

Janakiraman, Bhaskar↗

Identification and interpretation of patterns in rocket engine data

A prototype software system was constructed to detect anomalous Space Shuttle Main Engine (SSME) behavior in the early stages of fault development significantly earlier than the indication provided by either redline detection mechanism or human expert analysis. The major task of the research project is to analyze ground test data, to identify patterns associated with the anomalous engine behavior, and to develop a pattern identification and detection system on the basis of this analysis. A prototype expert system which was developed on both PC and Symbolics 3670 lisp machine for detecting anomalies in turbopump vibration data was checked with data from ground tests 902-473, 902-501, 902-519, and 904-097 of the Space Shuttle Main Engine. The neural networks method was also applied to supplement the statistical method utilized in the prototype system to investigate the feasibility in detecting anomalies in turbopump vibration of SSME. In most cases the anomalies detected by the expert system agree with those reported by NASA. On the neural networks approach, the results are given the successful detection rate higher than 95 percent to identify either normal or abnormal running condition based on the experimental data as well as numerical simulation.

Lo, C. F.↗

Mission data system and the future of autonomy at Jet Propulsion Laboratory

Planetary missions require significant levels of autonomy, due to the critical, one-time-only, nature of many mission objectives, and to the long delay times for human intervention. These missions also operate in highly uncertain environments, such as planetary atmospheres or surfaces. Mission Data Systems (MDS) is a project to construct a reusable software architecture for planetary missions, based on identifying the states of the mission.

MDS autonomy↗

Software Engineering Tools for Scientific Models

Software tools were constructed to address issues the NASA Fortran development community faces, and they were tested on real models currently in use at NASA. These proof-of-concept tools address the High-End Computing Program and the Modeling, Analysis, and Prediction Program. Two examples are the NASA Goddard Earth Observing System Model, Version 5 (GEOS-5) atmospheric model in Cell Fortran on the Cell Broadband Engine, and the Goddard Institute for Space Studies (GISS) coupled atmosphere- ocean model called ModelE, written in fixed format Fortran.

Abrams, Marc↗

Autonomous Power Controller for the NASA Gateway

Intelligent autonomous control of a spacecraft is an enabling technology that must be developed for deep space human exploration. NASA's current long term human space platform, the International Space Station which is in Low Earth Orbit, is in almost continuous communication with ground based mission control. This allows near real-time operation of all the vehicle core systems, including power, from the ground. As the focus shifts from Low Earth Orbit to deep space, challenges associated with communication time-lag and bandwidth limitations beyond geosynchronous orbit do not permit this type of ground based operation. These communication limitations motivate autonomous vehicle operations, including the vehicle subsystems such as power. This presentation will describe the ongoing development of an Autonomous Power Control (APC) system that can be used for a deep space exploration spacecraft. This work extends previous work on developing an autonomous power control which includes developing a control architecture for deep space vehicles, the use of software agents, and constructing a control simulation lab for demonstrating this capability. This presentation will begin with a discussion of the representative future power architectures that will be required for deep space exploration vehicles. The presentation then will describe how the power controller will integrate with the vehicle followed with a discussion of the autonomous power controller. Next it will describe the test setup used to evaluate the performance of the system and lastly show some of the test results. To develop the type of controller envisioned, it will be necessary to employ a detailed real-time simulation to evaluate its performance and ultimately verify its functionality.

Csank, Jeffrey↗

Autonomous Power Control

Intelligent autonomous control of a spacecraft is an enabling technology that must be developed for deep space human exploration. NASA's current long term human space platform, the International Space Station which is in Low Earth Orbit, is in almost continuous communication with ground based mission control. This allows near realtime operation of all the vehicle core systems, including power, from the ground. As the focus shifts from Low Earth Orbit to deep space, challenges associated with communication time-lag and bandwidth limitations beyond geosynchronous orbit do not permit this type of ground based operation. These communication limitations motivate autonomous vehicle operations, including the vehicle subsystems such as power. This presentation will describe the ongoing development of an Autonomous Power Control (APC) system that can be used for a deep space exploration spacecraft. This work extends previous work on developing an autonomous power control which includes developing a control architecture for deep space vehicles, the use of software agents, and constructing a control simulation lab for demonstrating this capability. This presentation will begin with a discussion of the representative future power architectures that will be required for deep space exploration vehicles. The presentation then will describe how the power controller will integrate with the vehicle followed with a discussion of the autonomous power controller. Next it will describe the test setup used to evaluate the performance of the system and lastly show some of the test results. To develop the type of controller envisioned, it will be necessary to employ a detailed real-time simulation to evaluate its performance and ultimately verify its functionality.

Csank, Jeffrey↗

Thermodynamic and Diffusion Model Estimates on Metamorphic Temperatures and Timescales for Basaltic Eucrite GRA 98098

Introduction: HED meteorites are thought to rep-resent igneous rocks from Vesta’s basaltic crust and preserve evidence of early crustal metamorphism. Determining the temperatures and timescales of thermal metamorphism is important for reconstructing crustal evolution in the early solar system. Here, we study basaltic eucrite Graves Nunataks (GRA) 98098, which has been identified as a highly metamorphosed eucrite [1]. We present new estimates on metamorphic temperatures determined via thermodynamic modeling as well as the initial results from diffusion models constraining timescales of thermal metamorphism. Sample Description: GRA 98098 is an unbrecciated eucrite with a granoblastic plagioclase and pyroxene mineralogy. Millimeter to cm-long lathes of tridymite cross-cut and poikilitically enclose plagioclase and pyroxene [1,this work]. Pyroxene grains have exsolved into Ca-rich (~Wo38En29Fs33) and Ca-poor (~Wo4.5En36Fs59.5) lamellae. Both unzoned and zoned plagioclase grains are observed. Unzoned plagioclase grains are found solely with tridymite laths. These grains have ~An92 compositions. The cores of the zoned plagioclase grains have the same composition and thin, relatively sodic rims (~An67), (Fig. 1). The bulk sample is unusually enriched in highly in-compatible elements and has one of the most fractionated REE patterns reported [1]. Maximum metamorphic temperatures of 985±78°C have been estimated using two-pyroxene thermometry [2]. Methods: Thermodynamic modeling. Thermodynamic models were constructed using the software Perple_X, which employs a Gibbs free energy minimization in order to determine the most stable phase assemblage for a given bulk rock composition [3]. Bulk composition was calculated using mineral com-positions acquired via EMPA (this study) and the observed abundancies present in the thin section. Two bulk compositions were estimated; 1) includes all phases present in the thin section, (assumes that all phases are present during metamorphism), 2) excludes tridymite from the bulk calculation (assumes that tridymite was not present during metamorphism). In order to determine whether metamorphic equilibria was achieved and estimate temperatures of metamorphism, we compared measured pyroxene compositions with thermodynamically predicted compositions [4, Fig. 2]. Diffusion Modeling. Several time-temperature de-pendent diffusion profiles were calculated in order to determine the best match for XAn chemical profiles observed at the edges of the zoned plagioclase (Fig. 3). We assumed that the start condition was a stepwise gradient at the plagioclase/pyroxene interface. We also assumed an average diffusion coefficient (D) and a constant temperature using the equation in [5]. D was determined for two temperatures (T = 1060ºC; near eucrite solidus [6] and T = 985ºC; metamorphism reported in [4]) and then XAn was calculated as a function of distance from plagioclase core to rim using an error function solution to Fick’s second law. Results: Thermodynamic model results are summarized in Fig. 2. For a bulk composition that includes all phases in the thin section, pyroxene endmember compositions plot in the following temperature ranges: Fs ~660-860ºC, En~1000ºC & 1150ºC, and Wo~760-900ºC (Fig. 2a). For a bulk composition that excludes tridymite from the peak metamorphic assemblage (i.e., the bulk composition minus the contribution from tridymite), a temperature range could not be determined for the Fs component of pyroxene. For Wo, T~760-900ºC and En, T~1000ºC & 1150ºC (Fig. 2b). Fig. 3 summarizes the diffusion model results. For T = 1060°C & 985°C, the most appropriate time interval was estimated based on which diffusion curve most matched (solid lines, Fig. 3) the EMPA data. For T = 1060°C, the best looking match was t = 500 ka. For T = 985°C, the best match was t = 7 Ma. Discussion and future work: Temperature estimates from thermodynamic models are not conclusive because the temperature ranges determined for pyroxene endmember stability do not overlap (colored fields in Fig. 2), thus implying that there is disequilibrium between pyroxene crystals and the bulk composition considered [4]. Thus, additional exploration is needed to define a metamorphically equilibrated do-main that accurately records peak temperature. The utility of defining metamorphically equilibrated do-mains to improve the accuracy and level of detail elucidated regarding the petrogenetic history of metamorphose samples has been demonstrated previously [4,7]. We suggest that in the case of Fig. 2a, the thin section composition is not representative of the length scales over which metamorphic equilibrium was achieve and in the case of Fig. 2b, the assumption that tridymite was not present during metamorphism was incorrect. However, results from thermodynamic models can provide insight into the relative timing of mineral and compositional textures. For example from texture alone, it is unclear whether tridymite was igneous in origin and represents the last bits of melt in a crystallizing magma chamber, or if it formed during (and possibly initiated) open system thermal metamorphism. The latter could be consistent with a partial melt hypothesis [8,9] while the former implies that simple fractional crystallization can yield the textures present in GRA 98098. The lack of coincidence be-tween pyroxene endmember compositions in Fig. 2b suggest that the bulk composition minus tridymite was not the assemblage in equilibrium with the pyroxene, suggesting that tridymite was present during metamorphism and formed during igneous crystallization. We conclude that the development of the Na-rich plagioclase rims likely occurred during or immediately after peak thermal metamorphism, because eucrites of similar metamorphic grade and texture have unzoned plagioclase (~An92) [2,4,8], and Na zoning is only observed in the plagioclase not included in the tridymite. This suggests that the zoning formed after tridymite formation, and therefore after igneous crystallization. Thus, the timescales calculated via diffusion modeling possibly represent the time interval over which thermal metamorphism occurred. Cooling rates approximated for the Vestan crust predict that the crust cooled below 300°C around 35-40 Ma after formation[10]. This is consistent with our modeling results that predict formation of the Na rich plagioclase rims occurring at higher temperatures over a period of 0.5 to 7 Ma years. Future work. Additional thermodynamic modeling work will focus on selecting an equilibrated bulk rock domain in which to elucidate metamorphic conditions. Diffusion models currently provide a minimum time-scale, since diffusion slows down as the system cools. Future work with will focus on integrating cooling into the diffusion models and constraining the depth at which thermal metamorphism occurs because it could be used to determine whether the range of time-scales calculated for thermal metamorphism are consistent with the geologic environment.

J S Gorce↗

General Aviation Data Framework

The Flight Research Services Directorate at the NASA Langley Research Center (LaRC) provides development and operations services associated with three general aviation (GA) aircraft used for research experiments. The GA aircraft includes a Cessna 206X Stationair, a Lancair Colombia 300X, and a Cirrus SR22X. Since 2004, the GA Data Framework software was designed and implemented to gather data from a varying set of hardware and software sources as well as enable transfer of the data to other computers or devices. The key requirements for the GA Data Framework software include platform independence, the ability to reuse the framework for different projects without changing the framework code, graphics display capabilities, and the ability to vary the interfaces and their performance. Data received from the various devices is stored in shared memory. This paper concentrates on the object oriented software design patterns within the General Aviation Data Framework, and how they enable the construction of project specific software without changing the base classes. The issues of platform independence and multi-threading which enable interfaces to run at different frame rates are also discussed in this paper.

Blount, Elaine M.↗

Computer implementation of analysis and optimization procedures for control-structure interaction problems

Implementation aspects of control-structure interaction analysis and optimization by the staggered use of single-discipline analysis modules are discussed. The single-discipline modules include structural analysis, controller synthesis and optimization. The software modularity is maintained by employing a partitioned control-structure interaction analysis procedure, thus avoiding the need for embedding the single-discipline modules into a monolithic program. A software testbed has been constructed as a stand-alone analysis and optimization program and tested for its versatility and software modularity by applying it to the dynamic analysis and preliminary design of a prototype Earth Pointing Satellite. Experience with the in-core testbed program so far demonstrates that the testbed is efficient, preserves software modularity, and enables the analyst to choose a different set of algorithms, control strategies and design parameters via user software interfaces. Thus, the present software architecture is recommended for adoption by control-structure interaction analysts as a preliminary analysis and design tool.

Belvin, W. Keith↗

Nanopolysaccharide Builder: A User-Friendly Tool for Atomistic Models of Polysaccharide-Based Nanostructures

Here, we introduce Nanopolysaccharide Builder (NPB), a user-friendly software tool designed to construct polysaccharide nanostructures─mainly those based on cellulose, chitin, and chitosan─using experimental data or user-defined parameters. NPB enables the generation of cellulose and chitin allomorphs with customizable biochemical topologies and also facilitates the construction of large bundles that replicate nanostructures found in biological support systems, including plant cell walls and arthropod cuticles. The software outputs atomic Cartesian coordinates in Protein Data Bank (PDB) format and also provides atom connectivity files in PSF and PARM formats, ensuring seamless integration with major molecular dynamics (MD) engines such as NAMD, CHARMM, GROMACS, AMBER, OpenMM, and LAMMPS. Built on an interactive visualization framework, NPB features a graphical user interface (GUI) and supports both macOS and Linux operating systems. By enabling detailed atomic-scale studies of polysaccharide evolution in extracellular matrices and cell walls of algae, bacteria, fungi, and plants, NPB is poised to advance AI-guided research in sustainable chemical development and biomass utilization.

Wan, Zhangmin [Univ. of British Columbia, Vancouve↗

ENCOMPASS: A SAGA based environment for the compositon of programs and specifications, appendix A

ENCOMPASS is an example integrated software engineering environment being constructed by the SAGA project. ENCOMPASS supports the specification, design, construction and maintenance of efficient, validated, and verified programs in a modular programming language. The life cycle paradigm, schema of software configurations, and hierarchical library structure used by ENCOMPASS is presented. In ENCOMPASS, the software life cycle is viewed as a sequence of developments, each of which reuses components from the previous ones. Each development proceeds through the phases planning, requirements definition, validation, design, implementation, and system integration. The components in a software system are modeled as entities which have relationships between them. An entity may have different versions and different views of the same project are allowed. The simple entities supported by ENCOMPASS may be combined into modules which may be collected into projects. ENCOMPASS supports multiple programmers and projects using a hierarchical library system containing a workspace for each programmer; a project library for each project, and a global library common to all projects.

Terwilliger, Robert B.↗

Product Engineering Class in the Software Safety Risk Taxonomy for Building Safety-Critical Systems

When software safety requirements are imposed on legacy safety-critical systems, retrospective safety cases need to be formulated as part of recertifying the systems for further use and risks must be documented and managed to give confidence for reusing the systems. The SEJ Software Development Risk Taxonomy [4] focuses on general software development issues. It does not, however, cover all the safety risks. The Software Safety Risk Taxonomy [8] was developed which provides a construct for eliciting and categorizing software safety risks in a straightforward manner. In this paper, we present extended work on the taxonomy for safety that incorporates the additional issues inherent in the development and maintenance of safety-critical systems with software. An instrument called a Software Safety Risk Taxonomy Based Questionnaire (TBQ) is generated containing questions addressing each safety attribute in the Software Safety Risk Taxonomy. Software safety risks are surfaced using the new TBQ and then analyzed. In this paper we give the definitions for the specialized Product Engineering Class within the Software Safety Risk Taxonomy. At the end of the paper, we present the tool known as the 'Legacy Systems Risk Database Tool' that is used to collect and analyze the data required to show traceability to a particular safety standard

Hill, Janice↗

Engine structures modeling software system: Computer code. User's manual

ESMOSS is a specialized software system for the construction of geometric descriptive and discrete analytical models of engine parts, components and substructures which can be transferred to finite element analysis programs such as NASTRAN. The software architecture of ESMOSS is designed in modular form with a central executive module through which the user controls and directs the development of the analytical model. Modules consist of a geometric shape generator, a library of discretization procedures, interfacing modules to join both geometric and discrete models, a deck generator to produce input for NASTRAN and a 'recipe' processor which generates geometric models from parametric definitions. ESMOSS can be executed both in interactive and batch modes. Interactive mode is considered to be the default mode and that mode will be assumed in the discussion in this document unless stated otherwise.

Source record↗

Software Quality Metrics for Geant4: An Initial Assessment - Paper 122

In the context of critical applications, such as shielding and radiation protection, ensuring the quality of simulation software they depend on is of utmost importance. The assessment of simulation software quality is crucial both to determine its adoption in experimental applications and to guarantee reproducibility of outcome over time. Geant4 is a simulation system used in a wide range of experimental applications, some of which, such as radiation protection and biomedical studies, may involve critical use cases and would especially profit from an objective assessment of the software quality. In this study, we present the first results from an ongoing analysis of Geant4 code based on established software metrics from the perspective of software engineering. The analysis evaluates the current status of the code to quantify its characteristics with respect to documented quality standards; further appraisals concern evolutions over a series of release distributions. The quantitative assessment of the software is initially focused on a subset of Geant4 packages, which play a key role in scientific applications and are representative of different software development processes. We describe the chosen software metrics that map the entities of a software system to numeric values through mathematical definitions, quantifying software attributes ranging from functionality to maintainability. To measure such metrics, we exploited a set of software metrics tools, i.e. programs that implement a set of software metrics definitions. They allow software engineers to assess a software system by extracting the required attributes from the software and providing the corresponding metric values. To correlate software metrics values in a well-defined way, we used software quality standard models, such as the ISO/IEC 9126 standard, which aggregate numerical values to aid quality analysis and assessment. With this work we aim to create a baseline for evaluating correlations between software quality embedded in the Geant4 development process and simulation observables produced by Geant4-based applications. Furthermore, we intend to highlight what metrics are most effective at evaluating radiation transport software quality. We are confident that the result will provide constructive guidance both to improve key software tools, such as Geant4, and to estimate their contribution in risk analysis concerning sensitive applications. The remainder of this paper is structured as follows. We first discuss the approach adopted to fulfil our assessment. Then, we present the setup of our experiments and the way we collected data. We provide an initial interpretation of a subset of data resulting from measurements made on the selected Geant4 packages. As the analysis is still ongoing at the time of submitting this abstract, some results will be documented in the final paper and in the conference presentation. With this work we aim to create a proper Geant4 data set for evaluating its software characteristics and identifying both strengths and weaknesses. In this initial study, we considered the geometry and processes packages, which play a major role in most simulation applications. The data analysis is in progress at the time of writing; its complexity is related to the differences among software metrics tools, to the large amount of data to be evaluated and to the pioneering character of this project. We are confident that the results will provide valuable indications for the Geant4 user community and constructive guidance to improve key Geant4 packages. Other Monte Carlo codes could profit from the methodology developed in this pilot project for similar assessments of their software quality. At the end of this study, we intend to create a baseline for evaluating correlations between software quality embedded in the Geant4 development process and simulation observables produced by Geant4-based applications. (authors)

61 RADIATION PROTECTION AND DOSIMETRY↗

Evaluation of Open-Source Hard Real Time Software Packages

Reliable software is, at times, hard to find. No piece of software can be guaranteed to work in every situation that may arise during its use here at Glenn Research Center or in space. The job of the Software Assurance (SA) group in the Risk Management Office is to rigorously test the software in an effort to ensure it matches the contract specifications. In some cases the SA team also researches new alternatives for selected software packages. This testing and research is an integral part of the department of Safety and Mission Assurance. Real Time operation in reference to a computer system is a particular style of handing the timing and manner with which inputs and outputs are handled. A real time system executes these commands and appropriate processing within a defined timing constraint. Within this definition there are two other classifications of real time systems: hard and soft. A soft real time system is one in which if the particular timing constraints are not rigidly met there will be no critical results. On the other hand, a hard real time system is one in which if the timing constraints are not met the results could be catastrophic. An example of a soft real time system is a DVD decoder. If the particular piece of data from the input is not decoded and displayed to the screen at exactly the correct moment nothing critical will become of it, the user may not even notice it. However, a hard real time system is needed to control the timing of fuel injections or steering on the Space Shuttle; a delay of even a fraction of a second could be catastrophic in such a complex system. The current real time system employed by most NASA projects is Wind River's VxWorks operating system. This is a proprietary operating system that can be configured to work with many of NASA s needs and it provides very accurate and reliable hard real time performance. The down side is that since it is a proprietary operating system it is also costly to implement. The prospect of replacing this somewhat costly implementation is the focus of one of the SA group s current research projects. The explosion of open source software in the last ten years has led to the development of a multitude of software solutions which were once only produced by major corporations. The benefits of these open projects include faster release and bug patching cycles as well as inexpensive if not free software solutions. The main packages for hard real time solutions under Linux are Real Time Application Interface (RTAI) and two varieties of Real Time Linux (RTL), RTLFree and RTLPro. During my time here at NASA I have been testing various hard real time solutions operating as layers on the Linux Operating System. All testing is being run on an Intel SBC 2590 which is a common embedded hardware platform. The test plan was provided to me by the Software Assurance group at the start of my internship and my job has been to test the systems by developing and executing the test cases on the hardware. These tests are constructed so that the Software Assurance group can get hard test data for a comparison between the open source and proprietary implementations of hard real time solutions.

Mattei, Nicholas S.↗

Range Safety for an Autonomous Flight Safety System

The Range Safety Algorithm software encapsulates the various constructs and algorithms required to accomplish Time Space Position Information (TSPI) data management from multiple tracking sources, autonomous mission mode detection and management, and flight-termination mission rule evaluation. The software evaluates various user-configurable rule sets that govern the qualification of TSPI data sources, provides a prelaunch autonomous hold-launch function, performs the flight-monitoring-and-termination functions, and performs end-of-mission safing

Lanzi, Raymond J.↗

Improving the human factors of software with CLIPS

The use of CLIPS has transformed a conventional graduate course on the human factors of software. Previously, the class centered on lectures and discussions of a mix of ideas for improving the user-friendliness of software. By using CLIPS, the course can focus instead on teaching students to build three rule-based projects in CLIPS for improving the human factors of software. For the first project, students construct a friendly CLIPS front-end to existing software. For the second project students build a CLIPS expert system to help comply with user-interface guidelines. Alternatively, students may build an expert system to assist in detecting discrepancies between user-interfaces and guidelines. For the third project, students use CLIPS to implement a GOMS Model Methodology to assess the human performance impacts of given user-interfaces. Feedback on the projects from the students' colleagues and superiors in the workplace confirm the effectiveness of this CLIPS project-oriented approach to teaching the human factors of user-computer systems. Future refinements are described. Suggestions for those wishing to try this approach are outlined.

Nagy, Thomas J.↗