Search NASA⌕ Search

SEARCH · Search NASA

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 217 records · Page 12

Programming Language Software For Graphics Applications

New approach reduces repetitive development of features common to different applications. High-level programming language and interactive environment with access to graphical hardware and software created by adding graphical commands and other constructs to standardized, general-purpose programming language, "Scheme". Designed for use in developing other software incorporating interactive computer-graphics capabilities into application programs. Provides alternative to programming entire applications in C or FORTRAN, specifically ameliorating design and implementation of complex control and data structures typifying applications with interactive graphics. Enables experimental programming and rapid development of prototype software, and yields high-level programs serving as executable versions of software-design documentation.

Beckman, Brian C.↗

Deductive Glue Code Synthesis for Embedded Software Systems Based on Code Patterns

Automated code synthesis is a constructive process that can be used to generate programs from specifications. It can, thus, greatly reduce the software development cost and time. The use of formal code synthesis approach for software generation further increases the dependability of the system. Though code synthesis has many potential benefits, the synthesis techniques are still limited. Meanwhile, components are widely used in embedded system development. Applying code synthesis to component based software development (CBSD) process can greatly enhance the capability of code synthesis while reducing the component composition efforts. In this paper, we discuss the issues and techniques for applying deductive code synthesis techniques to CBSD. For deductive synthesis in CBSD, a rule base is the key for inferring appropriate component composition. We use the code patterns to guide the development of rules. Code patterns have been proposed to capture the typical usages of the components. Several general composition operations have been identified to facilitate systematic composition. We present the technique for rule development and automated generation of new patterns from existing code patterns. A case study of using this method in building a real-time control system is also presented.

automated code synthesis↗

GNET2: an R package for constructing gene regulatory networks from transcriptomic data

Abstract Motivation The Gene Network Estimation Tool (GNET) is designed to build gene regulatory networks (GRNs) from transcriptomic gene expression data with a probabilistic graphical model. The data preprocessing, model construction and visualization modules of the original GNET software were developed on different programming platforms, which were inconvenient for users to deploy and use. Results Here, we present GNET2, an improved implementation of GNET as an integrated R package. GNET2 provides more flexibility for parameter initialization and regulatory module construction based on the core iterative modeling process of the original algorithm. The data exchange interface of GNET2 is handled within an R session automatically. Given the growing demand for regulatory network reconstruction from transcriptomic data, GNET2 offers a convenient option for GRN inference on large datasets. Availability and implementation The source code of GNET2 is available at https://github.com/jianlin-cheng/GNET2. Supplementary information Supplementary data are available at Bioinformatics online.

59 BASIC BIOLOGICAL SCIENCES↗

Independent Validation of Specifications: A Coordination Headache

Large, complex projects face significant barriers to coordination and communication due to continuous, rapid changes during a project's life cycle. Such changes must be tracked, analyzed, and reconciled to ensure high quality in the end product, otherwise problems may get lost or ignored in the overall complexity. We report on 'work-in-progress' in the study of coordination problems between two independent, separate groups: software development and software analysis. We have begun to construct a taxonomy of coordination problems, which we illustrate with two scenarios. We briefly describe current attempts to introduce incremental improvements to coordination problems in such projects via World Wide Web tools. Based on actual project experiences, we plan to deploy such tools in a non-intrusive fashion to improve coordination and communication between software development groups.

Easterbrook, Steve↗

Software for Analyzing Laminar-to-Turbulent Flow Transitions

Software assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures. Examples of such activities are the following: code inspections, unit tests, design reviews, performance analyses, construction of traceability matrices, etc. In practice, software development projects have only limited resources (e.g., schedule, budget, and availability of personnel) to cover the entire development effort, of which assurance is but a part. Projects must therefore select judiciously from among the possible assurance activities. At its heart, this can be viewed as an optimization problem; namely, to determine the allocation of limited resources (time, money, and personnel) to minimize risk or, alternatively, to minimize the resources needed to reduce risk to an acceptable level. The end result of the work reported here is a means to optimize quality-assurance processes used in developing software. This is achieved by combining two prior programs in an innovative manner

Chang, Chau-Lyan↗

Software for Optimizing Quality Assurance of Other Software

Software assurance is the planned and systematic set of activities that ensures that software processes and products conform to requirements, standards, and procedures. Examples of such activities are the following: code inspections, unit tests, design reviews, performance analyses, construction of traceability matrices, etc. In practice, software development projects have only limited resources (e.g., schedule, budget, and availability of personnel) to cover the entire development effort, of which assurance is but a part. Projects must therefore select judiciously from among the possible assurance activities. At its heart, this can be viewed as an optimization problem; namely, to determine the allocation of limited resources (time, money, and personnel) to minimize risk or, alternatively, to minimize the resources needed to reduce risk to an acceptable level. The end result of the work reported here is a means to optimize quality-assurance processes used in developing software.

Feather, Martin↗

MCNP6.3 Unstructured Mesh Verification: GodivR and CANDU Models

A geometric cell of the Monte Carlo N-Particle (MCNP)1 transport code is traditionally created by using Boolean operators on defined surfaces. This constructive solid geometry (CSG) capability has been available in the MCNP code since its beginning. However, a CSG model approach is limited when it comes to constructing a representative geometry for a complex model in its ability to capture a correct model representation. Starting with the version 6.0, the MCNP code has the ability of embedding an unstructured mesh (UM) model into a CSG cell to create a hybrid geometry [1]. The MCNP UM feature provides the flexibility of defining very complex geometries because computer aided design (CAD) and mesh generation software packages can be utilized to construct UM models for MCNP simulations.

97 MATHEMATICS AND COMPUTING↗

Design considerations for a space database

Part of the information used in a real-time simulator is stored in the visual database. This information is processed by an image generator and displayed as a real-time visual image. The database must be constructed in a specific format, and it should efficiently utilize the capacities of the image generator that is was created for. A visual simulation is crucially dependent upon the success with which the database provides visual cues and recognizable scenes. For this reason, more and more attention is being paid to the art and science of creating effective real-time visual databases. Investigated here are the database design considerations required for a space-oriented real-time simulator. Space applications often require unique designs that correspond closely to the particular image-generator hardware and visual-database-management software. Specific examples from the databases constructed for NASA and its Evans and Sutherland CT6 image generator illustrate the various design strategies used in a space-simulation environment. These database design considerations are essential for all who would create a space database.

Moss, Lance M.↗

Current capabilities for simulating the extreme distortion of thin structures subjected to severe impacts

The explicit transient dynamics technology in use today for simulating the impact and subsequent transient dynamic response of a structure has its origins in the 'hydrocodes' dating back to the late 1940's. The growth in capability in explicit transient dynamics technology parallels the growth in speed and size of digital computers. Computer software for simulating the explicit transient dynamic response of a structure is characterized by algorithms that use a large number of small steps. In explicit transient dynamics software there is a significant emphasis on speed and simplicity. The finite element technology used to generate the spatial discretization of a structure is based on a compromise between completeness of the representation for the physical processes modelled and speed in execution. That is, since it is expected in every calculation that the deformation will be finite and the material will be strained beyond the elastic range, the geometry and the associated gradient operators must be reconstructed, as well as complex stress-strain models evaluated at every time step. As a result, finite elements derived for explicit transient dynamics software use the simplest and barest constructions possible for computational efficiency while retaining an essential representation of the physical behavior. The best example of this technology is the four-node bending quadrilateral derived by Belytschko, Lin and Tsay. Today, the speed, memory capacity and availability of computer hardware allows a number of the previously used algorithms to be 'improved.' That is, it is possible with today's computing hardware to modify many of the standard algorithms to improve their representation of the physical process at the expense of added complexity and computational effort. The purpose is to review a number of these algorithms and identify the improvements possible. In many instances, both the older, faster version of the algorithm and the improved and somewhat slower version of the algorithm are found implemented together in software. Specifically, the following seven algorithmic items are examined: the invariant time derivatives of stress used in material models expressed in rate form; incremental objectivity and strain used in the numerical integration of the material models; the use of one-point element integration versus mean quadrature; shell elements used to represent the behavior of thin structural components; beam elements based on stress-resultant plasticity versus cross-section integration; the fidelity of elastic-plastic material models in their representation of ductile metals; and the use of Courant subcycling to reduce computational effort.

Key, Samuel W.↗

Implementation of an optimum profile guidance system on STOLAND

The implementation on the STOLAND airborne digital computer of an optimum profile guidance system for the augmentor wing jet STOL research aircraft is described. Major tasks were to implement the guidance and control logic to airborne computer software and to integrate the module with the existing STOLAND navigation, display, and autopilot routines. The optimum profile guidance system comprises an algorithm for synthesizing mimimum fuel trajectories for a wide range of starting positions in the terminal area and a control law for flying the aircraft automatically along the trajectory. The avionics software developed is described along with a FORTRAN program that was constructed to reflect the modular nature and algorthms implemented in the avionics software.

Flanagan, P. F.↗

Performance Portability Evaluation of OpenCL Benchmarks across Intel and NVIDIA Platforms

We evaluate the capabilities of vendor-provided OpenCL implementations for performance portability across multiple computing platforms. The Rodinia benchmark suite is used for this evaluation. We apply the metric defined by Pennycook et al., and we use roofline efficiency from the Roofline performance model as the "performance efficiency" in the metric's definition. We found that the delivered performance portability is similar for several benchmarks, even if the roofline-based performance efficiencies across platforms are very different among the benchmarks. To help distinguish between these instances, we extend the metric by adding the standard deviation of the performance efficiencies for each benchmark. We argue that the standard deviation gives additional insight into performance portability assessment since it adds the performance variability across platforms. Additionally, we discuss the challenges to measure performance portability associated with algorithms and system software. In terms of algorithms, we need to carefully construct the benchmarks and appropriately use the concurrency available on a platform. In terms of system software, we depend on the vendor performance tools to support the desired programming model and runtime to be able to measure the metrics of interest.

GPU↗

Assembly and Analysis of Cell-Scale Membrane Envelopes

The march toward exascale computing will enable routine molecular simulation of larger and more complex systems, for example, simulation of entire viral particles, on the scale of approximately billions of atoms-a simulation size commensurate with a small bacterial cell. Anticipating the future hardware capabilities that will enable this type of research and paralleling advances in experimental structural biology, efforts are currently underway to develop software tools, procedures, and workflows for constructing cell-scale structures. Herein, we describe our efforts in developing and implementing an efficient and robust workflow for construction of cell-scale membrane envelopes and embedding membrane proteins into them. A new approach for construction of massive membrane structures that are stable during the simulations is built on implementing a subtractive assembly technique coupled with the development of a structure concatenation tool (fastmerge), which eliminates overlapping elements based on volumetric criteria rather than adding successive molecules to the simulation system. Using this approach, we have constructed two "protocells" consisting of MARTINI coarse-grained beads to represent cellular membranes, one the size of a cellular organelle and another the size of a small bacterial cell. The membrane envelopes constructed here remain whole during the molecular dynamics simulations performed and exhibit water flux only through specific proteins, demonstrating the success of our methodology in creating tight cell-like membrane compartments. Extended simulations of these cell-scale structures highlight the propensity for nonspecific interactions between adjacent membrane proteins leading to the formation of protein microclusters on the cell surface, an insight uniquely enabled by the scale of the simulations. We anticipate that the experiences and best practices presented here will form the basis for the next generation of cell-scale models, which will begin to address the addition of soluble proteins, nucleic acids, and small molecules essential to the function of a cell.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Offshore Wind ENergy Simulation Toolkit

This structural dynamics finite element analysis tool is intended to be used for the analysis of vertical-axis wind turbine (VAWT) and is used in conjunction with the VAWTGen mesh generator. The core of the analysis software is a finite element formulation consisting of the beam element with rotational and stress stiffening effects. Arbitrary VAWT configurations may be constructed by an assembly of beam elements. The software has been designed with a modular approach to facilities interfacing aerodynamics and hydrodynamics software modules in future versions. The software allows for modal and transient analysis capabilities for a rotating VAWT configuration with arbitrary boundary conditions, initial condition, and loads.

Owens, Brian Christopher↗

HAL/S-FC compiler system functional specification

The functional requirements to be met by the HAL/S-FC compiler, and the hardware and software compatibilities between the compiler system and the environment in which it operates are defined. Associated runtime facilities and the interface with the Software Development Laboratory are specified. The construction of the HAL/S-FC system as functionally separate units and the interfaces between those units is described. An overview of the system's capabilities is presented and the hardware/operating system requirements are specified. The computer-dependent aspects of the HAL/S-FC are also specified. Compiler directives are included.

Source record↗

Digital control of high-intensity acoustic testing

Three systems for the control of acoustic testing are compared: a hybrid digital/analog system, a digital vibration system, and the same digital vibration system modified by a software change. The hybrid system was constructed to control the 1/3-octaves from 50 to 1000 Hz. The vibration system was equipped with programs for sine and random vibration tests, shock analysis and synthesis, and signal analysis. For the modified vibration system, the random-vibration control program of the unmodified unit was changed so that acoustic tests could be performed. The performance of the three systems is compared by conducting probability-density and time-history analyses of the proposed test spectrum for the Mariner Jupiter/Saturn 1977 program. The results of the analyses show that the hybrid and modified vibration systems perform almost equally, but the modified vibration system is easier to use and produces better test documentation.

Slusser, R. A.↗

Operator function modeling: An approach to cognitive task analysis in supervisory control systems

In a study of models of operators in complex, automated space systems, an operator function model (OFM) methodology was extended to represent cognitive as well as manual operator activities. Development continued on a software tool called OFMdraw, which facilitates construction of an OFM by permitting construction of a heterarchic network of nodes and arcs. Emphasis was placed on development of OFMspert, an expert system designed both to model human operation and to assist real human operators. The system uses a blackboard method of problem solving to make an on-line representation of operator intentions, called ACTIN (actions interpreter).

Mitchell, Christine M.↗

Simulation Technology at NASA

NASA Ames Research Center is home to several high-fidelity research flight and air-traffic control simulation facilities which, together with an experienced workforce, produce high-quality research data and findings that have proven to be applicable in the real world. These assets include the Vertical Motion Simulator (VMS), Crew Vehicle Systems Research Facility (CVSRF), Future Flight Central (FFC) air traffic control tower simulator, and several air-traffic control (ATC) simulators. The VMS combines a high-fidelity simulation capability with an adaptable simulation environment, enabling customization for numerous human-in-the-loop research applications. The distinctive feature of the VMS is its unparalleled large amplitude, high-fidelity motion capability. In over 30 years of continuous operation, the VMS has contributed significantly to the body of knowledge in a range of disciplines directly benefiting several aerospace programs and flight safety, including the design and development of flight control systems for the Joint Strike Fighter, Space Shuttle Orbiter, and rotorcraft. It continues to be used for researching new vehicle configurations, vehicle control and safety, transfer-of-training, etc., by NASA, other government agencies, and Industry.The CVSRF includes two motion-based flight simulators: a Boeing 747-400 full flight simulator and the reconfigurable Advanced Concepts Flight Simulator (ACFS). These simulators are primarily used to research air-traffic management concepts and procedures, advanced navigation and avionics concepts, and cockpit human factors. FFC is a full-sized control tower simulator with a 360-degree external field-of-view display system and reconfigurable system architecture. FFC and the ATC simulators are used for testing air-traffic management automation and decision support tools and demonstrate their feasibility in a realistic environment prior to technology transfer for implementation in the National Airspace System (NAS).To support integrated simulations and flight-tests for NASA's Unmanned Aircraft Systems (UAS) in the National Airspace System (NAS) Project, NASA developed a distributed test environment incorporating Live, Virtual, Constructive, (LVC) concepts. Development of the software enabling the LVC is conducted primarily at the Distributed Simulation Research Lab (DSRL) at NASA Ames. The LVC components provide the core infrastructure supporting simulation of UAS operations by integrating live and virtual aircraft in a realistic air traffic environment. This provides the ability to conduct tests more efficiently by promoting the use of existing distributed assets. The LVC infrastructure was used in several human-in-the-loop simulations to evaluate acceptance of Detect and Avoid (DAA) advisories used by UAS pilots to maintain well clear of other virtual traffic and to negotiate maneuvers with air traffic control. It is currently being used to support testing of self-separation algorithms between unmanned and manned aircraft in live flight. Further simulations with more comprehensive air traffic scenarios mixing live and virtual aircraft is planned.In the current fiscal environment, maintaining and upgrading these high-fidelity simulation assets and retaining the skilled workforce necessary to meet future research needs is the primary non-technical challenge.

CVSRF↗

New controller for high voltage converter modulator at spallation neutron source

The Spallation Neutron Source (SNS) has developed a new control system for the High Voltage Convertor Modulator (HVCM) at the SNS to replace the original control system which is approaching obsolescence. The original system was based on controllers for similar high voltage systems that were already in use [1]. The new controller, based on National Instruments PXI/FlexRIO Field Programmable Gate Array (FPGA) platform, offers enhancements such as modular construction, flexibility and non-proprietary software. The new controller also provides new capabilities like various methods for modulator pulse flattening, waveform capture, and first fault detection. This paper will discuss the design of the system, including the human machine interface, based on lessons learned at the SNS and other projects. It will also discuss performance and other issues related to its operation in an accelerator facility which requires high availability. To date, 73% of the operational HVCMs have been upgraded to with the new controller, and the remainder are scheduled for completion by mid-2017.

Wezensky, Mark W↗